PicoCalc - PicoMite - what version is what?

I am getting mightily confused at the versions on offer at Releases · madcock/PicoMiteAllVersions · GitHub

The ‘latest’ is PicoMite V6.00.02_PicoCalc_RC1, but there is also an earlier PicoCalc PicoMite V6.00.02 and before that PicoCalc PicoMite V6.00.02RC26 etc.

Now my understanding is that RC (Release Candidate) come before any ‘final’ release, but if we’ve had RC26 already, how are we back at a RC1 as the latest?

I’ve had difficulty getting any of these files to update the Pico W (MY BAD, IT IS NOT A ‘2’) in my PicoCalc (see threads in Newbie, questions on missing MMBasic commands and upgrading firmware - #29 by 787Geoff)
And although it does provide the 'update firmware" command, which seems to put the Pico in the boot state, dropping .uf2 files into the RP1-RP2 folder does not result in the Pico updating its firmware.

As I note above, I made the mistake of thinking I’d put the 2W in the PicoCalc, but as that arrived without headers (which I haven’t yet soldered) I had merely gone from a Pico to Pico W.

And THAT is why the firmware update didn’t work. Obviously the Pico is clever enough not to brick itself too easily!

1 Like

I apologize for the confusion. Since the PicoCalc platform is not officially supported by PicoMite (and likely never will be), and since Clockwork originally just released a (somewhat broken) port of a really old version of PicoMite when the device was released, I decided to try to port the newest version. The version numbers in my repo (which you linked above) originally tracked with releases of the official PicoMite and WebMite. There were a few extra “in between” builds that I just added an “_a”, “_b”, “_c” to if necessary. But then the official version released a final V6.00.02. It was unclear what I should call additional PicoCalc releases after that point, so I added the clunky: “_PicoCalc_RC1” and eventually hope to settle on a “_PicoCalc_Final”

All of this is made difficult by the fact that the official releases are just made available whenever they are made available, with little to no warning, and then the forums here start clamoring for a release to match. If you’re interested in a look at the history and the mess it’s all been, check this post.

Since you’ve got a Pico W, unfortunately the only option you have, if intending to use MMBasic, is PicoMite_PICO_V6.00.02_PicoCalc_RC1.uf2. WebMite is only supported on Pico 2W (not Pico W), and that’s a decision made by the official maintainer, and not something that I’d be able to work around. It depends on code that only runs on a RP2350 (Pico 2 or 2W). If you’d like to use the wireless functionality of your Pico W, then you’ll need to consider using MicroPython, the Arduino platform, or any of the other growing number of options that are available (like FORTH, uLisp, etc.)

Sorry for the cryptic release filenames, but I was using the build targets as defined by the official project. I realized later that they aren’t really all that helpful for folks who aren’t thinking about the processor in their module. They are described in this older release.

But the TL;DR is:

If you have a Pico or Pico W, you can only install a release with a name like:
PicoMite_PICO_V6.00.xxxxx.uf2
(and you won’t be able to use wireless functionality since it won’t be WebMite)

If you have a Pico 2, you can only install a release with a name like:
PicoMite_PICORP2350_V6.00.xxxxx.uf2
(and you won’t be able to use wireless functionality since it won’t be WebMite)

If you have a Pico 2W, you can install either
PicoMite_PICORP2350_V6.00.xxxxx.uf2
(and you won’t be able to use wireless functionality since it won’t be WebMite)
or
WebMite_WEBRP2350_V6.00.xxxxx.uf2
(and you won’t be able to overclock as high because WebMite limits this due to instability)

Some of the older releases also had .bin files. There’s an ongoing project to load firmware dynamically from the SD, and those were built with that in mind. That project is still being worked on and I hope to eventually support it so we don’t haev to worry about flashing firmware the normal way anymore, and will only have to flash the bootloader firmware once and then load everything else direct fromt he SD. But it’s not completely ready yet (at least for PicoMite/WebMite), so we’re using what we’ve got. :slight_smile:

Also worth noting, I’m just another customer of ClockworkPi and provided these builds because they weren’t really making a clean source fork from the official version available, and after the apparent drama it was clear the official version would likely never support the PicoCalc anyway. I wanted one, gave it a shot, and figured it might be useful to others. It’s unfortunate that Clockwork doesn’t indicate what modules work with what software, but that’s just how it is, I guess. They make good hardware, but software has never been their focus or strength.

5 Likes

Does the WebMite_WEBRP2350_V6.00.xxxxx.uf2 firmware offer wifi connectivity along with the LCD and keyboard the PicoCalc provide?

In other words, if I bought a Pico 2W board and flashed that firmware, would I still have my current PicoCalc functionality with keyboard and screen, but also add wireless so I would be able to use a few network protocols?

Because that would be useful and cool.

Yes, the custom PicoCalc hardware works in both the PicoMite and WebMite builds, which includes the keyboard and screen.

I don’t think there’s a very good breakdown anywhere of the differences between PicoMite and WebMite, but the only resource I know of is the manual:

Note that for any of the PicoCalc builds, there won’t be support for PS2/USB keyboard or mouse, or VGA/HDMI video output, but that’s because the hardware doesn’t exist on the PicoCalc, and it’s only really needed for the custom builds people use on TheBackShed. The PicoCalc keyboard support is natively mapped to the keyboard input expected by PicoMite/WebMite. And the display is actually one of the supported LCD displays (though we can’t use touch panel support since the PicoCalc screen isn’t a touch panel).

Though it’s kind of annoying, I’d recommend searching for “webmite” in the manual. Specifically, there are things supported only in WebMite, and there are some things that are NOT supported in WebMite, and that might be the best way to find out that info. There are also some code examples of how to do various things, like run a web server, update the time/date via NTP, etc.

The custom commands to read the PicoCalc battery work on both the WebMite and PicoMite versions, as long as your keyboard BIOS has been updated to at least 1.2 (or maybe higher if another update is released one day).

1 Like