gchadwick 43 days ago [-]
Whilst there are certainly other boards with more features/higher specs at similar prices I think the pico has a few things going for it

1. It's at cheap ebay/aliexpress prices but is a first party board supported by the chip manufacturer, not a third party clone.

2. The full raspberry pi ecosystem has a good range of hardware and software, the pico will hopefully see the same.

3. The internal architecture has some fun features. The DMA engine supports chaining DMA channels and one set of DMA operations can program and trigger another channel. Plus you can trigger transactions on when they're needed by the endpoint or on a timer. You can program in complex behaviours with this and just set it off and go without needing further CPU control.

More unique than the DMA is the PIO, 8 programmable state machines that have FIFOs and port access. This allows you to add support for protocols you don't have hardware for. This avoids bit banging and gives precise real-time control. You can do things like drive VGA and there's even an HDMI demo (possibly a bit too hacky to be used in production though).

I've just had one arrive today, going to spend the weekend seeing what I can do with just DMA and PIO whilst the CPU sits idle, maybe dealing with the occasional interrupt.

Abishek_Muthian 43 days ago [-]
4. It's available ~'everywhere'.

RPi foundation has done a great job at making it's product available to buy at the time of announcement in over 50 countries and I think that's underrated.

It shows 5 different websites for me to buy in India, which is not usually the case here for new hardware except few exceptions like Nvidia Jetson; if at all they ever make it to the country. Also RPi foundation/partners seems to be actively working with the Govt. to keep the prices competitive.

To give you a comparison, PinePhone costs >$200 (+tax) to get it here that is if at all it doesn't get blocked at the customs due to licensing requirements for telecommunication hardware, taxes for CBU(Completely Built Unit) smart phones, blockade on shipments from the country to the North. That's a tragedy considering huge number of Linux enthusiasts in the country and that alternate smartphone OS can indeed help Govt.'s self reliance goals.

P.S. That was not to diss on Pine64's efforts, but to show the state of enthusiast hardware availability in India.

worik 43 days ago [-]
"...doesn't get blocked at the customs due to licensing requirements for telecommunication hardware, taxes for CBU(Completely Built Unit) smart phones, blockade on shipments from the country to the North...."

OMG. I had forgotten. What a mess. Politics is a drag

intricatedetail 42 days ago [-]
Mostly corruption. Big companies pay politicians to introduce more barriers to enter the market so that there is less competition.
captn3m0 43 days ago [-]
+1. It is amazing seeing how well they’ve managed this.

There were educational launch videos out from the authorised Indian resellers on the day of launch, even.

43 days ago [-]
m463 43 days ago [-]
> Whilst there are certainly other boards with...

This IS the other boards!

I think if you look here:

https://www.raspberrypi.org/blog/raspberry-pi-silicon-pico-n...

Scroll down and you'll see the RP2040 has been released on many boards simultaneously.

- Adafruit Feather RP 2040

- Adafruit ItsyBitsy RP 2040

- Arduino Nano RP2040 Connect

- Pimoroni PicoSystem

- Pimoroni Pico Explorer Base

- SparkFun Thing Plus – RP2040

- SparkFun MicroMod RP2040 Processor

- SparkFun Pro Micro – RP2040

blippage 42 days ago [-]
4. Excellent documentation which will only likely get better. SDK in C/C++, and MicroPython. You can even learn concepts like PIO and DMA in MicroPython. Adafruit expressed confidence in their MicroPython libraries working out of the box, too.

The form-factor on the Pico is also a little nicer than and ESP32.

Pin duplicators are also available. This idea has a lot of potential, as it allows one to break out modules. It's much better than the Arduino shield for two reasons: 1. shields have quirky pin alignments, making it hard to create your own boards. 2. shields stack on top of the other, obscuring the layer below.

The Pico will be another stellar success from the Pi Foundation. I have no doubt.

