mrt 012020
 

Het kon al op specifieke apparaten zoals de Lopy of in custom builds of als je Circuit Python gebruikte op hardware die daar ondersteuning voor heeft. Maar op de ESP32 had je tot voor kort nog niet de mogelijkheid om BLE (Bluetooth Low Energy) te gebruiken binnen MicroPython als je gebruik maakte van een van de officiële firmware images. Met ingang van release 1.12 is dat eindelijk wél zo. Flashen van mijn ESP32 deed ik volgens de instructies die hier staan. Nieuw, wat mij betreft, was ook dat Thonny, de gratis open source IDE voor Python (en MicroPython) ook ondersteuning heeft voor het rechtstreeks werken op de ESP32.

Dat was tot voor kort nogal een gedoe. Anders dan bij de apparaten die Adafruit maakt, kon je de ESP32 niet als USB-drive zien na aansluiten op je laptop. Maar de Thonny “ziet” de ESP32 en je kunt dan bestanden openen die er op staan (ander dan bij Arduino vindt compilatie niet al vooraf plaats dus je kunt de programmacode ook achteraf nog lezen), nieuwe bestanden aanmaken én je hebt de REPL beschikbaar om interactief commando’s uit te voeren die dan op de ESP32 worden uitgevoerd.

Dat maakt het debuggen een stuk gemakkelijker. Mauro Riva  heeft op zijn blog niet alleen blogposts over het gebruik van MicroPython staan (zoals deze over het zelf compileren van de firmware met BLE support), maar ook een github repository. Daar kun je ook een aantal voorbeelden vinden.

Lees verder….

Deel dit bericht:
feb 242020
 

Ik weet het: echte ontwikkelaars maken voor hun versiebeheer geen gebruik van Onedrive. Dan moet het op zijn minst via Github. Prima, gebruik ik ook, af en toe. Als iets af is, om te delen.

Maar als ik gewoon wat aan het klooien ben,  als ik bv een TCRT5000 sensor op de watermeter in de meterkast geplakt heb om het ronddraaien van het tellerschijfje te registreren en dat dan weer via MQTT over Wifi vanaf een ESP8266 door te sturen naar een Mosquitto-server zodat ik die waarden in Home Assistant weer kan geven en in influxDB kan archiveren, dan ben ik meestal eerst even gewoon met code aan het stoeien.
Met een beetje mazzel (zoals deze keer) met Over The Air (OTA) updates zodat ik niet op een krukje op USB-kabel lengte afstand van de meterkast hoef te blijven zitten.

Tijdens zo’n traject kan het wel eens voorkomen dat ik denk “oei, nu heb ik een stuk code weggegooid of aangepast en dat had ik niet moeten doen”.

In dat geval kan het helpen om het .ino bestand op te slaan binnen een map die gesynchroniseerd wordt met Onedrive. Privé of zakelijk maakt niet uit. Ik gebruik in dit geval mijn privé Onedrive. Het mooie van Onedrive (en waarschijnlijk een aantal van de andere beschikbare diensten ook) is dat hij aan versiebeheer doet. Dus in dit geval, waarbij ik een stuk code had verwijderd dat ik toch nog wilde gebruiken, ging ik naar onedrive.com, zocht daar de map en het programma-code bestand op en selecteerde een oudere versie. Onedrive kan ze niet online weergeven zodat je even snel kunt knippen en plakken, het bestand wordt gedownload naar je computer. Ook goed. Als backup voor foutjes tijdens het klooien in de Arduino IDE in ieder geval iets wat mij al wat tijd bespaard heeft vandaag. 🙂

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:
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:
jan 012019
 

Het nieuwe jaar is weer van start. Ik hoop dat 2019 ook voor jou een goed jaar mag worden!

