Raspberry Pi Pico Discussion


So the Arduino Nano RP2040 Connect has now been released. to be honest, i think it’s too late to the party and i really do not think that the nano layout was the best thing for it.

I have a Nano 33 IOT and a MKR WiFi 1010, both are 3.3v boards BUT i think the MKR series boards are more hobbyist/maker friendly witht he built in battery connector /charger

This is the Nano layout

This is the MKR layout - also has a 5pin I2C connector, odd that its 5 pin and not 4 (5th pin is an alarm)

Question: which layout would you prefer


  • USB Micro B
  • 3.3v Logic
  • Board Power Supply (USB/VIN): 5V/5-21V
  • 16MB SPI Flash
  • u-blox-Nina Wifi W102 (BLE 4.2 and WiFi 2.4GHz)
    • Bluetooth supports SSP DUN PAN GATT
    • WiFi supports 802.11 BGN
  • Microphone
  • 6 axis IMU
  • 22 digital, 20 with PWM and 8 analog
  • full support for the entire RP2040 software ecosystem
  • Supports MicroPython
  • Arduino IOT Cloud Compatible

I am a little disappointed that they went with USB Micro B and not USB-C as micro B has its issues with breaking compared to USB-C

Price : £24 at ThePiHut, $24.50/€21.00 at arduino.cc

I have ordered 2 :slight_smile:

Delivered today 2x Arduino Nano RP2040 connect delivered today one with and one without headers

** Arducam Pico4ML TinyML Dev Kit**

Ok so this is very interesting, an RP2040 board with an onboard QVGA camera (320 x 240, SPI), OLED screen (160 x 80, SPI), microphone (Direct PCM) and IMU (I2C) and its designed for using TinyML (Machine Learning)

out of all the RP2040 boards that has come out, the Arduino was the one i was most interested in. This board is by far the most intriguing one to date

1 Like

Think this has to be the smallest RP2040 board.

** PGA2040**

PGA2040 is a compact RP2040 breakout intended for the most svelte and embeddable of projects. It contains only the components necessary to run the RP2040 (that’s the crystal, flash, regulator and essential support circuits) and it has no fripperies like LEDs, buttons and USB connectors - you’ll need to attach your own USB connector to be able to program it.

i am kinda confused by this one, not really sure what the use case is for this tbh but its kinda interesting at the same time

  1. I like very much your concise and comprehensive review on Pico, though, because of my electronics hobbyists background and experience on Raspberry Pi and Thonny python, I don’t agree with all your opinions, especially those rather professional, C/C++ related stuff. I have been a Windows GUI guy for many years, and not at all fluent on text based CLI linux commands.

  2. I am new here, so I never heard of “CAProjects”, and I wrongly thought that it was sort of open or commercial project on embedded hardware and software. (Yes, I now know it is a username.) I also have been confused with pi-top and pi-hole etc, because I am not a native English speaker. By the way, I just registered with pi-top a moment ago, so I need to google to learn more about pi-top.

  3. I bought a couple of pico boards these months but have been too lazy to start seriously learning, except reading Tom’s Hardware articles and tried their newbie friendly demo programs.

  4. Cheers.

So I googled to learn more about Pi-Top. Now I know it is a young (2014) startup. I almost never heard of it because it is not at all popular in my city (Hong Kong), where Arduino, Rpi, and BBC MicroBit have been more well known.

I started learning Arduino (Decimilla) some 10 years ago, followed by Rpi and Mirco-bit. I learned IDLE python from Rpi, and MircoPython from Micro-Bit.

Anyway, I googled and surprisingly found that my local electronics DIY shop WECL (I have been a fan of this shop for many years) does sell Pi-top STEM products to local schools, but I never saw them displayed in their shopping windows, which only entertain Arduino, Micro-Bit, and Rpi.

Pi-Top References

  1. Pi-Top Wiki
  2. WECL Pi-Top STEAM Educational Kits

