SD cards limit the max speed of the internal SPI bus to 1/2 or 1/4 full speed. This slows down the LCD refresh rate. I’ve also had reports that linux has timeouts reading and write from the Bus Pirate Mass Storage Device USB drive.
To combat this, I replaced the SD card with a NAND flash chip. The RP2040 now handles the wear leveling, bad block detection, garbage collection, etc. All the stuff that normally happens in the micro controller embedded in an SD card.
A 1Gbit NAND flash formats to about 90 megabytes once all the spare backup blocks are allocated. This isn’t a ton of space, but it’s enough for the configuration files, logs, firmware files, and tutorial/walk-through files. I’m also going to try out 4 and 8Gbit NANDs for more storage.
The bug report of a glitch on IO pins when a voltage measurement is taken through the analog mux
An ongoing issue with back powering through IO pins connected when the Bus Pirate is unpowered. We’ve protected everything by using series resistors and let the clamping diodes do their thing, however this should eliminate it entirely
In a back powered situation the 100K resistors should limit the current to VUSB to 0.05mA max, 0.45mA for the whole board. A buffer was applied to every pin that interfaces with the outside world (VOUT_VREF/IO0…7).
Schedule
PCB out for production this week
Assembly on Monday
Board testing/check next week.
FCC testing by the 1st
Begin PCB production when FCC testing is started
Assembly on the 7th
Availability on the 8th
This optimal, and could get dragged by any number of things. We’re still waiting on the enclosure too.
Regarding using NAND instead of microSD, it seems like a good idea.
First probably stupid question; In your opinion, is it possible to replace a NAND without using a soldering iron? Maybe through a housing?
Second probably stupid question; What type of chips are used inside USB sticks?
Do you think they could be longer lasting and larger?
All good questions. The NAND is U(P)DFN package. I bet there is a chip socket for that, they tend to be expensive. In terms of making a removable stick though, that could be very well covered by patents, but sure it would be a fun project Maybe just a PCB with an edge card socket (like PCI)
The dies in SD cards (and those SD card ICs which seem like SD card dies bonded in a chip) consist of a bunch of NAND flash and a microcontroller. I’ve never seen one decapped, so I don’t know if there are multiple dies or it is all one piece of silicon.
So, I imagine it’s possible, because they have to rebuild the insert nut cavity (though we warned them repeatedly about it). The factory we used is a bit hard to deal with. I’m gonna just roll with it for now.
The first thing I did when I realized we needed the change was to find silicone sd card “dust covers” and other similar plugs. Less than ideal, but at least it’ll be plugged.
The NAND flash worked great from the Bus Pirate terminal, but I had all kinds of issues getting it to work as a USB disk. isr hardfaults while acquiring spinlock (atomic, RP2040 style). I spent hours debugging the spinlocks and fiddling with it yesterday.
Well, it turned out the TinyUSB MSC was trying to grab 2048 byte block sizes (NAND flash) with a 512 byte (SD card style) buffer and overflowing. Nothing spinlock related at all. Now it’s working well. It’s MUCH faster than an SD card too, even doing our own wear leveling and such.
REV10 is the “final” version, insofar as it’s in the case and all known (hardware) bugs are fixed. There could be tweaks and over the years, but I have no further updates to make at this time.
So far the plan has been to increase the price of each batch, until we end up somewhere we can consider selling to distributors.
The preview batch was $27 - same as v3. I think the first batch of rev10 will probably be around $37, the same price as v4. I need to recalculate the cost though, because we had to upgrade some diodes to expensive name-brand parts and added 9 more op-amps.
We ship from China. It depends on where it goes, we’re trying to add some new cheap airmail options. PostNL Airmail is somewhere from $7-10 these days.
Our shipper is adding the same logistics company that Aliexpress uses (Cai Niao). Hopefully that has fast and far reach at old-school prices ($3-$5). I think we have it for North American and Europe, but our shipper is slowly adding the rest of the world too.