Het inluiden van dat nieuwe jaar ging ook in Deurne gepaard met het afsteken van vuurwerk. Lang niet zo extreem als op sommige andere plekken als ik de berichten mag geloven. Gisteren, oudjaarsdag was eigenlijk de eerste dag (en meteen ook de laatste) dat er al overdag (voor 18:00 uur) al redelijk wat geknald werd op straat. Dat was na 18:00 uur zeker ook al zo. Maar vanaf middernacht was het voornamelijk een mooi schouwspel van siervuurwerk dat in de buurt afgestoken werd. Niet direct bij ons voor de deur. De meeste buren zijn/waren niet thuis en zelf steken we ook geen vuurwerk af (ik kijk er liever naar). Al met al betekende dit dat de fijnstofmeter die ik net voor de jaarwisseling buiten gehangen had zeker niet de maximale laag “rook” over zich heen gekregen heeft die mogelijk was. Maar meer dan genoeg om een duidelijk verschil in metingen te laten zien. Waar het vorig jaar nog klein piekje was, hoog maar heel kortstondig, bleven de waarden voor de meting van deeltjes met een afmeting van respectievelijk 10 en 2,5 µm nu geruime tijd veel hoger dan de twee dagen eerder. En de screenshot hierboven van vanochtend laat zien dat ze daarna ook (gelukkig) weer gedaald zijn naar gezondere waarden.

De waarden liggen nu weer ruim onder de 50 µg/m³ maar tijdens de jaarwisseling werden waarden van boven de 600 µg/m³ voor de PM10 en bijna 500 µg/m³ voor de PM2,5 gemeten. Ook de officiële sensoren op luchtmeetnet.nl gaven een flinke uitslag rond middernacht al waren er ook gebieden waar het toen nog wel meeviel.

Als ik de waarden vergelijk met de rapportage van het RIVM van vorig jaar waarbij een aantal metingen kortstondig de 1.000 µg/m³ aantikten, dan komt het visuele beeld (links en rechts in de straat hing veel meer rook dan bij ons voor de deur) overeen met de meting van de fijnstofmeter.

Vorig jaar heeft de meter nog een maand of twee enigszins gewerkt (waarden doorgegeven), maar omdat daar toen weinig interessante data uit kwam is hij daarna vergeten. Dit jaar heb ik in ieder geval een monitor actief die in de gaten houdt of hij online is (en mij een seintje op mijn telefoon geeft als dat niet meer zo is).

Ik denk dat ik er ook wat triggers aan hang om hogere waarden dan wenselijk in de gaten te houden. De officiële normen zijn (gelukkig?) tamelijk streng, daar bleven de waarden ook maandag (30 december) niet onder al waren ze uiteraard lang niet zo extreem als afgelopen nacht. We gaan het zien.

Deel dit bericht:
dec 302018
 

Vorig jaar deden we op het laatste moment mee met de test van het RIVM om de luchtkwaliteit rond de jaarwisseling te meten. Onze meter, met een Shinyei PPD 42NJ in plaats van de toen ook al door het RIVM geadviseerde Nova SDS011 fijnstofmeter, De resultaten van onze meter waren op de kaart van het RIVM niet te zien en ik moet bekennen dat de meter daarna weliswaar buiten is blijven hangen, maar in maart 2018 blijkbaar offline is geraakt en daarna vergeten.

Dit jaar voert het RIVM weer een experiment uit, maar onze meter zal daar (waarschijnlijk) niet in meegenomen worden. Ik heb namelijk wél de upgrade naar de SDS011 uitgevoerd, maar de BME280 vervangen door een eenvoudigere DHT22 en in plaats van de RIVM software op de ESP8266, gebruik gemaakt van de firmware van luftdaten.info.

Even terug naar het begin. De fijnstofmeter had het hele jaar buiten gehangen. En was dus al even offline. De fijnstofmeter zag er een beetje verweerd uit, idem voor wat betreft de sticker. Tijd dus voor een poetsbeurt, een nieuw sticker, vers uit de snijplotter en het samenvoegen van de nieuwe onderdelen.

