jul 082019
 

Het leek heel gemakkelijk, was het ook voor wat betreft de eerste demo, maar stap 2 was een stuk complexer.

Ik had een aantal voorbeelden gezien van, wat mij betreft, enorm indrukwekkende demonstraties van de kracht van de ESP32 microprocessor. Je blijkt er een heel kleine camera op aan te kunnen sluiten (daar zijn de meeste mensen niet meer zo vreselijk van onder de indruk). Maar Espressif (de bedenkers van de chip) heeft nu ook een demo/test board gemaakt, genaamd de ESP-EYE, met niet alleen de camera voorgeïnstalleerd, maar ook spraak- en gezichtsherkenning alvast voorgeprogrammeerd. Je kunt dus meteen aan de slag!

Als je de video hierboven bekeken hebt voordat je verder las, dan weet je waarom dat indrukwekkend is: het is namelijk niet zo dat de ESP-EYE stiekumpjes gebruik maakt van een online webservice, dus bv Google of Amazon die al het werk uit handen neemt. Nee, de ESP-EYE werkt volledig zelfstandig. Dus geen data die over het internet naar de een of andere, meer of minder betrouwbare aanbieder gaat. Alles gebeurt 100% op het boardje zelf. Dat wilde ik zelf uitproberen, dus heb ik er eentje besteld bij AliExpress. Ik heb er overigens zelf €22,65 voor betaald, ik zie dat hij nu iets boven de 26 euro kost. Ik verdien niets aan de link of het verwijzen naar AliExpress, shop gerust dus even rond voor de beste deal. Hieronder zie je wat foto’s van de verpakking, de ESP-EYE met als referentie voor het formaat een 5 eurocent muntje ernaast. Het ding is klein!

De video hierboven van Luca Dentella was heel handig en behulpzaam, hij laat zien hoe de ESP-EYE zo uit het doosje werkt, dat lukte mij ook. Maar de instructies zorgden ook voor de nodige problemen toen ik hem letterlijk probeerde te volgen bij het aanpassen van de standaardcode.

Lees verder….

Deel dit bericht:
jun 182019
 

[UPDATE: zie dit bericht (in het Engels) over waar de gateway écht bleek te staan. Het was geen 75 km ver]

Vanochtend mocht de TTN-mapper node weer eens mee op pad. Ik moest met de auto naar Nijmegen – Arnhem – Veenendaal – Deurne. Helaas blijkt de TTN-mapper nog steeds heel accuraat voor het traject naar Nijmegen en dus kwam er heel weinig (bijna niets) aan van de pakketjes die verstuurd werden. Bijna niets, want net bij/voorbij de Rips of all places, zag ik op mijn telefoon dat er 2 pakketjes doorgekomen waren. Dat vond ik verrassend omdat ik niet wist dat er daar een gateway in de buurt stond.

Dat is ook niet zo, nakijken op TTN-mapper en in de Google sheet (die alle door de backend ontvangen data ook opslaat) leerde namelijk dat het een gateway is (zou moeten zijn) van het RIVM in Bilthoven. En dat was/is zo’n 75 km (!!) van de Rips vandaan.

Lees verder….

Deel dit bericht:
jun 062019
 

Ik wilde eigenlijk een blogpost maken over XOD, een interessante grafische omgeving voor het programmeren van Arduino. Hier kun je een uitlegfilmpje over XOD bekijken. Maar uiteindelijk blijkt dat alleen geschikt te zijn voor Arduino. En áls je op zoek bent naar iets anders dan de standaard Arduino IDE en je werkt ook met bv ESP32 of ESP8266 werkt, dan is PlatformIO een betere oplossing.

Andreas Spiess heeft er een mooi introductiefilmpje over gemaakt (zie hierboven) waarin hij laat zien hoe hij PlatformIO gebruik voor een Arduino UNO en daarna voor een ESP32. Hij demonstreert daarbij ook de mogelijkheid om per project de libraries die je gebruikt op te slaan of hoe een project met 26 libraries daar handig gebruik van kan maken.

Zelf heb ik er tot nu toe ook alleen gebruik van gemaakt in combinatie met code die geschreven was voor PlatformIO, nog niet vanaf scratch.

Je kunt bestaande Arduino projecten importeren, maar ook dan moet je het .INO bestand zelf nog even omzetten naar main.cpp en als je een project hebt met de nodige libraries zul je ook die verwijzingen eenmalig moeten opschonen.