comboy 43 days ago [-]
What could be the reason to use DMA on a hobby micro-controller board? Honest question, I'm just curious. I can imagine some high reliability production systems that may prefer micro vs CPU, but why would you bother doing any more advanced graphics or anything like that on a microcontroller? I mean I played with VGA on arduino but that was because there were no cheap SBCc back then.
timonoko 43 days ago [-]
VHF radio transmitter? You construct some complex wave pattern and then push it out high-speed via DMA.
zwirbl 42 days ago [-]
Battery life, having data transferred via DMA means the cpu can chillout/wfi/wfe which on some chips turns off the cpu clock altogether
Unklejoe 43 days ago [-]
> one set of DMA operations can program and trigger another channel.

I once worked around a very unfortunate hardware shortcoming in a DMA engine by doing exactly this. Each channel supported a list of descriptors, so I used the last descriptor to actually perform DMA operations on the configuration registers of the other channel.

The possibilities are endless with this kinda stuff

stinos 43 days ago [-]
The possibilities are endless

So is the time wasted when there are bugs in the docs :P Don't remember the exact chip, but it was on the first job I had and it took me weeks to find out why the thing didn't want to do what I told it to. Turned out some names of registers were swapped in the docs. But indeed, once I figured that out, it was really nice to work with and things like interleaving data from multiple ADCs just worked with basically no CPU interaction.

jarmitage 43 days ago [-]
Thanks for this summary.

I am excited about the DMA and PIOs having used BeagleBoard PRUs, but what about the quality of the ADCs/DACs?

Isn't all the talk of hard real-time applications and so on somewhat moot if those aren't high quality enough?

(afraid I haven't had time to read the datasheet yet!)

akiselev 43 days ago [-]
From the devboard datasheet:

> The RP2040 ADC does not have an on-board reference and therefore uses its own power supply as a reference. On Pico the ADC_AVDD pin (the ADC supply) is generated from the SMPS 3.3V by using an R-C filter (201 ohms into 2.2μF)

Which doesn't sound promising and I don't see a DAC in the RP2040 datasheet.

mlyle 43 days ago [-]
It's good and bad. Nice that they've filtered AVCC pretty heavily-- 360Hz corner frequency-- lots of microcontroller boards don't.

Less nice that the ADC scale will be affected by power supply offset, though that all depends upon how "good" the board 3V3 is. The bandgap and error amplifier on the DC-DC converter IC is good at least-- max +/- 1%.

jarmitage 43 days ago [-]
Right. I wonder if the Arduino version will be better for this, or whether we might need to wait for future boards from RPi.
vorpalhex 43 days ago [-]
Is there a good guide that you recommend on the PIO or DMA features?
gchadwick 43 days ago [-]
I've just been reading the datasheet here: https://datasheets.raspberrypi.org/rp2040/rp2040_datasheet.p...

It does have some examples and the Pico SDK has various PIO programs you can look at for inspiration. The getting started page links to a few projects including the HDMI/DVI: https://www.raspberrypi.org/documentation/pico/getting-start...

trebligdivad 43 days ago [-]
It's obvious whoever designed that, did it so that they could do fun things with it; very flexible PIO and DMA with lots of neat corners; and mention of fun things like 8080 bus interfacing and the like.
tyingq 43 days ago [-]
Note that the HDMI/DVI code overclocks the Cortex M0 from its normal 133Mhz to 252Mhz. So it's a cool hack, but I think it would have wonky behavior. https://github.com/Wren6991/picodvi/blob/34bc82555860de4b35e...
duskwuff 43 days ago [-]
On the upside, it looks as though the production silicon has a lot of performance headroom. The 800x600 mode overclocks it all the way to 400 MHz!
tyingq 43 days ago [-]
That is cool, and at $4, I suppose the risk is pretty low :)
SV_BubbleTime 43 days ago [-]
> [PIO] allows you to add support for protocols you don't have hardware for.

PHY level support, yes. But nothing higher than that. You would still need to implement the protocol in software for the most part. So at 133Mhz, it’s probably fast enough to toggle a CAN transceiver correctly, but would have very little comprehension of bus arbitration or CRC or what makes a message valid (RTR, IDE, DLC, etc).