Well, let me tell you why I would like to play with this smallest RP2040 breakout board.

A month ago I was excited to hear that RP2040 ‘Pi Silicon’ Goes on General Sale for $1 per chip. Then a couple of days ago I heard that the smallest RP2040 breakout board is also available. So I immediately ordered one.

I am using it as a rapid prototyping step to DIY the smallest RP2040 breakout board in the world!

1 Like

I’m sorry most of my comments is personal opinion so personally I can’t se a personal use for one for myself

1 Like

No worries. I think of course everybody’s comments here are personal opinion, including those KOLs (Key Opinion Leaders) such as the Swiss guy Andreas Spiess who has 330K subscribers. I am a huge fan of him, but again I like most but not all of his opinions on Rpi Pcio.

When I wrote my first reply to your Pico post, I intentionally first introduced myself as an electronics hobbyist, a Thonny Python fan, a Windows GUI old timer, before I mentioned that I prefer GUI to CLI.

I did, ages ago, dream of becoming a fluent C/C++ programmer in local industry where then had many opportunities in computer engineering. But during the 1980’s almost all the manufacturing plants have moved North, and that was the sad end of my very short engineering career. Anyway, to earn a living, I switched from engineering to teaching. Now that I am retired, programming in Pico is just for fun and healing.

I am a huge fan of this Swiss guy. I agree with almost all his Youtube comments on Pcio.

Yes, Novaspirit Tech video on Pico is also good, though not as impressive as the Swiss guy

I am also thinking of making a smart vehicle as proposed by @wil. However, I will be using Rpi4B instead of Pi-Top 4. It is laughable that only this morning I googled to find that Pi-Top 4 is actually a Rpi4B with a newbie friendly hardware software interface. So I think and hope that my coming Pico + Rpi4B experiments could contribute and shared by Pi-Top 4 users here.

PS - I have no experience in DIYing touch screen which I know can be difficult to mess around. I only know how to play with very small 0.9" to 1.3" OLED modules. So I think I would start my smart vehicle project humbly only with a dummy 0.9" OLED screen, and a couple of buttons.

Update 2021jun30hkt1455

Now I am thinking of starting my very first new topic, perhaps called “Pico Based Smart Vehicle”, in short “Pico Vehicle”. I am planning to make a long project, so perhaps the first topic can be titled as:

Project Proposal

Pico Vehicle Part 1 - Controlling a DC motor.


This new topic is on how to use the Rpi Pico with a DC motor controller, such as L298N, to drive a toy DC motor with a speed encoder, such as the N20.


N20 Gear Motor (50:1 Ratio, 460 rpm, with Encoder) - Servo City

Update, Apology, and Errata

I almost never heard of Pi-Top because it is mainly for classroom use, so I neven paid any attention. Actually MagPi has a review last year. Also I found Pi-top 4 sold in local stores (See references below).

My apologies for my outdated information about Pi-top.

(1) WECL-STEM Hong Kong pi-top products

(2) Element14 Hong Kong pi-top products

(3) RS HK pi-top products

(4) DigiKey pi-top products

(5) Pi-top [4] DIY Edition - Lucy Hattersley, MagPi 2020Oct

(6) pi-top [4] Kickstarting Compaign - KickStarter 2020

1 Like

** 3.5" Touchscreen Display for Raspberry Pi Pico (480x320) **


1 Like

** Adafruit Trinkey QT2040 - RP2040 USB Key with Stemma QT - coming soon**


  • Main body is same size/mounting holes as most of our Stemma QT boards (1.0" x 0.7" with M2.5 holes)
  • USB Type A connector with extra-thick PCB to fit into a USB host port
  • RP2040 32-bit Cortex M0+ dual-core running at ~125 MHz @ 3.3V logic and power
  • 264 KB RAM
  • 8 MB SPI FLASH chip for storing files and CircuitPython/MicroPython code storage. No EEPROM
  • Native USB supported by every OS - can be used as USB serial console, MIDI, Keyboard/Mouse HID, even a little disk drive for storing Python scripts.
  • Can be used with MicroPython or CircuitPython
  • Built-in RGB NeoPixel LED
  • STEMMA QT / Qwiic port for I2C connectivity
  • 3.3V regulator with 600mA peak output
  • 12 MHz crystal
  • Both Reset button and Bootloader select buttons for quick restarts (no unplugging-replugging to relaunch code)
  • Bootloader button can also be safely used in ‘user’ code

