A USB dongle built by Matt which receives UKHASnet packets and relays them to the ukhas.net backend server using an inbuilt wifi client device.
Binaries here (most recent first)
Stable (for use with v1.40 ESP SDK firmware)
19/03/17 - e238e48
14/04/16 - d388884
30/03/16 - 38f7419
$ git submodule update --init
$ maketo build the firmware
The easiest way to flash the firmware is via DFU.
$ dfu-util --list
$ dfu-util -a 0 -s 0x08000000 -d 0483:df11 -D path/to/firmware.bin
Connect to the USB serial terminal:
screen /dev/tty.usbmodem301 (or use whatever terminal you wish).
You can type
help to get a list of commands.
esp originto see the current node name.
esp origin MYNODEto set the node name.
esp apto see the current SSID and password.
esp ap MYSSID MYPASSto set the SSID and password.
The green LED will be solid on when the wifi is associated.
You may need to reset the ESP a couple of times after joining a new wifi network:
esp ipto see the node's IP address
show packetto have received packets printed to the serial terminal
Packet: 2kV2.5T017.3H58[MB1,WIGHTLINK] (-80dBm)
show noneto revert this change.
verto see the current dongle firmware version (first 7 chars of the git commit hash - e.g.
-dirtyappended if you're running a test firmware, e.g.
esp ver to see the current ESP SDK version number.
The dongle can be used to put the ESP into bootloader mode and pass through the serial terminal so that you can just point esptool at it.
esp pt boot, then wait until
ESP entering bootloader… doneappears.
You will need to reboot (unplug/plug) the dongle to return to normal operation.
This is obsolete, use a newer version
For dongle firmwares up to and including
This is the most recent ESP firmware that retains support for 4MBit (512k) flash ESP8266 devices, which most (all?) of the dongles are. (Check that irom0text.bin is 240kB or less - it's around 350kB in later firmwares).
You need to flash:
If using esptool, use:
python esptool.py --port /dev/tty.usbmodem301 write_flash 0 at/noboot/eagle.flash.bin 0x40000 at/noboot/eagle.irom0text.bin 0x3e000 at/blank.bin 0x7e000 at/blank.bin 0x7c000 at/esp_init_data_default.bin
Some git sha1s and the corresponding change log is here, in chronological order (most recent last).
e3444efis the last firmware to use the v0.9.2.2 ESP firmware
ed39b22onwards requires ESP SDK version 1.40 (AT version 0.50)
38f7419adds temperature/humidity reporting
d388884fixes firmware hanging when the HTU21D temperature/humidity sensor is not fitted
3813886RFM timeout, reboot if no packets received in a minute. 2) Clear ESP receive buffer only immediately before we send. 3) Check for SEND OK as termination criterion for CIPSEND. 4) 16 mailbox items instead of 8
1ab59f8Adds age reporting of packets when uploaded, to enable server to correct for the time delay between dongle receiving the packet and it getting POST'ed to the server
2f175a3Each packet is retried ESP_RETRIES_MAX (=3) times, then discarded
147c245Packet age bug fixed. Mempool alloc fail now discards oldest mail in queue.
e238e48Updated chibi to latest stable_3.0.x