It’s very cool, but the example they used of making a simple waveform for the serial driven LEDs is more what they were going for.

That example is pretty much already taken care of with an SPI or PWM that runs off DMA though. You can easily make a waveform for those LEDs. I’ve never understood why the enthusiasts use bit banging and special hardware.

jmiskovic 43 days ago [-]
Didn't study Pico but I don't think PIO can interface CAN bus.

The physical layer uses differential wired-AND scheme where any device can pull it into dominant state but recessive state is possible only if no device is driving the bus. In most cases CAN requires a dedicated HW transceiver, I would be pleasantly surprised if Pico can pull it off without external components.

SV_BubbleTime 43 days ago [-]
Yes. Did you notice where I wrote ”fast enough to toggle a CAN transceiver”.

The point is the PIO may be great at wiggling pins, but that doesn’t mean you can “support hardware protocols” you don’t have peripherals for. It means it gets you a pin wiggler, and the rest of the protocol would have to be software.

43 days ago [-]
sokoloff 43 days ago [-]
And a 120 ohm termination at the end of the bus.
SV_BubbleTime 43 days ago [-]
This is not a required item. It is suggested that the termination is 120ohms, but depends entirely on the length of the bus and number of modules. You can have short runs of can with no transceiver and no termination.
zootboy 43 days ago [-]
CAN uses a dominant/recessive transmission method, similar to I2C. The termination resistors are absolutely required, as they are what drive the bus back to the recessive state.

Perhaps you were thinking of RS-485, which actively drives both bus states and therefore can get away with unterminated buses at low bitrates / short runs.

SV_BubbleTime 43 days ago [-]
No, I was not thinking RJ485 where termination is optional.

You are forgetting that CAN can work at short distances without being a differential bus at all.

I mention this where I wrote “no transceiver AND no termination”.

zootboy 42 days ago [-]
In that case, it's not really CAN, it's more like CAN-tranceiver-control-signals. That may work, but would realistically be limited to only two devices, at which point it probably makes more sense to just use a protocol that's meant for short point-to-point links, like U[S]ART or SPI.
SV_BubbleTime 42 days ago [-]
I think a better way to describe it that it’s CAN all the way up until the PHY. It’s still CAN protocol, you still need CAN modules, and really, nothing looks different at all to them.

You just lose out on the differential pair... but even that isn’t required when you look at fault tolerance CAN in single wire mode, or single wire CAN PHY transceiver options, as to the original point about termination, I can’t remember if Single Wire CAN is terminated in a loop or pulled up or down, but I promise it’s not 120ohm termination like differential CAN is.

Imo, safer to say that CAN is a protocol that can take many physical forms, and one of them is direct A to B modules with no termination.

a9h74j 31 days ago [-]
Yes. You could do all-point-to-point CAN by or-ing all of the CAN-TX logic-level outputs, perhaps in an inverted tree, and then fanning out the global OR result to all CAN-TX logic-level inputs. Or, at short distances, just use wired-or at logic levels.
Too 42 days ago [-]
Single resistor can easily be added yourself. It doesn't have to be inside the transceiver, just close enough to end of cable. Bigger issue is the arbitration feedback as others noted.
sokoloff 42 days ago [-]
Agreed. However, going from zero external parts to one is a big step in terms of easy experience and sharing of code/projects.

Arduino “took off” because it was easy and standardized. You and I could probably lay hands on a 120R today, but fewer than 0.01% of the population could without ordering something (at which point you could just as well order an MCP2515 module).

It’s a “what’s in my hand right now?” hurdle not an “it’s technically advanced” hurdle that makes 0 external parts such a selling point.

emilecantin 43 days ago [-]
It's a game-changer in the hobbyist marine-electronics world. The marine electronics field is littered with various weird proprietary protocols that are _almost_ the same as open standards in other industries, but not quite. Examples include:

- NMEA0183, which is electrically RS-422 (similar to the ubiquitous RS-232, but only sometimes)