In het geval van het project dat ik importeerde (de TTN-mapper die je hier kunt vinden) is een bonus dat de ook de Markup bestanden (de .md bestanden) rechtstreeks in de editor kunt bijwerken. De Readme.md van dat project heeft nu een lijstje van libraries die je nodig hebt, met links en in één geval de opmerking om vooral maar de laatste versie te gebruiken omdat de Arduino IDE anders in de war raakt. Dat probleem ben ik kwijt bij een overstap naar PlatformIO. Nadeel is dan weer dat de oorspronkelijke auteur van de code ‘gewoon’ de Arduino IDE gebruikt (ik gebruik een “fork” in Github). Het naar hem terug aanleveren van voorstellen voor wijzigingen in de code is een stuk ingewikkelder als ik overstap naar PlatformIO.

Deel dit bericht:
jun 022019
 

Deze moet nog even op het TODO lijstje, dit weekend veel gedaan, maar nog niet zelf kunnen bouwen. Maar de beschrijving van Andreas is (zoals altijd) meer dan duidelijk genoeg.

Het idee: maak een TTN-tracker waarmee je kijkt welke gateways je kunt bereiken en in plaatst van met de tracker te gaan lopen/rijden bevestiging je hem op een vaste plek in de hoop dat af en toe in verloop van tijd ook andere gateways bereikt worden (omdat het signaal toevallig op de juiste manier in de Troposfeer of Ionosfeer weerkaatst worden. Andreas beschrijft de configuratie van de node en de manier waarop je met Node-Red een systeem kunt bouwen dat je automatisch een bericht stuurt als er een gateway gevonden wordt die (bv) > 100km ver weg staat.

Leuk project, niet persé nuttig, maar wel leuk. 🙂

Deel dit bericht:
feb 052019
 

In een tijd van 4K TV’s en grote beeldschermen op laptops zijn RGB LCD matrixschermen eigenlijk iets waar je waarschijnlijk zomaar elke dag mee in aanraking zult komen.

En hoewel ik wel al eens met een dot matrix module geëxperimenteerd had, kende ik het grotere (16×32 pixels) paneel met RGB LEDs dat min jongste zoon dit jaar voor zijn verjaardag vroeg nog niet. Hij had er zelf al een pagina met informatie bij Adafruit voor gevonden, dus hebben we de gok genomen (wat daar stond zag er niet onmogelijk uit) en kreeg hij een exemplaar.

Ik zal niet linken naar de site waar we zijn exemplaar gekocht hebben (hij leest dit bericht waarschijnlijk ook), het was een Nederlandse site, je moet even goed rondkijken want sommige webshop gooien er een flinke marge bovenop. Vind je het niet erg om lang te wachten, dan kun je uiteraard ook op AliExpress terecht. Let er dan goed op dat je een P3 paneel hebt (zoals deze), met LEDs van 3mm. Er worden er ook verkocht met LEDs van 4mm of 5mm grootte. Die zijn goedkoper, maar als je zo’n klein schermpje hebt (en niet van plan bent een display te bouwen van een paar meter bij een paar meter) dan wil je de kleinere hebben (of in ieder geval appels met appels vergelijken).

Hij had wat hulp nodig bij de eerste setup. Het paneel heeft een eigen 5V voeding nodig en de panelen zijn niet van bv zoiets als een micro-USB aansluiting voorzien. Daarnaast hadden we (tja, ik zei al dat ik er geen ervaring mee had) niet de bijbehorende Arduino shield erbij besteld. En dat betekende dat we de connector met 16 kabels met Dupont connector moesten verbinden met de Arduino.

Maar goed, ook dat ging eigenlijk probleemloos. Het installeren van de Arduino client op zijn laptop was eigenlijk nog het meeste werk omdat de Arduino downloadsite wat problemen leek te hebben. Maar na een uurtje hadden we het geheel aan de praat.

Lees verder….

Deel dit bericht:
jan 212019
 

Ik zag dat ik er een tijdje geleden wel al een tweet over gestuurd had, maar dat ik er nog geen blogpost over gemaakt had. Ik heb het over Thonny, een open source, gratis ontwikkelomgeving (IDE) voor Python en (micro-)Python.

De tweet stuurde ik toen ik zag dat de omgeving standaardonderdeel zou worden van de Linuxversie die voor de Raspberry Pi gemaakt wordt, maar dit weekend ontdekte ik dat je hem ook voor microPython kunt gebruiken. En dat is handig in combinatie met bijvoorbeeld een ESP8266 of een ESP32. Vooral ook omdat Thonny dan ook het uploaden en downloaden van de bestanden voor zijn rekening neemt en een REPL-console ingebouwd heeft.

Het flashen / updaten van de firmware op de ESP8266/ESP32 vanuit de tool heb ik niet gedaan/geprobeerd, daarvoor vertrouw ik liever op esptool.py. Voor de ESP8266 die ik bij de hand had gebruikte ik de kale microPython versie  op de EPS32 heb ik de Loboris-firmware gezet. Die heeft als voordeel dat er al heel wat modulen bijgevoegd zijn.

Voorlopig vind ik de combinatie best fijn. MicroPython op de ESP32 chips blijft toch hier en daar nog wat behelpen. Vooral omdat een van de extra features ten opzichte van de ESP8266, de ondersteuning voor BLE, nog niet beschikbaar is binnen microPython. En dan is de keuze voor terugkeer naar bv de Arduino IDE in de meeste gevallen het meest voor de hand liggend.

Wil je kennismaken met Python, dan hoef je niet eens zaken te installeren. Dan zou ik eerst eens bij Repl.it kijken. Zie ook de berichten op dit blog daarover.

 

 

Deel dit bericht:
dec 122018
 

Gisteren heb ik de TTGO T-Beam meegenomen toen ik met de trein op en neer van Deurne naar Apeldoorn gereisd ben. Gewoon in mijn tas, mijn jaszak, naast de laptop op het tafeltje terwijl ik zat te werken. Echt een wereld van verschil ten opzichte van de eerste keer. Dit maakt het veel haalbaarder om van tijd tot tijd een dagje de status van het netwerk te testen. En omdat de tracker redelijk netjes is voor wat betreft het aantal berichten dat verstuurd wordt (als de trein/auto/ik niet beweegt worden er veel minder berichten verstuurd dan bij beweging) kan dat ook prima.

Gisteren had ik, zoals inmiddels gebruikelijk een reserve LiPo batterij bij me, maar ik heb hem niet nodig gehad. De T-Beam wist het vol te houden gedurende de heenreis (ongeveer 2 uur en 15 minuten van deur tot deur) en de terugreis (idem). Toen ik in Apeldoorn op mijn bestemming aankwam heb ik de T-Beam uitgezet (handig dat fysieke schakelaartje dat al op het board zit!) want voor de tijd die ik ín het gebouw doorbracht had tracken niet echt veel zin.

Op het kaartje hierboven zie je dat ook nu er best veel plekken zijn waar je vanuit de trein geen ontvangst hebt, landelijke dekking is er dus nu nog lang niet (ik ben benieuwd wanneer de dag komt dat ik kan zeggen “en nu wel!”). Maar in de steden gaat het al heel goed. Als we inzoomen (klik op een afbeelding voor grotere versie).

Lees verder….

Deel dit bericht:
nov 272018
 

Na de succesvolle test afgelopen zaterdag en de optimalisaties in de code op zondag (zie dit bericht) mocht de TTGO T-Beam gisteren en vandaag met me mee naar het werk.

Niet in de auto, maar in mijn rugzak in de bus en trein. Dat was gisteren (maandag) tamelijk teleurstellend. Behalve mijn eigen gateway kwam ik, totdat ik in Nijmegen was, onderweg geen enkele actieve gateway tegen. Mijn reis ging van Deurne met de bus naar Venray (Oostrum) en daarna met de boemel via Vierlingsbeek, Boxmeer, Cuijk, Mook-Molenhoek naar Nijmegen Heyendaal. Op zich klopt dat met de info op TTNMapper.org, die geeft daar ook geen actieve gateways (p.s. op moment van typen heeft TTNMapper wat problemen en worden *alle* gateways als offline aangegeven, dat is echter niet zo), maar de grote cirkels op de dekkingskaart deden hopen dat er toch wel ontvangst mogelijk was.
 
Hoe anders was dat vandaag. Toen moest ik namelijk door naar Arnhem. Ook nu tot Nijmegen geen ontvangst, maar vanaf Heyendaal naar Presikhaaf en de wandeling tot op het HAN terrein waren, qua ontvangst in ieder geval, perfect. Tijdens het stukje lopen waren er steeds minimaal 2 gateways die het bericht ontvingen. Het ziet er ook naar uit dat de “beweeg ik of niet?” aanpassing in het script goed werkt. Nu is het zo dat als de TTGO T-Beam wakker wordt (na 30 seconden) er eerst gekeken wordt of de huidige locatie minimaal 50 meter afwijkt van de oude locatie. Zo niet dan gaat de TTGO T-Beam weer 30 seconden in slaap (en als hij na 5 minuten nog niet bewogen heeft stuurt hij alsnog een bericht). Het aantal datapunten op de TTNMapper kaart is precies goed. Maar 1 datapunt terwijl ik op de bus sta te wachten, een viertal datapunten op station Nijmegen, maar daar verplaats ik me ook daadwerkelijk tussen perrons, maar 1 datapunt vanaf station Arnhem waar de stoptrein ongeveer 5 minuten still bleef staan.

Absolute uitblinker was/is een gateway die in Arnhem op een (hoog) flatgebouw staat (zie foto hierboven). Deze gateway was namelijk in staat om berichten te ontvangen vanaf Nijmegen Heyendaal, op ruim 14 km afstand. En dat met SF7, via een node die in mijn rugzak zat met een standaard kleine antenne. Ik vind het indrukwekkend, zeker ook gezien de compacte omvang van de TTGO T-Beam. Natuurlijk, niet iedereen kan een gateway met antenne op een flatgebouw zetten, maar afgaande op de beschrijving is ook dit een gateway op basis van een Raspberry Pi, dus zelfs al je stoer doet qua kabels, antenne etc. is dat een gateway die (zo schat ik) geen 1.000 euro gekost zal hebben. Ben jij de eigenaar van “home-made-second-ic880a-rpi3” en wil je meer vertellen over de gateway/kosten/plaatsing etc dan hoor ik het heel erg graag!!

Er komen nog wel wat dagen aan die de moeite van het tracken waard zijn. Volgende week dinsdag leg ik met de auto het traject Deurne – Druten – Roermond – Arnhem – Deurne af. En en een week later reis ik met de trein het traject Nijmegen – Zutphen – Apeldoorn (daar stap ik dan uit voor een paar uur en dan terug naar huis via) – Amersfoort – Utrecht – Den Bosch – Eindhoven – Deurne. Niet helemaal de route van april 2017 maar wel eentje die in de buurt komt. De TTGO T-Beam gaat beide dagen zeker ook mee.

Deel dit bericht:
nov 252018
 

Gisteren schreef ik over de TTGO T-Beam, een ESP32 met LoRa chip, GPS en een batterijhouder voor een 18650 Li-ion batterij gecombineerd. Ik had er het “standaard” script beschikbaar om hem als node voor TTNMapper.org in te zetten. Het script werkt, is nog lang niet geoptimaliseerd, maar het was goed genoeg voor een eerste test.

Hij ging gisteren mee, in de auto, naar Zuid-Limburg.  Gewoon voor op het dashboard. Zuid-Limburg is, zo kun je zien op TTNMapper.org niet  het gebied van Nederland met de beste dekking qua TheThingsNetwork. Conclusie is in ieder geval dat ik van de beschikbare gateways onderweg, het merendeel in ieder geval bereikt heb.

De maximale afstand die ik bereikt heb is 9,18 kilometer naar een gateway in Roermond. Dat vind ik niet slecht als je bedenkt dat ik op dat moment waarschijnlijk gewoon met een kilometer of 130 per uur over de A2 reed in een metalen doos. Ook daar ben ik zeker niet ontevreden over.

Belangrijkste minpunt van de eerste test gisteren was het gegeven dat de 3,7V 18650 oplaadbare Li-ion batterij niet eens een beetje in de buurt van de te verwachten capaciteit kwam. Dat was eigenlijk niet eens nieuws, YouTube staat vol van filmpjes waarin de exemplaren uit het Oosten getest worden en waarbij duidelijk wordt dat 9900 mAh een sprookje is. Ik heb helaas geen setup die de capaciteit van de accu goed kan testen. Maar na 3,5 uur stopte de eerste batterij er mee. Was wel 3,5 uur van continue werken en elke 30 seconden via TTN versturen van de coördinaten.

Lees verder….

Deel dit bericht:
nov 242018
 

Ruim een jaar geleden, april 2017, nam ik 2 LoRaWAN nodes mee op een treinrit van 2,5 uur. Een LoPy node en een Marvin node, een stevige powerbank en mijn smartphone werden gebruikt om data te verzamelen en te loggen.

Het idee was simpel, maar ook wel weer ingewikkeld:

Vergeet voor het gemak de Mavin node even, die maakte verbinding met KPN, dat doe ik vandaag niet. De LoPy node deed niets anders dan om de zoveel seconden te proberen een bericht via het TTN-netwerk te versturen met daarin de temperatuur / luchtvochtigheid die gemeten werden door een aangesloten DHT11.

Prima, maar ik wilde niet alleen de data doorsturen, ik wilde ook weten, als de data aan kwam, hoever ik dan van de betreffende gateway die de data ontvangen had af was. En tegelijkertijd wilde ik een bijdrage leveren aan de dekkingskaart zoals die op ttnmapper.org te vinden is. Die kaart geeft een beeld van de op dit moment beschikbare gateways en de plekken waar je zou mogen verwachten dat je data via het TTN-netwerk kunt versturen.

Om dat te doen draaide op mijn telefoon een app. Die app maakte verbinding (via 4G) met de server van het TTN-netwerk zodat hij daar kon kijken of de data van mijn LoPy node binnengekomen was. Als dat zo was, dan haalde de app ook de GPS-coördinaten van de gateway die de data ontvangen had op (die informatie wordt ook op de TTN-server opgeslagen), keek naar de GPS-locatie van mijn telefoon en stuurde die gecombineerde informatie naar de TTNmapper server. Snap je het nog?

Deze methode werkte eigenlijk best goed, maar had als nadeel dat de externe accu best groot was, mijn telefoon de hele tijd in de buurt moest zijn en de app moest draaien, de accu van de telefoon werd best wel belast omdat hij steeds dataverbinding en gps aan het gebruiken was. Kortom, niet echt ideaal om dagelijks te doen.

Inmiddels zijn we dus ruim anderhalf jaar verder en  ga ik vandaag een oplossing testen die een stuk compacter is. Ik maak dan namelijk gebruik van een TTGO T-Beam. De link is naar de verkoper op Aliexpress waar ik hem zelf besteld (en betaald) heb. Hij kost nu (op moment van schrijven), met verzendkosten € 26,06
Ik heb er zelf € 25,56 incl. verzendkosten voor betaald, de prijzen schommelen soms een beetje. Hou er rekening mee dat je de kans loopt dat je op de bestelling BTW (+21%) en inklaringskosten (+€12,50) moet betalen.

De TTGO T-Beam is een board op basis van een ESP32 met een NEO-6M GPS chip en een LoRa schip op het board. Aan de achterkant zit een grote batterijhouder. Niet voor een AA-batterij maar voor een 3,7V 18650 oplaadbare lion batterij. Ik heb er daar 2 van 9900 mAh gekocht bij deze verkoper met bijbehorende oplader (die had ik namelijk nog niet) voor totaal € 12,73 inclusief verzendkosten. Dus al met al ben je (zonder BTW en inklaringskosten) zo’n 38 euro kwijt aan deze setup. Dat is duurder dan de goedkoopste LoRaWAN node die je kunt krijgen, maar goedkoper dan een LoPy of Warvin node, zeker als je een externe accu erbij moet kopen.

Het voordeel van deze setup is dat je geen gebruik meer hoeft te maken van je telefoon. De TTGO T-Beam heeft zijn eigen GPS aan boord en stuurt die data door naar de TTN-server. Daar kun je een rechtstreekse verbinding maken met de TTNmapper server en er voor zorgen dat die GPS data doorgestuurd wordt en gebruikt kan worden.
Hoe dat moet wordt hier allemaal uitgelegd inclusief de code die je op de TTGO T-Beam moet zetten.

Het werkte allemaal meteen. Ik moest eerst een minuut of 10 wachten voor de GPS fix. Dat had ik ook wel verwacht omdat ik binnen was en het de allereerste keer was dat de node op zoek ging naar de GPS. Ik weet nog niet hoe lang dat normaal buiten gaat duren. Voor nu laat ik hem gewoon even aan staan.
Ik heb ook nog geen idee van de batterijduur. Ik neem hem vandaag mee in de auto, mocht de batterij echt heel snel leeg zijn, dan heb ik eerst een reservebatterij en anders gaat hij gewoon aan de 5V aansluiting van de auto (dat is in de trein idd wat moeilijker, dus ik wil wel even weten hoeveel uur hij dit vol houdt).

Het aardig bij TTNmapper is dat ik nog steeds kan zien welke data mijn specifieke node aangeleverd heeft, dat betekent dat ik vandaag ook kan zien of er data binnen komt. Niet zo live en realtime als met de app (die zelfs een geluidje liet horen bij dataontvangst) maar goed genoeg om een idee te krijgen.

En natuurlijk is er nog ruimte voor uitbreiding. Deze node heeft geen ingebouwd micro-SD kaart slot zoals sommige anderen wel al hebben, dus lokaal loggen van de data zodat ik kan zien hoeveel data niet ontvangen wordt, is nog niet mogelijk. Ik heb wel externe uitbreidingen die dat kunnen doen, maar dat vergt dan ook even wat aanpassing in de code.

Mooi is dat de TTG T-Beam in een stevig doosje geleverd wordt. Ik moet nog even een gaatje in de zijkant boren voor de antenne, dan kan hij hiermee ook eenvoudig en veilig mee in de trein. Wordt vervolgd.

 

Deel dit bericht: