DoESLiverpool / somebody-should

A place to document practices on the wiki and collect issues/suggestions/to-do items for the physical space at DoES Liverpool
31 stars 11 forks source link

Pure MicroPython Things Network implementation #1309

Open goatchurchprime opened 4 years ago

goatchurchprime commented 4 years ago

We've got one of these monstrosities, which I have loaded micropython onto and can stream the GPS data out to MQTT https://www.hackster.io/news/the-ttgo-t-beam-an-esp32-lora-board-d44b08f18628

To turn this into a tracker we need to get a pure MicroPython version of the LoRa/ThingsNetwork protocol to work.

This only existed in the LoPy libraries or the arduino C++.

It looks like a pure MicroPython version exists.
https://github.com/adafruit/Adafruit_CircuitPython_TinyLoRa/blob/master/adafruit_tinylora/adafruit_tinylora_encryption.py

I'll need help from @ajlennon to get the whole encrypto-chain through to the TTN interface working.

The circuit-python thing seems to be using HopeRFM69W (code) while the LoPy and the TTGO are based on Semtech SX1276 (reference)

If we get this working, then:

(a) Will can have his automatic GPS -> googlespreadsheet updates every 15 minutes, and he has promised to write the docs/javascript code to remove the duplicates and turn the GPS positions into site positions and automatically generate his traveling salesman visit sheet of site visits.

(b) I can revamp the mitems hardware to use the bare ESP32s with the true low-power operation from a battery without the breakout board circuitry, using an adequate LoRa chip, and try deploying it in use cases.

ajlennon commented 3 years ago

This is coming back around. Need a non-proprietary implementation of TTN and mesh for MicroPython ideally