Gå til innhold
  • Bli medlem
Støtt hjemmeautomasjon.no!

LoRa i hjemmeautomasjon?


aarpi3

Anbefalte innlegg

On 02/11/2019 at 12:56, Moskus said:

Hvilket bibliotek kan man bruke? Kan man bruke TheThingsNetwork direkte?

 

TheThingsNetwork biblioteket er vel kun for RN2483 radioen (LoRa stack i firmware).

Med TTGO eller andre RF95 (software stack) radio så bruker jeg lmic bib fra mcci.

 

Teensy bør fungere supert det, veldig mange som lager low power noder fra Pro Mini of RF95. 

Men 32 KB minne blir fort fult med software stack.

Mitt første lærings eksempel er dette https://github.com/aarpi3/ProMiniLoRa

 

Jeg prøver å lage en enkel node med ATTINY1604 (16KB)  og RAK811 (LoRa stack i firmware) - med disse så skal jo kommunikasjonen bare være UART med ulike AT kommandoer.

Bare synd jeg ikke KAN programmere ;)

 

 

Lenke til kommentar
Del på andre sider

24 minutter siden, aarpi3 skrev:

TheThingsNetwork biblioteket er vel kun for RN2483 radioen (LoRa stack i firmware).

Aha, alltid er det noe..

 

24 minutter siden, aarpi3 skrev:

Med TTGO eller andre RF95 (software stack) radio så bruker jeg lmic bib fra mcci.

OK, takk. :)

 

24 minutter siden, aarpi3 skrev:

Jeg prøver å lage en enkel node med ATTINY1604 (16KB)  og RAK811 (LoRa stack i firmware) - med disse så skal jo kommunikasjonen bare være UART med ulike AT kommandoer.

Jeg venter på SX1276 som visstnok skal gjøre det samme. Skal prøve meg på dette biblioteket når den ankommer.

 

24 minutter siden, aarpi3 skrev:

Bare synd jeg ikke KAN programmere ;)

Selve programmeringen er sjeldent det vanskelige, det er til en viss grad kun snakk om logikk. Det vanskelige er å vite om alle mulighetene (og begrensningene) man har...

 

Ellers merker jeg at jeg er bortskjemt med å ha brukt Visual Studio i over 15 år. Jeebas, Arduino-UIet er ikke bra. Jeg savner IntelliSense noe så sykt, så jeg får prøve meg på VS Code.

Lenke til kommentar
Del på andre sider

4 minutes ago, Moskus said:

Jeg venter på SX1276 som visstnok skal gjøre det samme. Skal prøve meg på dette biblioteket når den ankommer.

 

Ellers merker jeg at jeg er bortskjemt med å ha brukt Visual Studio i over 15 år. Jeebas, Arduino-UIet er ikke bra. Jeg savner IntelliSense noe så sykt, så jeg får prøve meg på VS Code.

 

 RF95 er vel strengt tatt kun en HopeRF lisensiert SX1276 og tror bib. til sandeepmistry er et LoRa bib ikke et LoRaWAN bib.

Jeg har bruket ulike lmic bib. men tror  https://github.com/mcci-catena/arduino-lmic er det mest oppdaterte (bare endre fra US til EU RF.)

 

Jeg har prøvd meg på VS Code med  Platformio og Pymaker (som for meg har vært veldig ustabil) men liker det simple med Arduino IDE ;)

 

  • Like 1
Lenke til kommentar
Del på andre sider

2 timer siden, aarpi3 skrev:

RF95 er vel strengt tatt kun en HopeRF lisensiert SX1276 og tror bib. til sandeepmistry er et LoRa bib ikke et LoRaWAN bib.

Jeg ser bokstavene som står, men det betyr ikke at jeg forstår hva det betyr.

Aaaaah, det er så mye nytt! ;)

 

2 timer siden, aarpi3 skrev:

liker det simple med Arduino IDE ;)

Notepad er også simpelt, men ikke det jeg foretrekker å programmere i... :P 

 

 

Lenke til kommentar
Del på andre sider

3 minutes ago, Moskus said:

Jeg ser bokstavene som står, men det betyr ikke at jeg forstår hva det betyr.

Aaaaah, det er så mye nytt! ;)

 

 

Alt med LoRa RF hardware er eid av Semtech som har designet SX12XX IC.
https://youtu.be/1KzjUlVjcPY?t=235

Det kan kjøpe fra HopeRF (RF95) , Murata, Microchip, RAK o.l. er vel strengt tatt ulike sammensetninger av Semtech sin SX12xx IC RF og noen med MCU i samme chip. De fleste legger på en firmware med LoRaWAN stacken og kommuniserer med UART. RF95 er en ren radio chip og en må derfor kjøre LoRaWAN stack i softwaren.

 

 

Så forretningsmodellen til Semtech er å ta lisens penger per chip, men har back-end åpen til å gjøre hva en vil. Sigfox er «motsatt» der chipen kan produseres fritt, men en må inn i SIGFOX back-end (med abn. cost).

 

LoRa er en radio protokoll (?) som kan brukes lokalt ala NRF24L01+ for å sende data uten kryptering eller adressat. LoRaWAN legger på kryptering og adressering pluss masse annet mot behov for en gateway og Network Server.   

  • Like 1
Lenke til kommentar
Del på andre sider

  • 2 uker senere...

 

Jeg har akkurat testet en The Things Node (https://no.farnell.com/the-things-network/ttn-nd-868/the-things-node-eu/dp/2675817?st=the things node) og hvis en ønsker en billig node for testing så er denne super. Åpen og alt kodes i Arduino IDE (basert på Sparkfun Pro Micro) med bibliotek fra TTN og fine komme i gang eksempler.

 

Jeg skal sette den opp som en action button i verkstedet for henting av metallspon - koblet mot Trello.

Lenke til kommentar
Del på andre sider

Just now, Moskus said:

Oi, det er jo dyrt selv om man skal tracke bare én bil også...

 

Ja, så spørs om man kommer billigere ut om man får til å lage noe selv da.

Ser bare mørkt på å programmere en som har lang batteritid, og bruker gps og akselerometer for å få hyppige rapporteringer når det er behov.

 

3 minutes ago, Moskus said:

 

Har sett den tidligere, men husker ikke hvorfor jeg gikk videre. Lurer på om det var pga. batteritiden.

Digital Matter var veldig lukrativ med den lange batteritiden, men kan lade masse for 1539,- pr enhet.

Lenke til kommentar
Del på andre sider

13 minutes ago, Moskus said:

Da kan det jo finnes billigere alternativer.

Første treff på Google: https://www.seeedstudio.com/LoRaWAN-GPS-Tracker-with-9-axis-accelerometer-LGT92-p-2922.html

 

Denne har også elfa i sitt sortiment.

https://www.elfadistrelec.no/en/lgt92-lorawan-gps-tracker-with-axis-accelerometer-seeed-studio-113990659/p/30163010?q=lorawan+gps&pos=1&origPos=1&origPageSize=10&track=true

 

Men i bil (som kan lade enheten) så tror jeg den adafruit  feather kan fungere fint. Ser ut som koden fremdeles blir vedlikeholdt:

https://github.com/Bjoerns-TB/ttn-gps-tracker

 

 

Lenke til kommentar
Del på andre sider

35 minutes ago, JohnMartin said:

 

Omsider fått pris fra Norsk leverandør, lillebakk.com

image.thumb.png.1cab4ccc654fe1c07d722b866e9946c9.png

Blir fort dyrt når man skal tracke 2 biler og 4 sykler ?

 

Det blir dyrt ja. Høyt IP enheter blir fort det. Har sett at samme sensoren (temp) er dobbelt så dyr i uteversjonen. Også sikter de seg vel ikke inn på privatmarkedet ...

 

BikeFinder (https://bikefinder.com/produkt/bikefinder/) koster 999,- for enheten og 566,- i abm. per år så det blir fort dyrt det og.

 

Endret av aarpi3
Lenke til kommentar
Del på andre sider

The Things Node har jeg også kjøpt fra Farnell, den er en fin liten dings men bruker ganske mye batteri. Trodde den hadde GPS også, men dengang ei...:)

 

Den Elfa-saken kjøpte jeg (og fikk i forrige uke) fra Aliexpress: https://www.aliexpress.com/item/33060770055.html?spm=a2g0s.9042311.0.0.6a014c4dSDJOAS 

Bittelitt billigere, men ikke mye.

 

Ellers er nok det billigste, som nevnt før, en TTGO T-Beam https://www.aliexpress.com/item/32967228739.html?spm=a2g0s.9042311.0.0.6a014c4dSDJOAS (med skjerm) eller https://www.aliexpress.com/item/32875743018.html?spm=a2g0o.detail.1000060.2.ba4b5dfcQNi0dT&gps-id=pcDetailBottomMoreThisSeller&scm=1007.13339.146401.0&scm_id=1007.13339.146401.0&scm-url=1007.13339.146401.0&pvid=a3c05dd9-bcff-4377-9dd5-2ad08f058edf (uten skjerm) med en passende boks rundt hvis man vil ha en billig tracker.

Lenke til kommentar
Del på andre sider

On 14/11/2019 at 14:38, mk1 black limited said:

The Things Node har jeg også kjøpt fra Farnell, den er en fin liten dings men bruker ganske mye batteri. Trodde den hadde GPS også, men dengang ei...:)

 

