Arduino -basierte Board für einen atmosphärischen Sensor BME280 Lorawan -Knoten. Der Lora -Knoten misst den barometrischen Druck, die Luftfeuchtigkeit und die Temperatur alle 5 Minuten. Nach den Messungen geht das Attiny85 in den Schlafmodus und wird vom Wachhund -Timer geweckt. Das RFM -Modul sendet die Werte mit Aktivierung durch Personalisierung (ABP) einem festen Ausbreitungsfaktor und einem der vier zufälligen Kanäle an das TTN -Backend. Dieses Projekt basiert auf dem Tinylora-Bme280-Projekt [1].
| Ref | Wert | Beschreibung |
|---|---|---|
| BT1 | 3034 | Batteriezellhalter |
| BT1 | CR2032 | Batteriezelle CR2032 (210 - 230 mAh) |
| U1 | BME280 | Sparkfun Bme280 |
| U2 | ATTINY85-20SU | Atmel 8-Bit AVR-Mikrocontroller |
| U3 | RFM95W-868S2 | Transceiver -Modul mit niedriger Leistung |
| - - | Draht | Draht für die Antenne, 8,6 cm |
Der Atmega -Mikroprozessor benötigt einen Arduino -Bootloader. Um einen Bootloader in den leeren Chip zu verbrennen, siehe [2]
| ATTINY85 | RFM95 | BME280 |
|---|---|---|
| PB3 | CS (Slave Select) | |
| PB4 | NSS (Sklavenauswahl) | |
| PB2 | Sck | Sck |
| Pb1 (do) | Mosi | SDI |
| Pb0 (di) | Miso | SDO |
Die Arduino -IDE muss ordnungsgemäß installiert werden.
Fügen Sie Ihnen die Bibliotheken hinzu. IDE:
Installieren Sie den ATTINY BAORD -Manager
Mehrere Manager können mit einem Komma getrennt werden.
Installieren Sie Tinylora-Bme280 v1.1
Offene Beispiele> Tinylora-Bme280_V1.1-Master> attiny_lora_bme280
Brennen Sie die Skizze mit einem Arduino Uno an den Chip [2]
Die Nutzlast wird als Byte -Array codiert.
| Byte | Inhalt |
|---|---|
| 0..1 | Temperatur (*100) |
| 2..3 | Luftfeuchtigkeit (*100) |
| 4..8 | Barometriedruck |
Um die Werte zu dekodieren, fügen Sie diesen Code in der TTM -Konsole als Decoder unter Paloadformaten hinzu.
function Decoder(bytes, port) {
temp = ((bytes[0]) << 8)
+ ((bytes[1]));
hum = ((bytes[2]) << 8)
+ ((bytes[3]));
pres = ((bytes[4]) << 24)
+ ((bytes[5]) << 16)
+ ((bytes[6]) << 8)
+ ((bytes[7]));
return {
pressure: ( pres / 100 ),
temperature: ( temp / 100 ),
humidity: ( hum / 100 )
};
}
Lizenz CC nach 4.0 - Zuschreibung 4.0 International