Firmware Updates Through Built In USB

Good morning ladies and gents.

It seems quite unusual why a hypothetical light with a ANDURIL interface that is firmware updatable cannot be updated through built in USB.

I mean, all the requirements are there, computer interface (i.e.USB,) writable firmware, etc.

The USB port is on the driver . No? The chip containing the firmware is on the driver, No?

It makes so much sense to be able to connect the light to a computer via USB, run a program, be it a web browser, a dedicated program, or just Putty and flash it.

The technology seems to all be there.

If anyone is able to figure out how to do this, it would no doubt be a game changer for the flashlight industry.

Either you’d need to take a ser2USB chip or a MCU with built-in USB support. Neither is common in flashlights, maybe due to space requirements.

The MCU used in these drivers does not speak USB and the USB port is connected to a dedicated charge controller and not to the MCU. Basically there are two independent circuits in the driver. The driver needs at least a USB to serial converter and a bootloader on the MCU that allows flashing via serial interface. Otherwise it also requires an Atmel ISP programmer. There are MCUs that support flashing via USB, but Anduril won’t run on them and they are more expensive.

This headlamp does it: https://www.lobeams.com/
I’m not sure of the specifics or what chip it uses.

I think USB flashable firmware could be done with something like GitHub - micronucleus/micronucleus: ATTiny usb bootloader with a strong emphasis on bootloader compactness. which supports the ATTint85

Guessing this would need more components between the chip and USB but don’t see why it wouldn’t be possible for something like Anduril in the future.

Huh, that headlamp has such neat features, nice! Do you know of any other flashlight manufacturers that also make a light like this, but with a replaceable battery?

The ATtiny85 with Anduril is already 99% full, no space for a bootloader. Currently some code of Anduril/FSM is still heavily specialized for a specific hardware. With a better abstraction it would be easier to port it to different MCUs and also integrate a bootloader.

There were a couple of similar ones mentioned in this thread on Reddit that may be what you’re after.

True, though some Anduril lights use the 16KB ATTiny1634 now, which has twice the space. Still, not sure if it’d be feasible with current chips but we’re getting closer and closer.

I see no reason to waste space and money on additional component to enable FW burning. It might be a good idea to place the MCU at more accessible position so it will be easier to connect the clip. All my homemade lights have an accessible MCU so it is very easy to flash a new FW.

Easier to flash MCUs by any means would be great. Driver boards that are accessible without soldering is one step (like the Q8), pogo pins connections on the spring side is even better. Though I wish there was a single standard for this! I have an Emisar one and don’t want to have to buy or make one for other manufacturers.

USB has the potential to allow many more people to update firmware as no extra tools need to be bought. That could mean the default is that lights are future proof and you’d know that something advertised bas “Anduril 4 + USB” could be flashed without having to wait for someone else to post a teardown review.

More people also means more developers, which means more innovation. People could even make UI builders and tools like the Arduino’s Scratch, allowing flashlights to be used as an educational tool.

It’s all hypothetical speculation at the moment but if the BOM is minimal then I hope it’s something that happens.

…. coming soon…. flashlight firmware update with the latest security patch…. need help, i bricked my flashlight… my flashlight wont boot … :smiley: