Hoe moet je starten met de SARA R412M?

Help, ik kom er niet uit met de documentatie op de site.

Ik heb nodig een chip die GPS locatie (lat en lng) opvraagt en doorstuurt naar een door mij te bepalen URL. Een track and trace kastje.

Daarvoor heb ik aangeschaft de Sodaq Sara AFF R412M. En ik heb van T-mobile een SIM kaart gekregen voor het NB-iot netwerk. Ik heb het idee dat deze portal van mij verlangt dat ik de data naar t-mobile toe stuurt en dat het daarna wordt doorgestuurd naar mijn url / project.

Ik zag ook iets staan dat er maar 120 berichten per dag verstuurd mogen worden? Vreemd, want ik heb er ongeveer elke seconde 1 nodig, wil ik goede track and trace kunnen doen.

Het NB-iot_GPS voorbeeldscript zou een heel eind in de goede richting moeten zijn, zij het niet dat de GPS locatie niet verzonden wordt.

Vraag 1:

  • Heb ik de goede spullen voor een GPS-tracker?
  • Heb ik de goede sim-kaart?
  • Moet ik die sim nog activeren ergens? Zo ja, hoe? (Nergens iets aan documentatie over, wel een lijst met AT commando’s. Waar heb je die nog voor nodig?)
  • Belangrijkste vraag: Welk script heb ik nodig, om gps op te vragen en door te sturen naar een url?

Alvast hartelijk dank voor uw hulp!

Het is helaas niet mogelijk om direct vanaf het device (Sodaq Sara R412M) naar jouw eigen server te sturen. Je moet inderdaad de URL van jouw server als endpoint in het T-Mobile Portal invoeren.

Meer dan 120 berichten per dag sturen mag in principe niet. Hier staat het volgende van op hun website:

Om antwoord te geven op je vragen.

  1. Mits je de hierboven genoemde punten geen probleem vindt, ja.
  2. Ze bieden twee simkaarten aan, en voor beiden gelden dezelfde regels.
  3. Activatie gaat automatisch, wanneer er een bericht gestuurd wordt verschijnt deze in het T-Mobile Portal.
  4. Door sturen naar een URL kan dus niet.

Beste @bobsalm,

Ik zou beginnen met het proberen van een aantal losse voorbeelden om een beeld te krijgen bij de werking van de SARA module. Online is aardig wat info te vinden, maar ik ben zelf ook aardig wat daagjes bezig geweest met research. Hier een sequentie van AT-commando’s die gebruikt kunnen worden voor het opzetten van een verbinding en het versturen van een bericht:

Geef het soort netwerk aan. 8 voor NB-IOT.
AT+URAT=8
Verifiëer wat voor netwerk ingesteld staat. Deze zou 8 moeten returnen.
AT+URAT?
Enable errors. Niet noodzakelijk, wel handig.
AT+CMEE=2
Geef de connectie parameters aan. Gebruik deze voor t-mobile nb-iot.
AT+CGDCONT=1,“IP”,“cdp.iot.t-mobile.nl”
Verifiëer de connectie parameters.
AT+CGDCONT?
Enable de antenne.
AT+CFUN=1
Registreet met het netwerk. 20416 is standaard voor t-mobile. Het kan even duren voordat deze klaar is.
AT+COPS=1,2,“20416”
Verifiëer de signaalsterkte. 0-31 is goed. 99 is geen verbinding.
AT+CSQ
Set de netwerk registratie status
AT+CEREG=2
Verifieer deze. Probeer AT+CEREG=2 opnieuw als AT+CEREG? geen 2 returnt maar 0 of 5.
AT+CEREG?
Check het IP adres van je device.
AT+CGPADDR
Open een nieuwe socket.
AT+USOCR=17
Verstuur je data naar de server. IP is van t-mobile, is evt te vervangen voor je eigen server. 15683 is de port. 4 het aantal bytes. “Data” de werkelijke data die je wilt versturen. Zorg ervoor dat de grootte hiervan overeenkomt met de grote die je ervoor aangeeft!
AT+USOST=0,“172.27.131.100”,15683,4,“Data”
Sluit de socket (aka verbinding verbroken)
AT+USOCL=0

Dit begrijpen heeft mij aardig wat uurtjes lezen in datasheets gekost. Mocht je hiertoe bereid zijn is dit het zeker waard. Simpelweg code overnemen en aanpassen naar je eigen toepassing was voor mij geen optie. Daar is de stof toch net even iets te pittig voor.

Deze AT commando’s zijn te versturen via de seriële monitor in Arduino. Zorg er wel voor dat het serial_passthrough voorbeeld op het SODAQ bordje staat.

