Posted by Dave S on 12/02/2021 07:54:46:
…
I *really* like it. …
Dual threading (1 on each core) is trivial, and it has plenty of power.
…Dave
My experience too.
MicroPython and Thonny are very easy to use. Though fully functional, C at the moment takes no prisoners – you need to understand a mass of implementation detail. The complexity managed behind the scenes by the Arduino IDE has to be gripped! Work has started on supporting Pico on the IDE but no delivery forecast yet. I don't see any reason why the IDE won't make C/C++ on the Pico as straightforward as the other chips it supports.
The Picos dual core feature is easy to use, though not everything is thread-safe. I found this out trying to use one core for micro-controlling and the other for print(). Print() and serial Input-Output get into a muddle when Thonny tries to update the program. But loads of other stuff just works.
Been experimenting using Micropython to parse NMEA strings from a GPS module. Decoding NMEA involves reading a comma separated line of data fields and deciding what to do with the content. Lines start with an identifier which determines what the fields contain, and some data is packed inconveniently. For example GPS Latitude is sent as 3 fields: degrees, minutes.secondsAsDecimalFractionOfMinute, 'NS'. Useless for calculations, so a latitude like 51,30.333,S needs to be converted to degrees as a simple floating point number: -51.5083333. Although C supports this stuff and the resulting code is super-quick, coding it requires close attention to detail. For the same job Python is much easier to program, test and debug, though the resulting code runs slower. Doesn't matter as long as it's fast enough.
The Pico opens a bunch of interesting doors. It would be possible to write complicated code that doesn't need to run quickly in Python chugging away on one core, whilst high-performance code written in C runs flat out on the other. Best of both worlds.
Not tried CircuitPython yet. It's MicroPython forked by Adafruit plus support for a bunch of their modules. Very useful if one of them is needed. Otherwise there's a shortage of ready to use device libraries.
All very promising and best of all cheap. Post and packing is more expensive than the computer!
Dave