Lisez les valeurs GPS et accéléromètres et poussez-les vers le serveur distant via le protocole LORA.
FIPY 1.0 avec ESPRESSIF ESP32

Plus d'informations sur: https://pycom.io/wp-content/uploads/2018/08/fipspecsheetaugust2017n2-1.pdf
Pytrack Shield pour connecter la carte FIPY:
Plus d'informations sur: https://docs.pycom.io/datasheets/expansionboards/pytrack/
"Multitech Conduit Gateway" comme Lora Gateway 
Plus d'informations sur: https://www.multitech.com/brands/multiconnect-conduit
Dans ce projet, je prête attention à consommer une faible puissance et une stabilité. Pour diminuer la consommation d'énergie, j'ai utilisé le Cayenne LPP, le sommeil accéléromètre - réveillez les modes et fermez les fonctions inutiles de FIPY. Réseau: TTN (The Things Network) https://www.thethingsnetwork.org/
-Non décodeur de charge utile n'est requis pour ce projet car j'ai utilisé la bibliothèque Cayennelpp. Si j'avais utilisé d'autres scénarios, j'aurais besoin de décoder mon message avec l'onglet Decodeur de charge utile dans le TTN.
Pytrack: python3 -m pip install PyTrack-NTU
Informations sur la carte PYCOM: python3 -m pip install pycom
Dans ce projet, Micropython est utilisé pour ESP32. Plus d'informations concernant le micro python:
https://github.com/micropython/micropython
https://docs.micropython.org/en/latest/reference/packages.html
Cayennelpp utilise pour envoyer les données au réseau TTN. C'est facile car un seul clic est suffisant pour le code hexadécimal du décodage grâce à Cayennelpp. Sélectionnez simplement les formats de charge utile de l'option >> Cayenne et décodez automatiquement. Également du côté Python, nous devons ajouter ces fonctions dans le bloc de code:
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()

D'un autre côté, nous devons définir les paramètres de 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")

Si vous aimez ce projet, veuillez jouer et citer :)