De instructies voor het samenvoegen van de sensor en het installeren van de firmware staan hier op de site. Ik had in eerste instantie de SDS011 verkeerd aangesloten. Mijn ESP8266 had niet, zoals in de instructies de GND en VU pinnen op de plek zitten van de tekening. Nadat ik die goed aangesloten had kon ik ook het rode LEDje op de SDS011 zien knipperen.

Lees verder….

Deel dit bericht:
apr 082018
 

Ik realiseer me dat de titel van dit bericht weer eens absoluut geen click-bait is. Als je toch verder leest: leuk! 🙂

Voor wie denkt: waar heeft hij het nou weer over, eerst even kort wat uitleg. Zoals je wellicht weet zijn er naast Arduino en Micro:bit tal van andere interessante oplossingen op het gebied van microprocessoren, kleine uitbreidingskaartjes met een chip er op die net als Arduino en Micro:bit gebruikt kunnen worden om sensoren te lezen, randapparaten aan te sturen, maar die vaak een fractie van het geld kosten. Bekendste op dit gebied was ongetwijfeld de ESP8266, als je de link volgt kom je bij een aantal berichten op dit blog daarover. De ESP8266 heeft inmiddels een opvolger, de ESP32. Het heeft even geduurd voordat ook de firmware en ondersteuning voor de chip op orde was, maar inmiddels zijn ontwikkelbordjes met de ESP32 goed en goedkoop te krijgen (zeker via online shops zoals AliExpress). Ook over de ESP32 heb je hier al meer kunnen lezen, de LoPy van Pycom was de eerste ESP32 die ik hier in huis haalde naar aanleiding van de Kickstarter in augustus 2016 alweer. Dat was ook mijn eerste kennismaking met MicroPython. Een programmeertaal die voor mij helemaal niet zo vanzelfsprekend was omdat ik (toen) nog niet eerder met Python geprogrammeerd had.

Sindsdien gebruikte ik MicroPython uitsluitend op de LoPy’s. Want pogingen om het op een ESP8266 handig aan het werken te krijgen waren op niets uitgelopen. Het was simpelweg teveel gedoe om de code te wijzigen.

Bij toeval kwam ik echter op YouTube deze serie instructiefilmpjes tegen:

Ik bekeek hem en was onder de indruk van het gemak waarmee, met dank aan rshell het nu mogelijk was om bestanden te uploaden en wijzigen op de ESP32. Overschakelen naar de REPL, weer terug naar de shell, het ging allemaal heel soepel. En ik had toevallig nog een ESP32 liggen die niks lag te doen.
Ik had hem aangeschaft al node voor LoRaWAN / TTN, maar helaas had ik bij het bestellen niet goed opgelet en een versie op 433Mhz besteld in plaats van op 868Mhz. Je kunt hem hier vinden (even opletten dus!). Je hebt helemaal gelijk als je zegt “maar voor 16 euro kan ik ook een Micro:bit kopen”. Klopt. Maar dat komt door de LoRa-module en het kleine LCD-schermpje. Wil je een gewone ESP32 zonder LoRa-module en zonder LCD, dan kun je er hier al eentje voor minder van 4 euro (incl. verzenden) vinden. En dan heb je dus een microprocessor mét WiFi en BLE en batterij-aansluiting.

Goed, ik ging het proberen. Maar ik wilde het niet op een Raspberry Pi doen, maar in het Linux Subsystem dat ik op Windows 10 heb draaien. Waarom? Omdat ik wilde weten of het nu eindelijk een volwaardig alternatief geworden is. Spoiler: ja, dat is het, maar je moet er wel even wat voor doen.

Lees verder….

Deel dit bericht:
feb 182018
 

Via de enthousiaste video’s van Nick van Educ8s kwam ik afgelopen week erachter dat ePaper displays voor Arduino en Raspberry Pi inmiddels goedkoop genoeg zijn geworden om ook voor eigen hobbyprojecten zinvol te zijn.

