Прочитайте значения GPS и акселерометра и нажмите на удаленный сервер через протокол LORA.
Fipy 1.0 с Espressif ESP32

Дополнительная информация по адресу: https://pycom.io/wp-content/uploads/2018/08/fipyspecsheetaugust2017n2-1.pdf
Shield Pytrack для подключения Fipy Board:
Дополнительная информация по адресу: https://docs.pycom.io/datasheets/expansionboards/pytrack/
«Multitech Conduit Gateway» как Lora Gateway 
Более подробная информация по адресу: https://www.multitech.com/brands/multiconnect-conduit
В этом проекте я обращаю внимание на потребление низкой мощности и стабильности. Чтобы уменьшить энергопотребление, я использовал Cayenne LPP, Accelerometer Sleep - режимы пробуждения и закрываю ненужные функции Fipy. Сеть: ttn (The Things Network) https://www.thethishnetwork.org/
-На декодер полезной нагрузки не требуется для этого проекта, потому что я использовал библиотеку Cayennelpp. Если бы я использовал другие сценарии, я бы потребовал декодировать мое сообщение с помощью вкладки декодера полезной нагрузки в TTN.
Pytrack: python3 -m pip install PyTrack-NTU
Информация о плате Pycom: python3 -m pip install pycom
В этом проекте MicropyThon используется для ESP32. Более подробную информацию о Micro Python:
https://github.com/micropython/micropython
https://docs.micropython.org/en/latest/reference/packages.html
Cayennelpp использует для отправки данных в сеть TTN. Это легко, потому что только одного щелчка достаточно для шестигранного кода Decode благодаря Cayennelpp. Просто выберите опцию форматов полезной нагрузки >> Cayenne и автоматически декодировать. Также в стороне Python мы должны добавить эти функции в блок кода:
lpp.add_accelerometer(xsum,ysum,zsum)
lpp.add_analog_input(abs(gtotal-1))
lpp.add_analog_input(volt, channel = 114)
lpp.add_gps(c0, c1, 55)
lpp.send()

С другой стороны, нам нужно установить настройки LORA:
lora = LoRa(mode=LoRa.LORAWAN, region=LoRa.EU868,adr=False, tx_retries=0, device_class=LoRa.CLASS_A)
-Required keys can be found on TTN network >> Applications >> Dashboard
dev_addr = struct.unpack(">l", binascii.unhexlify('********'))[0]
nwk_swkey = binascii.unhexlify('***************')
app_swkey = binascii.unhexlify('****************')
lora.join(activation=LoRa.ABP, auth=(dev_addr, nwk_swkey, app_swkey))
s = socket.socket(socket.AF_LORA, socket.SOCK_RAW)
s.setsockopt(socket.SOL_LORA, socket.SO_DR, 0)
print ("LoRa Initialized")

Если вам нравится этот проект, пожалуйста, снимайтесь и цитируйте :)