- NMEA2000, which is basically CAN

- Seatalk, which looks like NMEA0183 but is electrically inverted (1 is 0 and vice versa) and also uses weird byte lengths (9-bit?)

- Seatalk-ng, which is basically NMEA2000 with a few more message types

A $4 device that can translate arbitrary weird PHY protocols into a bitstream on a USB port is awesome in this world.

SV_BubbleTime 43 days ago [-]
I am beyond skeptical this will be adequate for NMEA/CAN for the very reason myself and others explain in the rest of the thread.

This will get you wiggling output pins, not a replacement for dedicated protocol hardware or a actual programmable logic.

monocasa 43 days ago [-]
I think CAN is the special case here, since it more or less requires hard real time feedback within a bit cell. Almost all of the other weird protocols don't do that, so you can have the simple scan in/out handling the phy like you said and are no longer dedicating a full core 80% of your time to bit twiddling.
SV_BubbleTime 43 days ago [-]
That’s fair enough. CAN is pretty complex. But still, I’m seeing a lot of ability to mimic waveforms being passed off as “custom hardware protocols”. It’s a cool peripheral, but IDK about any type of “game changer”.

If we look at Cypress’s PSOC, that’s real FPGA fabric on their micros and it’s barely capable of making some hardware protocols. I’m pretty sure there isn’t enough there for CAN going back to that example.

geerlingguy 43 days ago [-]
Note that Arduino is coming out with a new Nano board for the same chip (new RP2040) with 16MB of flash and wireless built in. No word on pricing yet, though: https://blog.arduino.cc/2021/01/20/welcome-raspberry-pi-to-t...
jack_riminton 43 days ago [-]
Wireless is the key feature for me opens up so many more possibilities
matthewfelgate 43 days ago [-]
Wireless is key for me for my hobbyist projects.
fermienrico 43 days ago [-]
By "Wireless", which specific protocol do you mean?
jack_riminton 43 days ago [-]
I don't
alpaca128 43 days ago [-]
That's great news, the 2MB flash are not quite enough for some projects and this could fit the bill for me.
wiremine 43 days ago [-]
Related conversation from yesterday: https://news.ycombinator.com/item?id=25856291
SamBam 43 days ago [-]
This looks great. In seems from a rough glance at the feature set that there are plenty of boards that do more for not much more money, but my guess is that this is designed mostly for the beginner/educational set, where everything can be nicely standardized and not the Cambrian Explosion of the *duino boards. Is that about right?

Speaking of education, does anyone have a favorite mechanical device (toy car, robot, etc) that is compatible with a microcontroller that can be used for teaching little kids? (Month 10 of learning-from-home dragging on here...)

detaro 43 days ago [-]
the PIO part as far as I know does not have a match in anything else in that market segment. I was sceptical too at first, but it seems like this actually does add something new to the market. More examples will be around, but e.g. the first demo going around driving two DVI screens is already pretty neat for what's possible, and other devices would struggle with.
davemp 43 days ago [-]
PIO feels like a lateral progression from the arm+fpga socs that have been floating around for awhile. So you could already get socs with even more powerful configurable logic behind their IO. Most FPGAs support partial reconfiguration so they can be reconfigured dynamically as well.

PIO is still pretty cool from an ease of use and cost perspective though.

matthewfelgate 43 days ago [-]
Do you have a link to the demo with two DVI screens?
DanBC 43 days ago [-]
Have a look at kits for BBC Micro:Bit.

EG, this one gives you a nice breakout board and a few sensors and switches. It also gives you an instruction book. You'll also need to buy the actual Micro:Bit too. This kit has a website for more projects here: https://tinkercademy.com/microbit/

You program the micro:bit in MakeCode in a webbrowser. That also has an emulated device so you can see what it's like without having the actual board.

And you can program the Micro:Bit with Python.

It looks spendy, and it is, but the colour-coding of the cables and the keyways of the sensor PCBs make it friendly for children.