Ah, this WaveShare’s US$20, SPI, 3.5", 65k colour, resistive touch screen module looks attractive. I might get one when I have finished the first phase of my Pico 2WD.


(1) Waveshare Pico SPI, IPS, 3.5", 480x320, 65k colour, Resistive Touch (ILI9488, XPT2046) Display Module, US$20

This pico board is also super tiny, but out of stock. :sweat:

Seeed Studio’s New Seeed XIAO RP2040 is Super Tiny - Ash Hill 2021jul23

I’m planning to use the pico in a project and have a question about the I2C engine. I will write the project’s code in C using the pico-SDK. The RP2040 data sheet says I2C has a 16-element transmit and receive buffer. My question: what is an element? Is it a bit, a byte, a 32-bit word, what?

Just a quick reply. Usually a datasheet specifies a buffer by its data type and size, eg a 16 byte buffer. If no such thing is said, then my guess is that they want to make it very flexible. Eg, the “element” might be a pointer, statically or dynamically linked to an object, which can be any type and size of data structure.

I have been using python for some time, and I like its feature of when defining a function, you don’t need to declare the parameters as 32 bit byte etc, as in static typed language C. It is only at run time then the interpreter “guesses” that it should be, eg, an array, say, and do the dynamical (at run time) object creation and/or linking.

[Function} Parameter (computer programming) - Wikipedia

Thanks for the comment. The reason I need to know is that I am planning to sample an analogue signal at 20 Ksample/s and I need to know how big, in bits, the buffers are when the I2C data, to a peripheral, is only being transferred a maximum of 1 MBaud; at that rate, only 50 bits can be sent in the 50 uS between samples. So, will the 16 ‘element’ buffer hold 50 bits or not?
By the way, it is more than somewhat disappointing that the RP2040 cannot send/receive data faster than this limit. I would hope for 5 MBaud from a modern processor.

Yet another quick reply. (1) For ADC, 20k sps is usual. (2) So I think 400kHz SPI or I2C should handle it. But I am not so sure. Perhaps I can check it out later. (3) My feeling is that SPI ADC is faster than I2C ADC. Have you also consider SPI? (4) Even you can use 5MHz SPI or I2C, the distance between device and MCU is very short, perhaps on the same PCB, and even external, should be longer than 30cm. (5) All above are just casual, random ideas. Need to verify myself later. Cheers. PS - I am just a toy hobbyist, nothing industrial or professional. :slight_smile:

Update: Just now I searched my old posts and found the follow:

… There is one constraint though. If your SPI speed is 4MHz, then you can at most do about 200ksps. And if you don’t need to use 4Mhz SPI, if your sample rate is lower. For example, if your sample rate is 20ksps, then your SPI speed can be roughly 400kHz., …

Ref: https://raspberrypi.stackexchange.com/questions/96143/how-can-i-get-a-fixed-sampling-rate-of-1-ksps-when-interfacing-mcp3008-10-bit-a/96285#96285

Yet another old post you might be interested.

What is Rpi’s I2C Maximum Speed? - RpiSE, Asked 1 year, 7 months ago Active 7 months ago Viewed 6k times

So my feeling is that for Rpi4B, I2C 400kHz is practical, over 1MHz (which is the max speed of Pico, which uses the weak M0 chip) is not reliable.

You might like to let me know what ADC you are playing with, so I can check out its datasheet.