Raspberry Pi Pico: een Arduino-Pi voor 4 euro
De Raspberry Pi Foundation heeft een printplaatje voor op een breadboard uitgebracht met daarop een zelf ontwikkelde microcontroller voor onder meer MicroPython.
Voor eenvoudige hobbyprojecten en veel besturingstaken is een Raspberry Pi te duur of te groot – en verbruikt hij te veel energie. Daarom is er nu de Raspberry Pi Pico die tot de klasse van de Arduino Nano behoort. Met zijn afmetingen van 5,1 × 2,1 centimeter is hij iets groter dan de Nano, die 4,5 × 1,8 centimeter groot is, maar hij heeft ook 40 in plaats van 30 contactpinnen en 26 in plaats van 22 GPIO’s. De laatste werken met 3,3 volt.
Je kunt de Pico bijvoorbeeld op een breadboard gebruiken. Net als een Arduino Nano heeft hij een microUSBaansluiting voor de voeding en het programmeren. Dat laatste gebeurt in eerste instantie via MicroPython of Microsoft Visual Studio Code, en er is ook een GCCtoolchain met geoptimaliseerde bibliotheken voor bijvoorbeeld floatingpointberekeningen – de CortexM0+ heeft immers geen FPU.
(Z)ONDER DE KAP
De gebruikte microcontroller is de 40 nm RP2040chip, ontwikkeld door de Raspberry Pi Foundation zelf en gefabriceerd door TSMC. Zijn twee 32bit ARM CortexM0+kernen halen tot 133 MHz. Op de chip zelf zit 264 kB SRAM (Static RAM). Extern kan QuadSPIflash worden aangesloten, op het Pi Picoboard zit 2 MB Winbondflashgeheugen. De gebruikelijke GPIOfuncties zoals I2C, SPI, UART, PWM en ADC zijn aanwezig, alsmede timers. Bijzonder zijn de acht programmeerbare I/Ostatusmachines. De goedkope Raspberry Pi Pico, die maar 4 euro kost, werkt op spanningen van 1,8V tot 5,5V en moet bij een voeding van 5 volt op een verbruik van 0,005 tot 0,5 watt uitkomen.
MICROPYTHON
De Raspberry Pi Pico is te programmeren in C/C++ en MicroPython. Voor de Pi Pico is een speciale port gemaakt van MicroPython. Dat is een volledige implementatie van Python 3 voor microcontrollers. MicroPython probeert zo compatibel mogelijk met het normale Python te zijn. Aangezien gebruikers van een Raspberry Pi toch al gewend zijn aan Python 2 of 3, is
MicroPython een logische keuze. Je beschikt over een interactieve prompt (REPL) waarmee je commando’s rechtstreeks kunt uitvoeren via USB Serial en een ingebouwd bestandssysteem. De Picoport bevat modules voor het adresseren van lowlevel chipspecifieke hardware.
INSTALLATIE
De eerste stap voor het installeren van MicroPython is om de Pi Pico via de knop BOOTSEL als externe schijf aan je Raspberry Pi te koppelen en via het bestand index.htm dat op de Pico staat het bestand pico_micropython_xxx.uf2 te downloaden, dat je vervolgens op de Pico kunt droppen. Na een paar seconden zet de Pico zichzelf weer terug in zijn normale modus, verlaat het Pibestandssysteem, flasht de MicroPythonfirmware en start die op.
Bij de Thonny Python IDE klik je rechtsonder op het Pythonversienummer om de interpreter te wisselen naar die voor MicroPython.
Net als Python werkt MicroPython met inspringingen, onmisbaar bij eindige en oneindige loops, voorwaardelijke if/elseinstructies etc. Je kunt ook gewoon bibliotheken importeren, maar dan wel die van MicroPython, zoals met import utime (µtime), wat in normaal Python import time is.
ACCESSOIRES
De laatste maanden is door de externe partners van de Raspberry Pi Foundation, waaronder Adafruit, Arduino, Pimoroni en Sparkfun, hard gewerkt om accessoires voor de Raspberry Pi Pico te ontwikkelen en bovendien ook een aantal eigen controllerboards op basis van de RP2040chip.
Arduino heeft bijvoorbeeld een nieuw board op basis van de RP2040 aangekondigd, maar dan met een onboard wifi/bluetoothmodule, een bewegingsmeter en een microfoon, plus maar liefst 16 MB flashgeheugen.
Pimoroni heeft naast diverse uitbreidingen voor de Pico ook een minuscule handheld gameconsole ontwikkeld op basis van de RP2040: PicoSystem. Die moet binnenkort verschijnen voor een prijs van circa 65 euro. Er zijn maar een paar details bekend: IPSschermpje, joypad, 4 knoppen, lipoaccu, usbCvoeding.
Alle datasheets van de Pi Pico en RP2040 zijn in pdfformaat te downloaden via de link links op deze pagina. De Raspberry Pi Foundation heeft ook een beginnershandleiding beschikbaar gesteld.