There are lots of kits for micro:bit https://www.elecfreaks.com/micro-bit/kits.html

You may want to wait for Version 2 to be released. https://www.element14.com/community/docs/DOC-95670/l/introdu...

slezyr 43 days ago [-]
> You may want to wait for Version 2 to be released

You can already buy it from Ali Express.

giantg2 43 days ago [-]
"but my guess is that this is designed mostly for the beginner/educational set, where everything can be nicely standardized and not the Cambrian Explosion of the *duino boards"

That was my take on it. I first saw it and thought of my adurino nanos. Then reading the specs, I wondered why not use an ESP32 with wireless etc. I think they are only $3 more. Standardization was all I was left with.

regularfry 43 days ago [-]
It's also a nice and relatively straightforward first step into custom silicon, which is probably going to turn out to be quite an important strategic move for them.
giantg2 43 days ago [-]
I wouldn't have thought so, but I guess it could. I thought their whole point was to use existing chips that were low cost to promote education. Jumping into custom chips seems like an odd move for that, unless they want to monetize.
regularfry 43 days ago [-]
They've got scale now. I think that's the difference.
Bigpet 43 days ago [-]
Seems to be clocked a lot higher than the lower cost arduino models. And has a little more memory.

So it might be worse suited to battery-powered applications, unless you do some power managment.

Not that I know what you would necessarily do with more of that compute.

Tempest1981 43 days ago [-]
I built a small project using a Raspberry Pi Zero. Wanted to use it in my car. One frustration is that it takes 30+ seconds to boot and show signs of life on power-on.

Wondering how much faster I can make this, or a Pico? Before I lose all the benefits of Linux.

chadaustin 43 days ago [-]
The AVR/Arduino boards boot instantly which is one of their big advantages here. I imagine the Pico will be the same.
wamburu 43 days ago [-]
Have you tried TinyCore http://tinycorelinux.net ? Might be faster.
regularfry 43 days ago [-]
You want to take a look at buildroot-based approaches. They're not quite instant-on, but they're tolerable. https://github.com/showmewebcam/showmewebcam is a good example.
rasz 43 days ago [-]
You could go bare metal ARM on Zero and boot in under a second.
war1025 43 days ago [-]
Would this be a good stepping stone for someone wanting to learn more about microcontroller type stuff?

I bought an Arduino starter pack a few years ago, and it was neat, but I never ended up doing much with it beyond the first week or so.

I guess this would maybe suffer the same fate.

What projects do people do with microcontrollers that don't just end up being silly gimmicks?

yummypaint 43 days ago [-]
If you're into music production making your own MIDI controllers, electronic drum pads, sequencers, filters, compressors, etc can quickly save thousands of dollars. Plus there is nothing like performing on your own hardware.
ies7 43 days ago [-]
Last year I pushed hundreds of esp8266 & esp32 for manufacture data entry/monitor.

Some example: Temp monitoring Weight data collection Cheap wifi mesh :) And a bunch of thing with rfid and ble beacon

For dashboard we use thingsboard.io

Edit: There're many site mentioned that you shouldn't use arduino for manufacturing because it isn't hardened etc. Please study it first :)

mumblemumble 43 days ago [-]
The single most useful thing I've built with a hobbyist board is a pomodoro timer.

I also built my own wifi speaker using a Raspberry Pi Zero W and an open source implementation of the AirPort protocol, but we've stopped using it because it was flaky and needed regular reboots. Bluetooth turned out to be (barely) less annoying.

emilecantin 43 days ago [-]
I've done a few "smart-home"-type projects.

One of them is an e-ink display outside my office door that either displays today's date, or a warning sign stating that I'm in a meeting.

The warning is triggered by a switch on another microcontroller that sits on my desk (an M5 Stack, so it has a nice enclosure & screen).

war1025 43 days ago [-]
So flipping my original question around a little, how did you get into learning these things?

I've always wished I had taken a hardware course or two while in University. I can't seem to think of anything practical enough to keep my motivation while I deal with learning about all the actual hardware bits.

