Raspberry Pi Foundation has done some amazing changes in the market of technology that make things better for all the tech-enthusiasts. They revolutionized the tech-industry with the smartest single board computers and now they are ready with the advanced and Hi-tech Raspberry Pi Pico. If you want to learn more about the Raspberry Pi Pico through written tutorials, all of the necessary information is provided below. We understand your enthusiasm but just curb your excitement a little bit and understand the Raspberry Pi Pico more!!!
Compact and Powerful Design
Raspberry Pi Pico has a small footprint, thanks to the powerful IC RP2040, which surprisingly provides a lot of power for a low price. It has a most energy-efficient ARM processor and dual Arm Cortex-M0+ processors that boost the Raspberry Pi Pico's performance. One of the best things about this low cost microcontroller is the features of a powerful new chip, the RP2040, which would help the users to develop the embedded electronics products or project at a worry free prices.
Anatomy of Raspberry Pi Pico
The Pico has a unique and compact design, 21 mm × 51 mm form factor, with the ability to be soldered easily for use with breadboards or on any other component. A user can also directly solder it on a PCB that would make the things better. Let’s go deeply into the design of Raspberry Pi Pi and understand it in a detailed manner. Each side of Raspberry Pi Pico, there is a 20 pad on each side, with the GPIO or General Purpose Input Output pins that are interleaved with ground pins. If we look at the GPIO pins, then it has the logic voltage of 3.3 V. All the readers should understand that 5V is not safe so do not go beyond 3.3 V with it!
You will be provided with the 25 GPIO pins, there are 26 pins but IO#15 serves a special purpose and should not be used in the projects. The developers of Raspberry Pi foundation made the minimum circuitry on the green PCB of Pico with the A 5V to 3.3V power supply converter, single green LED on GP25, boot select button, RP2040 chip with dual-core Cortex M0+, 2 MegaBytes of QSPI flash storage, and crystal. The RP2040 consists of a ‘permanent ROM’ USB UF2 bootloader which means if a user wants to program new firmware then the user gets the option of holding down the BOOTSEL button while plugging it into USB. Tech-people who use Adafruit can relate to this situation and are very familiar with this process as they use this same procedure on their USB boards.
Note: Hold the ‘BOOTSEL’ to enter the bootloader mode during boot.
Computational Tasks with RP2040
In terms of power and efficiency, RP2040 has won the hearts of people all around the world. It consists of a clock speed of M4 or SAMD51 and two cores that are equivalent to M0(SAMD21). If we talk about the peripherals, two I2C controllers, two SPI controllers and two UART are there for efficient communication. There are no I2S peripherals or cameras as the designers of Pico did that intentionally! What’s up with that you might ask! Instead of specific hardware support for serial data for the peripheral like the above, the RP2040 comes along with the PIO machine system that is an advanced, efficient and unique way for the data processing and custom hardware logic.
- RP2040 microcontroller chip designed by Raspberry Pi in the United Kingdom
- Dual-core ARM Cortex M0+ processor, the flexible clock running up to 133 MHz
- 264kB of SRAM, and 2MB of onboard Flash memory
- The castellated module allows soldering directly to carrier boards.
- USB 1.1 Host and Device support
- Low-power sleep and dormant modes
- Drag & drop programming using mass storage over USB
- 26 multi-function GPIO pins
- 2×SPI, 2×I2C, 2×UART, 3×12-bit ADC, 16×controllable PWM channels
- Accurate clock and timer on-chip
- Temperature sensor
- Accelerated floating-point libraries on-chip
- 8×Programmable IO (PIO) state machines for custom peripheral support.
CircuitPython Port with RP2040
You can use C/C++ which is great as it would make the users utilize it in an efficient way. Raspberry Pico has a MicroPython Port, and a CircuitPython Port. If we talk about our personal experience, then CircuitPython is the great and easiest way to start knowing Raspberry Pi Pico. It has a tremendous support for the drivers, sensors and other peripherals that raise the quality of the experience of the user.
RP2040 does not have a built-in flash memory instead of a lot of onboard RAM of 264kb. The fulfilment of this gap is filled by the external QSPI chip on which there is 2 MB, which gets shared between the running program and any file storage used by CircuitPython or MicroPython. When you are using C/C++ then you would be able to get the whole flash memory but if you are using Python then only 1Mb will remain for the image, codes etc.
Programming with CircuitPython on Pico
You can use this link to download the latest version of CircuitPython. Now when the download is complete then save it and then do the following
- Start from your Pico and unplug it from USB
- Hold down the BOOTSEL button, don’t let it go, while plugging the Pico in USB.
- Hold the BOOTSEL till RP1-RP2 drive appears on the screen!
- If the drive does not appear on the screen then repeat the process again
- Drag the adafruit_circuitpython_etc.uf2 file to RPI-RP2
- Now CIRCUITPY appears on the screen, and RP1-RP2 will disappear.
- Voila!You are done!
Programming with MicroPython on Pico
- You can easily program Pico by connecting it to a computer via USB, and drag and drop MicroPython firmware file on Pico mass storage to install MicroPython on Pico.
- Download the micropython UF2 file from the official link.
- Push and hold the BOOTSEL button and plug Pico in the USB port of your computer or Raspberry Pi.
- Release BOOTSEL button after Pico is connected to your computer as a mass storage device named ”RPI-RP2”
- Drag and drop downloaded micropython file on RPI_RP2 volume.
- Your Pico will reboot after the above step. Now your Pico is running micropython.
- Now you can access the Repl and micropython over USB Serial.
The introduction of the Raspberry Pi Pico can impress a large number of people. Raspberry Pi Pico can be used to create advanced items and gadgets in a variety of settings. Some people may want to use the Raspberry Pi Pico but are unsure how they can incorporate it into their projects. There are following projects which one can use to make things that would help in to make the advancement in the technology.
- Weather Station
- Home Automation
- Security System
- Embedded System Learning
- Light sensing & controlling devices
- Temperature sensing and controlling devices
- Fire detection & safety devices
- Industrial instrumentation devices
- Process control devices