Om concreet antwoord te geven op uw vragen:
-Ik heb het idee dat deze portal van mij verlangt dat ik de data naar t-mobile toe stuurt en dat het daarna wordt doorgestuurd naar mijn url / project.
Voor zover ik weet gaat alle data indd via de servers van T-mobile
-Ik zag ook iets staan dat er maar 120 berichten per dag verstuurd mogen worden? Vreemd, want ik heb er ongeveer elke seconde 1 nodig, wil ik goede track and trace kunnen doen.
_Hier durf ik helaas geen antwoord op te geven, zelf werk ik aan een toepassing van 1 bericht per dag. _

  • Heb ik de goede spullen voor een GPS-tracker?
    Lijkt mij wel, met enkel het sodaq bordje en de juiste simkaart kunt u al data versturen.
  • Heb ik de goede sim-kaart?
    Ook dit lijkt mij wel. Only one way to find out for sure, gewoon proberen of het werkt met wat AT commando’s
  • Moet ik die sim nog activeren ergens? Zo ja, hoe? (Nergens iets aan documentatie over, wel een lijst met AT commando’s. Waar heb je die nog voor nodig?)
    Mijn simkaart van t-mobile was van tevoren geactiveerd, lijkt me dat dit standaard is. AT commando’s is de manier waarop de microcontroller de SARA chip kan aansturen. Zie het voorbeeldje hierboven waarin deze handmatig verstuurd kunnen worden. Uiteindelijk wordt dit automatisch door de microcontroller gedaan met een stukje code.
  • Belangrijkste vraag: Welk script heb ik nodig, om gps op te vragen en door te sturen naar een url?
    Ik ben zelf nog niet geheel in de GPS werking gedoken, ik zal binnenkort even kijken of ik wijs wordt uit de voorbeeld codes

Dit is vooralsnog een vrij oppervlakkig antwoord. Mocht u er niet uitkomen dan kijk ik graag waarbij ik kan helpen. Hoeveel ervaring heeft u met bijvoorbeeld het programmeren van een Arduino en sensoren? Zelf ben ik 3e-jaars student Elektrotechniek, ook voor mij duurde het even voordat het logisch werd. Als u aan de slag wilt met NB-IOT wil ik u meegeven dat u hier even goed de tijd voor moet nemen.

Succes!

~Michael

Ha Michiel,

Dank je wel voor je uitgebreide antwoord! Helpt wel iets verder

Ik heb inderdaad vaker met AT commando’s gewerkt, maar liep vast in een script op GPRS via een arduino Uno. Daarmee kan je iig wel direct urls aanroepen waarin je de lat en lng kan meegeven.

Als het uiteindelijk via een project in de t-mobile portal moet prima. Daarin kan je immers ook een endpoint aangeven.

Er is van Sodaq sada een library nbiot_gps die doet vermoeden dat hij alles doet wat nodig is, alleen kan je daar nergens in kwijt wat mijn project is bij t-mobile. Je zou iets van een endpoint, API keys verwachten, maar niks. Wel geef je het tmobile netwerk op. Zodra ik dat script draai, krijg ik de melding dat verbinding niet mogelijk is. Waar dat op blijft steken, geen idee.

Weet je trouwens of die 120 berichten per dag te upgraden is?

@bobsalm, ik duik even in die nbiot_gps library. Kijken of ik toevallig iets zie.

Wat betreft het limiet van 120 berichten per dag. Ik gok dat dit een preventieve maatregel is van T-mobile om te voorkomen dat hun servers plat komen te liggen. Wellicht dat er met T-mobile een regeling te treffen is. Het lijkt mij dat ze tegen eventuele extra betalen wel een soort whitelist kunnen maken voor gebruikers die meer data willen versturen. NB-IOT is erg nieuw, niks staat nog vast. Ik zou gewoon bij hun met de deur in huis vallen en vragen naar de mogelijkheden.

Ik gebruik nu zelf een NB-IOT kaartje van Vodafone, simpelweg omdat het bereik beter is bij mij. Na aardig wat testen ben ik nog niet tegen een limiet aangelopen. Geen idee of vodafone ook een limiet handteert. Wellicht de moeite waard om even naar te kijken.

Mocht ik wat te weten komen over de GPS library dan meld ik me!

~Michael

Ik zie het nbIOT_GPS.c bestandje tussen de voorbeelden staan. Deze Lijkt mij indd wel potentie te hebben.
Wat mij opvalt is dat ze hier 1 regel code gebruiken om de verbinding tot stand te brengen:
(nbiot.connect(“cdp.iot.t-mobile.nl”, “172.27.131.100”, “20416”))
Dit maakt eventueel debuggen naar de oorzaak enorm omslachtig. Ik zou zelf een verbinding op proberen te stellen met AT commando’s. Als dit werkt dan is de SIM kaart in ieder geval goed. Op die manier kun je langzaam alle oorzaken uitsluiten.
Op het moment kan de oorzaak van alles zijn, je kunt vrij weinig met zo’n generieke foutmelding. Libraries zijn handig, mits ze in 1 keer werken.

~Michael

Fantastisch ik ga at commando’s proberen