emilecantin 43 days ago [-]
Honestly, I just used ESPHome for all of this (https://esphome.io/).

I mean, I've written code for microcontrollers before, but it's hard to beat something where all the building blocks are already done for you; leaving you only the job or assembling them in the product you want.

If you know "normal" programming (I do web dev), it's relatively easy to get an Arduino and start copy-and-pasting example code until you've got something cool. The syntax itself isn't too complex, and most of the really hard stuff already has a library built for it.

Arduino code can also be used on the ESP8266 / ESP32, which is an amazing, <$2 (shipped!) microcontroller that's Wifi-enabled.

matheusmoreira 43 days ago [-]
Good question. I'd probably try to automate my home a little bit...
epx 43 days ago [-]
My dream board would be a full Raspberry with an Arduino-like µC included on the same board, for easy I/O.
jrockway 43 days ago [-]
That sounds like a Beaglebone Black. It has "programmable realtime units" built in, which are basically microcontrollers. They are well-integrated with the host computer; there is a mailbox passing messages between the host machine and the PRUs. No need to invent a serial protocol for communicating -- just put your c struct in there.
na85 43 days ago [-]
+1 for the Beaglebone Black, a great little board that doesn't get as much publicity as the Raspberry and other boards.
NoNameHaveI 43 days ago [-]
Plus, Beagle is 100% open source. Want to mod and etch your own PCB? You can.
avian 43 days ago [-]
Texas Instruments AM335x the BeagleBone uses is also fully documented. There's a huge PDF manual publicly available that describes every functionality. It's such a welcome change from Raspberry Pi's mostly undocumented Broadcom SoCs.
pjc50 43 days ago [-]
I think this was (one of) the things the RP2040 was designed to do; they know that a lot of people strap an Arduino to the Pi as an IO expander or to handle real-time elements, so they've built their own.

They already did a peripheral chip for the RPi. Now they have their own microcontroller. I suspect in a few revisions they'll have their own host processor to replace the Broadcom one ...

It's a great achievement for a very small team.

analog31 43 days ago [-]
>>> a lot of people strap an Arduino to the Pi as an IO expander or to handle real-time elements,=

Including me. I actually prefer this to the GPIO, though it adds one more component. An advantage is that I can move my hardware projects between RPi and other computers in the house including my nice comfy and fast desktop workstation. With a bit of care, my Python support software runs the same on RPi and Windows with no code changes.

Also, if you keep things within the Arduino ecosystem, it's easy to upgrade or downgrade your microcontroller as needed, with only minor changes to your embedded code. What I'd like to know is if the development environment for this board is as nice (or better, can always hope) than the Arduino environment.

alpaca128 43 days ago [-]
That's an interesting idea. I think this could work great in the Pi Zero format - compact, wifi + mass storage if needed and with the right wiring you could even flash the controller remotely via wifi.

Could be a nice mix for projects where the size of another PCB would be problematic. The target audience would probably be smaller and I doubt the RPi Foundation would be interested considering their focus on education, but I would probably buy one.

vorpalhex 43 days ago [-]
There are several DIY drone boards that have this kind of setup. Usually it is an arduino mounted to a Raspberry pi with an i2c channel for communication, but they seem to be getting more and more popular.
roland35 43 days ago [-]
Hackaday has good reviews of similar small microcontroller boards.

- STM32 "Blue Pill": cheap, uses common STM32 ARM parts, but generally available on places like ebay/alibaba

- ESP32: has wifi and bluetooth, less good documentation but great performance/$

- Raspberry Pico!

fermienrico 43 days ago [-]
> less good documentation but great performance/$

Truth couldn't be far from that. Its completely the opposite - ESP32 toolchain and docs are superb: https://docs.espressif.com/projects/esp-idf/en/latest/esp32/

And there is ESP32.net: http://esp32.net/

roland35 43 days ago [-]
maybe it has changed since I last checked it out then! I had problems getting started - but it was probably just me.
ashtonkem 43 days ago [-]
There is some great open source stuff for the ESP32, including ESPHome[0]. These are pretty popular for adding functionality to Home Assistant where off the shelf parts aren’t available. The ability to go on low power standby until some condition is met appears to be one of the best selling points.

0 - https://esphome.io/

tachyonbeam 43 days ago [-]
I'm happy to see an ARM-based microcontroller, but I my two questions would be:

1. Why didn't they use the same GPIO header as a full-sized Raspberry Pi? That would allow people to reuse some of the same headers. Seems like a missed opportunity there?

2. Since it has no WiFi and it costs more, this compares unfavorably with the good old ESP8266 in some important respects. Why would you pick the Pico?

EDIT: I'm being downvoted to hell. I'm sure that the new Pico will find buyers, in fact, I wouldn't be surprised if it sells out based on brand recognition alone. I'm just trying to ask some legitimate questions as to what this has to offer over the competition in the microcontroller space, which is a crowded market, and how it fits into the existing RPi ecosystem.

jascii 43 days ago [-]
1. That would make the device larger and wouldn't provide compatibility anyhow. 2. The street price of ESP8266 seems to be $6.49, which is more then $4.00. I imagine the rpi board uses less current, and the programable logic in the gpio's gives some interesting opportunities.
RicoElectrico 43 days ago [-]
Actually, the most popular ESP32 (DevkitC) board can be had for $4 or so: https://aliexpress.com/item/4001076883280.html
sargun 43 days ago [-]
Or, the ESP32-C3, which is <$2.
jascii 43 days ago [-]
I haven't benchmarked them, but the ESP32-C3 only has a single core, right? I also assume the wifi and bluetooth functionality will increase current use.
alexhutcheson 43 days ago [-]
That's just the chip, not the board.
sargun 43 days ago [-]
The dev board (WROOM) is an additional $2.
alexhutcheson 43 days ago [-]
Link? The dev boards I’m familiar with are $10. Not that I really care for hobby purposes - I’m not buying 100s of them.
sargun 43 days ago [-]
There's no publicly released pricing AFAIK, since the board is still in preproduction. I think the dev board is more expensive -- and targeted to be $8. $8 for a board with WiFi is pretty good.
tachyonbeam 43 days ago [-]
Would it make the device larger? The RPi GPIO is 40 pins (2x20). This board has two 20 pin headers (40 pins total). You could have the RPi GPIO off to one side and it would take the same total area. Maybe it's not as fun to route the multilayer PCB to achieve this, but it would fit better with the existing RPi brand/ecosystem.

As for the ESP8266 (not ESP32), you can find them on eBay below $3 shipped. The ESP8266 is already quite fast and capable for a microcontroller (it's overkill for many applications). I agree that more IO pins could be a differentiating factor.

helsinkiandrew 43 days ago [-]
The Pico has more GPIO pins and larger PROM etc. - it looks like more of a replacement/competitor for the Arduino boards at the moment.

I'd guess that in a few versions/years they'll come out with an embedded Wifi onboard.

kingosticks 43 days ago [-]
2. If you need wireless, you need an ESP board. If you don't, you might prefer the more performant Pico. The last section of the article also gives some reasons.
nayuki 43 days ago [-]
swsieber 43 days ago [-]
There's an interesting thread over on reddit about supporting Rust on this - apparently the multi-core architecure is different enough from a normal CPU to cause issues: https://www.reddit.com/r/rust/comments/l1uwyu/would_it_be_po...

Though in the mean time running code on just one of the cores shouldn't take a lot of work.

jascii 43 days ago [-]
Does anyone know if you can keep the GPIO "programmable logic" part powered on while putting the cores in low power mode? That could make for some interesting applications.
jsmith45 43 days ago [-]
There are two low power modes. Technically either should be able to let the PIO continue to run. I'll explain all three power modes.

NORMAL: You get to select what is clocked here, except for the CPU. CPU will turn off clocking of some of its components if you are running a sleep instruction like WFE/WFI.

SLEEP: If both processors are in a sleep state, and no active DMA requests are running it automatically switches to this mode. You can once again configure what components are clocked here. So you could leave say just RTC and PIO powered up. This is less of a true low power mode, and more of just a way to automatically switch to a different set of clocked components if the bus is idle, so as to further reduce power consumption.

DORMANT: Ring and crystal oscillators stopped, zero dynamic power used in default configurations. Only a pin or RTC interrupt can wake the system from this state. Note that any externally supplied clocks will continue to be routed, and PLLs will run if not powered down. Thus technically this mode can be used to fully stop the CPUs while letting other accessories run from an external clock. The nominal intended usage is to continue to let the real time clock run, but the PIO could be run too/instead.

jascii 43 days ago [-]
Thank you for the clear and concise explanation!
ramary 43 days ago [-]
Yeah that would be really cool, can imagine this being useful for very simple if this then that logic in dealing with peripherals. e.g. handling a broader range of sensor input and peripheral interrupts without having to turn the core on to do processing.
leoncvlt 43 days ago [-]
All right, let's say you know absolutely nothing about the world of microcontrollers but you think this looks cool and cheap. What webpages or resources would you recommend to get started and learn more? Do you first to need to get into electronics and circuits? But before that, get a foundation on how electricity works? And even before that, get a good grasp on how to create the universe?
Unklejoe 43 days ago [-]
Does anyone know if the chip can be purchased from distributors like Mouser or Digikey? If not, will it be eventually?

This is the first thing I look at before deciding to invest in learning a new chip. I specifically look for something that is guaranteed to be available for a long time and not change.

zargon 43 days ago [-]
This is the first thing I wanted to know too. From raspberrypi.org:

> Are you planning to make RP2040 available to customers?

> We hope to make RP2040 broadly available in the second quarter of 2021.

bchip 43 days ago [-]
I wish they would of added wifi and bluetooth to the board. This could of replaced esp32s.
VoxPelli 43 days ago [-]
Eg Arduino will launch a board with that, the core here is the new chip, not the Pico board, lots of manufacturers will build boards with the chip
beervirus 43 days ago [-]
This is pretty tempting. I don't know exactly how stripped-down MicroPython is yet, but I'm guessing it's going to be a lot easier for me to deal with than learning C like I'd have to with a lot of microcontrollers.
geerlingguy 43 days ago [-]
Yes! And CircuitPython from Adafruit.

I have been turned off from some Arduino projects in the past due to the C/C++ requirements, but MicroPython apparently runs on many microcontrollers and makes it pretty simple if you know basic Python.

Once you get a design working, if you need the efficiency and power gains from C, then you can drop down to that level. But with the Pico having a 133 MHz processor, the overhead for many projects isn't too bad, and it's still going to be a lot more efficient than running something equivalent on a Pi Zero.

43 days ago [-]
ElectroNomad 43 days ago [-]
Can anyone suggest BLE-only microcontroller?

I wanted to build a smart-lock, but all the boards either also have Wi-Fi on-board (that eats a lot of power) or don’t have anything at all.

montecarl 43 days ago [-]
I've just started to get into microcontrollers, but I have been playing with boards based on the NRF52840[0]. I'm using them to build an air quality monitor to measure CO2[1], volatile organic compounds[2], temperature and humidity.

I'd recommend the Adafruit NRF52840 Feather[3] or if you want a smaller version (that doesn't include a LiPo battery charger) get the ItsyBitsy nRF52840 Express[4].

I haven't used the Arduino or CircuitPython programming environments, I've just been using Arm GCC and Nordic's SDK.

[0] https://www.nordicsemi.com/Products/Low-power-short-range-wi...

[1] https://www.adafruit.com/product/4867

[2] https://www.adafruit.com/product/3709

[3] https://www.adafruit.com/product/4062

[4] https://www.adafruit.com/product/4481

tpolzer 43 days ago [-]
The nrf52840 has a reasonable programming interface, good power consumption and can be bought as a USB breakout dongle for 10$.
43 days ago [-]