Ja The Things Node bruker tydligvis mye batteri, men noe av skylden er vist at radioen ikke sover som standard.

https://www.thethingsnetwork.org/forum/t/the-things-node-new-low-power-library-development/12521/21

  • Like 1
Lenke til kommentar
Del på andre sider

  • 4 uker senere...

@aarpi3 eller @mk1 black limited...

Jeg har fått en TTGO etter mye venting. Har noen av dere en fin sketch liggende (eller linker til en) som viser hvordan jeg får koblet meg til TTN og vist data på den innebygde skjermen?

 

Denne guiden fungerer, null problem, men skjermen er død (den virket frem til jeg publiserte min enkle sketch) og jeg skal jo på TTN.

 

Enkel kode:

Spoiler



//Libraries for OLED Display
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

//define the pins used by the LoRa transceiver module
#define SCK 5
#define MISO 19
#define MOSI 27
#define SS 18
#define RST 14
#define DIO0 26

//433E6 for Asia
//866E6 for Europe
//915E6 for North America
#define BAND 866E6

//OLED pins
#define OLED_SDA 4
#define OLED_SCL 15
#define OLED_RST 16
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels

//packet counter
int counter = 0;

Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RST);

void setup() {
  //initialize Serial Monitor
  Serial.begin(9600);
  Serial.println("Starting setup...");

  //reset OLED display via software
  pinMode(OLED_RST, OUTPUT);
  digitalWrite(OLED_RST, LOW);
  delay(20);
  digitalWrite(OLED_RST, HIGH);

  //initialize OLED
  Serial.print("Initialize OLED... ");
  Wire.begin(OLED_SDA, OLED_SCL);
  if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3c, false, false)) { // Address 0x3C for 128x32
    Serial.println(F("SSD1306 allocation failed"));
    //for (;;); // Don't proceed, loop forever
  }
  Serial.println("Done!");

  Serial.println("Writing to OLED");
  display.clearDisplay();
  display.setTextColor(WHITE);
  display.setTextSize(1);
  display.setCursor(0, 0);
  display.print("LORA SENDER ");
  display.display();

  Serial.println("Setup done...");
}

void loop() {
  // put your main code here, to run repeatedly:
  delay(1000);
  counter += 1;

  display.setCursor(0, 0);
  display.print("LORA SENDER ");
  display.setCursor(0, 1);
  display.print(counter);
  display.display();
  
  Serial.print("counter: ");
  Serial.println(counter);
}


 

 

 

Lenke til kommentar
Del på andre sider

 

Må se om jeg kan finne fram hva jeg har brukt i kveld.

Men mener å huske at jeg brukte U8g2 biblioteket for skjermen. Den randomnerdtutorials guiden er vel en LoRa ping-pong test ikke LoRaWAN eller TTN.

Det finnes fryktelig my info i tråden(e):

https://www.thethingsnetwork.org/forum/t/big-esp32-sx127x-topic-part-3/18436

 

 

 

 

  • Thanks 1
Lenke til kommentar
Del på andre sider

Jeg fant at hver versjon av brettet har ulik pinout, selvfølgelig. (Hvorfor pokker kan ikke ting være enkelt?!?)

 

Dette er riktig pinout for OLED-displayet for ver T3 1.6:

//OLED pins
#define OLED_SDA 21 
#define OLED_SCL 22 
#define OLED_RST 12 

 

Lenke til kommentar
Del på andre sider

