Hacker News new | ask | show | jobs
by packetlost 1259 days ago
I'm not sure you could flash over USB either without significant work. There's no UART <-> USB device on the Ox64, so you need to use an external one connected to some GPIO pins. You could maybe build a DFU mode yourself, but I'm somewhat skeptical it would work (though it might be possible, there's 3 cores in the thing). Despite there being not one, but TWO USB ports on the Ox64, neither are used for flashing. The micro USB type B connector is only used for power delivery and the USB-c is primarily intended for being a host device, ie. for plugging in a camera module.

Edit: to clarify, there's a bug in the bootrom that prevents the initialization of the USB device. Newer revisions of the Ox64 may fix this.

1 comments

Then:

- how do you run anything with that board if you cannot flash anything, I don't understand?

- I cannot use it as usb keyboard controller because of a bootrom bug? (power/data via usb-c)

Now I am confused.

You can flash it, but you need to use GPIO pins and UART to do so.

The bootrom bug only prevents you from flashing via the on-board USB-c port. You can use a separate USB <-> UART device plugged into GPIO pins to boot/flash.

How such a massive bug could slip thru?

This is weird.

If resellers with stocks know that, they will send back the boards and ask for a refund.

I'm told it's a bug in the chip from the upstream supplier (BL808 by Bouffalo Lab), so there's not much they can do. IMO it's not a huge deal, and like I said, you can both flash with UART over GPIO pins or implement a bootloader yourself
I would need a USB<->UART converter and do some soldering, then fix the bootloader to re-enable the USB-C...

meh.

I mean, you'd need to solder headers onto the board, but otherwise not really. There's JTAG headers pre-soldered that might work too, but I'd have to look at which UART/CPU they're hooked up to.
You don't need to solder anything.
You just flash it with your hardware programmer like the rest of the industry. It is not a massive bug at all.