Couple of months ago, I bought a "Raspberry Pi Pico" to get some hands-on experience of it and to create some amazing projects using it. But since then, it has just been sitting on my desk, collecting dust. Today after a very long wait, I finally have decided to create a short video tutorial to show you guys how to get started with the Raspberry Pi Pico.

Topics Covered 

In this tutorial, I am going to discuss:
1. What is a Raspberry Pi Pico?
2. The technical specifications of the board
3. How to program Pico using C/C++ and MicroPython
a. Programming Raspberry Pi Pico using "Arduino IDE"
i.   Preparing the Arduino IDE
ii.  Loading the Blink Example
iii. Demo
b. Programming Raspberry Pi Pico using "Tonny Python IDE"
i.   Installing MicroPython on Pico
ii.  Installing Tonny Python IDE
iii. Loading the Blink Example
iv.  Demo
4. Difference between Raspberry Pi Pico and Arduino
5. Advantages and Disadvantages of this board

What is Raspberry Pi Pico?

Raspberry Pi Pico is a low-cost microcontroller. It can be used to control other electronic modules and sensors same as any other microcontroller.
Pico is not a Linux single board computer, rather it is a microcontroller like Arduino. Since, its a microcontroller it doesn't come with all the overheads that a computer brings and hence consumes much less current. actually it is more like Arduino than Raspberry Pi.
Pico is not a rival of Raspberry Pi Zero, it actually can work in conjunction with the regular Pi's.
Pico is breadboard friendly and has 40 GPIO pins operating at 3.3v (20 on each side). It has a Dual-Core ARM Cortex M0+ processor. Pico's brain - the RP2040 microcontroller chip is designed by Raspberry Pi in United Kingdom. 

It can be powered either via the micro USB port, or via the VSYS GPIO pin by providing voltage between the range of 1.8V to 5.5V.

Technical Specifications of Pico

Raspberry Pi Pico is absolutely different from all other Raspberry Pi models. Pico is one of the first microcontrollers to use the RP2040 "Pi Silicon" processor. It is a custom "System on Chip" (SoC) developed by the Raspberry Pi team in UK which features a dual core Arm Cortex M0+ processor running at 133 MHz, 264KB of SRAM and 2MB of flash memory for storing files on it. 

- Microcontroller: RP2040 designed by Raspberry Pi in the UK
- Processor: Dual-Core Arm Cortex-M0+ processor, flexible clock running up to 133 MHz
- Input power: 1.8 - 5.5 V DC
- Operating temperature: -20°C to +85°C
- Dimensions: 51.0 x 21.0 mm
- Onboard Sensors: Temperature Sensor
- Memory: 264KB of on-chip internal SRAM and can support up to 16MB of off-chip Flash
          2MB on-board QSPI Flash (Adafruit's Feather RP2040, features 16MB of storage)

- GPIO: It has 40 GPIO through-hole pins also with edge castellation
- 26 × multi-function 3.3V GPIO pins, which includes 3 analogue inputs (The Analog inputs is something other Raspberry Pi's lack. They use variable voltages to connect to devices like a potentiometers, joystick or a LDR) 
- 2  × SPI, 2 × I2C, 2 × UART, 3 × 12-bit ADC, 16 × controllable PWM channels
- 8  × Programmable I/O (PIO) state machines for custom peripheral support that can offload many kinds of timing-critical processes from the CPU 

- Other Features:
- 1 × Contains 1 × USB 1.1 controller and PHY, with host and device support
- Accurate clock and timer on-chip 
- Low-Power sleep and dormant modes
- Accelerated integer and floating-point libraries on-chip
- Works with Windows, Mac, Linux machines and Raspberry Pi Computers
- Provides drag-and-drop programming using mass storage over USB

The one biggest disadvantage of the Raspberry Pi Pico is that there is no WiFi or Bluetooth on it. ESP32 and ESP8266 which you can buy for similar price comes with WiFi and Bluetooth (ESP32). Surely we can add wireless connectivity via external components,...

Read more »