på min TTGO T-Tbeam har jeg https://github.com/kizniche/ttgo-tbeam-ttn-tracker og på Lora32 (2.1 - v1.5) har jeg paxcounter  https://github.com/cyberman54/ESP32-Paxcounter.

Så strengt tatt ikke noen nyttige koder jeg har laget selv til TTGO korta. Og ja, dessverre så virker det som de har en hobby å endre pinout fra versjon til versjon.

 

I et av mine første enkle test LMIC eksempler fant jeg det under for OLED 

#include <U8x8lib.h>
U8X8_SSD1306_128X64_NONAME_HW_I2C display(/*rst*/ U8X8_PIN_NONE);

Men det kan se ut som TTGO/LilyGO bruker https://github.com/LilyGO/ESP32-OLED0.96-ssd1306

 

Muligens en ok kode å teste med:

https://github.com/osresearch/esp32-ttgo

Lenke til kommentar
Del på andre sider

OLED har jeg fått til, men skulle gjerne sett at det var enklere å koble til TTN. Jeg erkjenner at jeg har enorme hull i kunnskapen her, og at det sannsynligvis løser seg med tid, men dette er ganske frustrerende...

 

Med et STM32-kort var det kakestykke:

#include <LoRaWAN.h>
[...]

void setup()
{
  Serial.print("Setting up LoRaWAN... ");
  char appEui[] = "****";
  char appKey[] = "*******";
  char devEui[] = "****";
  
  LoRaWAN.begin(EU868);
  LoRaWAN.setSubBand(2);
  LoRaWAN.joinOTAA(appEui, appKey, devEui);
  Serial.println("Done!");
  Serial.print("LoRaWAN.joined: ");
  Serial.println(LoRaWAN.joined());
  
  [...]
}

void loop()
{
    [... delays here, calculations, etc]
    
    if (!LoRaWAN.busy() && LoRaWAN.joined())
    {
      Serial.print("Uploading data... ");
      uint32_t LpeqSend = Lpeq * 10;
      byte payload[2];
      payload[0] = highByte(LpeqSend);
      payload[1] = lowByte(LpeqSend);

      LoRaWAN.beginPacket();
      LoRaWAN.write(payload[0]);
      LoRaWAN.write(payload[1]);
      LoRaWAN.endPacket();
      Serial.println("Done!");
    }
}

 

 

... med TTGO vet jeg ikke engang hvor jeg skal begynne. Det er hauger av linker og diverse info, diskusjoner og i det hele tatt ganske uoversiktlig. Det er som om hele forumet her skulle vært samlet i én forbanna lang forumtråd (noe som det i begynnelsen var på diskusjon.no).

Lenke til kommentar
Del på andre sider

 

 

Med TTGO (og RFM95 baserte kort) så er ikke LoRaWAN stacken lagt inn på chipen. LoRaWAN koden må derfor være en del av programkoden.

 

Jeg har brukt https://github.com/mcci-catena/arduino-lmic (originalen https://github.com/matthijskooijman/arduino-lmic fungerer også).

For testing så kjør ttn-abp.ino eksempelet fra biblioteket. Endre koden med riktige node-nøkler og LoRa frekvens og pin mapping.

 

Ok videoer å spoole igjennom:

 

Lora End Node Libraries:

https://youtu.be/0dnnqToK28A 

 

 

OTAA and Uplink Demonstration:

https://youtu.be/d8q-hZLIf6I

 

ABP Demonstration With The Things Network

https://youtu.be/seq1cNgduVA

 

 

Endret av aarpi3
la til mere info
  • Like 1
Lenke til kommentar
Del på andre sider

Bli med i samtalen

Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.

Gjest
Skriv svar til emnet...

×   Du har limt inn tekst med formatering.   Lim inn uten formatering i stedet

  Du kan kun bruke opp til 75 smilefjes.

×   Lenken din har blitt bygget inn på siden automatisk.   Vis som en ordinær lenke i stedet

×   Tidligere tekst har blitt gjenopprettet.   Tøm tekstverktøy

×   Du kan ikke lime inn bilder direkte. Last opp eller legg inn bilder fra URL.

×
×
  • Opprett ny...

Viktig informasjon

Vi har plassert informasjonskapsler/cookies på din enhet for å gjøre denne siden bedre. Du kan justere dine innstillinger for informasjonskapsler, ellers vil vi anta at dette er ok for deg.