2024-07-14 21:56:50 +12:00
2024-07-14 19:54:34 +12:00
2024-07-14 20:34:01 +12:00
2024-07-14 20:35:14 +12:00
2024-07-14 21:56:50 +12:00
2024-07-14 19:10:40 +12:00

RNode Flasher

A work-in-progress web based firmware flasher for Reticulum / RNode_Firmware.

  • It is written in javascript and uses the Web Serial APIs.
  • It supports putting a device into DFU mode.
  • It supports flashing application firmware from a zip file.

At this time, it does not support flashing bootloaders or softdevices.

How does it work?

I wanted something simple, for flashing RNode firmware to a nRF52 RAK4631 in a web browser.

So, I spent a bit of time working through the source code of adafruit-nrfutil and wrote a javascript implementation of dfu_transport_serial.py

Generally, you would use the following command to flash a firmware.zip to your device;

adafruit-nrfutil dfu serial --package firmware.zip -p /dev/cu.usbmodem14401 -b 115200 -t 1200

The nrf52_dfu_flasher.js in this project implements a javascript, web based version of the above command.

There was an existing package called pc-nrf-dfu-js, however this repo had been archived and didn't appear to support the latest DFU protocol.

How to use it?

  • Open index.html in your web browser.
  • Put your device into DFU mode.
  • Select a firmware file and click flash.
  • Your device should reboot into the new firmware.

Note: At this time, firmware hashes for RNode are not configured. This is next on the todo list.

Device Support

The following list of devices are supported:

  • RAK4631

TODO

  • support configuring eeprom with device signatures and firmware hashes
  • support configuring tnc mode, also useful for the transport node firmware
  • support other devices, such as ESP32/Heltec V3
  • support flashing existing firmware files from api

License

MIT

References

Description
No description provided
Readme MIT 255 MiB
Languages
HTML 65.2%
JavaScript 34.8%