Het voordeel van een ePaper display is uiteraard het lage energieverbruik, nadeel is de lage beeldverversingsfrequentie en het gegeven dat ze meestal alleen zwart/wit zijn. En inderdaad, als je een groot scherm wilt, dan gaat het alsnog in de papieren lopen, maar een scherm van 1,54 inch in zwart/wit kost via eBay zo’n 18 Amerikaanse dollar. Bij AliExpress kwam ik andere versies tegen, zoals deze met zwart en rood voor zo’n 15 euro.

Belangrijk is om even goed op te letten. Op eBay staan ook goedkopere exemplaren, maar die beschikken niet over de benodigde connector/kabel:

Een van de goedkopere aanbieders had wél plaatjes met de kabel, maar in de beschrijving van wat geleverd zou worden stond de “XH2.54 20cm 8Pin” kabel niet erbij. Navraag leerde ook dat die niet geleverd werd. Even opletten dus.

Voor de Raspberry Pi wil je waarschijnlijk een “Hat” hebben, zoals deze. Dan kun je het display namelijk direct op je Raspberry Pi prikken. Als je dan een Raspberry Pi Mini gebruikt in plaats van zo’n grote lompe Pi 3, dan ziet het er meteen ook goed uit.

Deel dit bericht:
jan 212018
 

Ik heb vandaag de Sonoff Pow voor het eerst echt getest. En de resultaten zijn heel interessant wat mij betreft. Onze wasmachine draait heel wat was per week en het blijken dan ook ideale momenten om de vermogensmeter uit te proberen. Hierboven zie je de resultaten van vandaag (tot nu toe). De grafiek komt uit Grafana, die de data ophaalt uit InfluxDB waar de data terecht komt via OpenHab en MQTT. De gele lijnen heb ik later toegevoegd.

Van links naar rechts zie je achtereenvolgens een bonte was programma op 30 graden, gekenmerkt door een snelle stijging van het gebruikte vermogen naar zo’n 2kW en daarna geleidelijke daling met 3 kleine verhogingen bij het centrifugeren.
De tweede trommel was beddengoed op 60 graden. Daar zie je dat het vermogen veel langer op die 2kW blijft en ook hier kleine verhogingen voor het centrifugeren.
Het beddengoed ging de droger in, het verbruik daarvan kent niet zo’n grote piek (zie blokje 3) maar blijft heel lang op zo’n 400W.
Het vierde blok moet je nu al kunnen herkennen: een tweede trommel op 60 graden (beddengoed van de kinderen), daarna heb ik de droger weer van de meter afgehaald en de T-shirts van het hockeyteam van de jongste gewassen. Een kort programma (30 minuten) op 40 graden, te zien in het vijfde blokje.
En op het moment loopt een laatste bonte was voor vandaag bijna ten einde.

Inmiddels heb ik tellers toegevoegd die respectievelijk de gebruikte energie tijdens een geselecteerde tijdsduur, daarvan afgeleid het aantal kWh (delen door 36.000) en de kosten (vermenigvuldigen met 18 eurocent per kWh) laat zien. Daaraan kan ik zien dat een trommel witte was met 18 eurocent zo’n 2,5x zo duur is als een trommel bonte was (7 eurocent) en de T-shirts van het hockeyteam verbruiken, ondanks het kortere programma, door de hogere temperatuur bijna net zoveel stroom als een gewoon bonte was programma. Geen manier om geld te besparen dus. Ook de droger is niet heel goedkoop in gebruik, net zo duur als een trommel witte was. De waslijn waar het kan blijft dus het devies.

p.s. ik vind zulke metingen, de data, de info die het oplevert super interessant. Betekent niet dat ik voortaan geen apparaat meer aan durf te zetten uit angst voor het bijbehorend verbruik. Verspilling tegen gaan is prima, maar het moet wel leefbaar blijven.

Deel dit bericht: