feb 102019
 

In de categorie “ik zou er zelf niet aan gedacht hebben om het te bouwen” vandaag een LCD paneel gemaakt van LED strips. Je weet wel, die strips zoals je die “overal” kunt kopen.

Op hackster.io kun  je lezen hoe dat kan. Nou beschrijven de auteurs van dat bericht het proces niet zomaar, want het werkt ook niet zomaar. Het is meteen ook een beetje een demo / advertentie voor een (op dit moment) aankomende Crowd Supply actie voor het benodigde controllerboard.

In de video hieronder (de audio is wat irritant, die kun je beter zacht zetten) zie je het assemblageproces en na 1:05 zie je een demo.

Het effect is (zeker op enige afstand) best goed.

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 272019
 

Note to my regular readers: I am not switching over to English for all posts, just  for some of the more technical / aimed at specific audience ones.

Last week I noticed a project on hackster.io that used an ATtiny. But it wasn’t an ATtiny85 like I had used, but an ATtiny10. Still, it had the same amount of pins, the project describes how you build an ATtiny10 Binary Thermometer, so similar to what you would expect with an ATtiny85. While the difference in the numberpart of the name 10 versus 85 would suggest big differences.

My curiosity had been triggered and I started searching around.

Why ATtiny?
For those that also wonder about the ATtiny part of the name: it is part of the AVR family, an 8 bit-RISC-microcontroller (µC) originally developed by a company called Atmel (AT) in 1996. Atmel got acquired by Microchip Technology in 2016 but the name of the chip stayed of course. One branch of the AVR family are the megaAVR or ATmega microcontrollers. The Arduino UNO uses an ATmega328 as its engine and many other members of the family are used on the other Arduino boards.

The ATtiny is part of the tinyAVR branch of the family, they have less on-chip memory, less pins, a less extensive peripheral set than their Mega siblings, but are really cheap, and easy to use in small project.

Note: actually, you can buy an ATmega328 at AliExpress at the moment of writing even slightly cheaper than an ATtiny85 (€1,06 for the ATmega328 versus €1,53 for the ATtiny 85 incl. shipping). Both microcontrollers need more than the bare controller to program them, but both can work on their own, without needing any additional parts. Both are happy with both a coin cell battery or 5V. The socket for the ATmega328 might be a bit more expensive (but you’re talking cents differences) and of course you might simply don’t want to waste the space on your board if you don’t need 28 I/O pins.

What about the numbers?
The first digit of the number that comes after the designation ATtiny makes sense, it is the amount of flash memory in kibibyte (KiB), so an ATtiny85 has 8KiB of flash memory. The second digit is the mdoel type. There you would expect newer models or more powerful models to have higher numbers. But so far I have not found a page that can explain the logic behind the numbering. If you look at the timeline of release (see below, source) you can see that they are not chronological.

And the other stuff?
Often, the designation of the chip stops there. A project would describe that it used an ATtiny85 or (like metnioned) an ATtiny10. But if you want to buy them online the package type also is important. For example, the ATtiny85 is available as:

  • DIP-8N, => this is the one you need if you want to use a breadboard or a socket!!
  • SO208-8, => good for surface mounting, could be used for permanent papercircuits
  • TSSOP-8, => also used for surface mounting, “thin body size”
  • QFN-20 => this one has no “legs” on the outside

If you search for the ATtiny85 on AliExpress for example you will find both ones that have pins and ones that are meant for surface mounting.
In the image on the left, the top was has ATTINY85-20PU DIP-8 in the description. The 20 means it can run on 20Mhz, the DIP-8 indicates the DIP package. There also exist (more expensive) 10PU chips, often indicated as ATtiny85V-10PU that run on lower frequency and are even more power efficient. Lowest price I could find on AliExpress was about 4 euro a piece.
The second one mentions TINY85 SOP8 and, combined with the image, tells you that it is the package meant for surface mounting.

In general there are two things to do if you want the figure out what a specific ATtiny can do. The Wikipedia page for the ATtiny is really helpful. It was filled by someone who had a similar question as I had, but more time. (Thank you!). And the Microchip site has all the datasheets for their microcontrollers. Reading the documentation can be very useful (as always 🙂 )

A lot of people complain that the info is not consistent, and I agree. Take for example the image at the top of this post for the  AT tiny 402 – SSFR. It was taken from this official PDF for the ATtiny202/402 .
It says that the first digit is the amount of flash (consistant), the second the feature set (?) and the third the number of pins (6=20 pins, 4=14 pins, 2=8 pins), but why then not add that digit for all chips?
Carrier Type, Temperature Range, Package Type are also not always provided in that way.
If you download the PDF for the ATtiny85 (and 25, 45), you won’t find that info (there are more files here, I haven’t gone through them all).

I have to admit, I’m not really satisfied with this post yet. I’ve got the idea that there still are more variations of ATtiny chips than I have been able to explain here. And also, I still am not convinced myself that ATtiny85 is the most optimal choice for the projects that I’ve been building. But at least I hope I’ve given you some idea of what to look out for if you want to buy them yourself.

Additions? Corrections? Please leave them in the comments below!

 

Deel dit bericht:
feb 232018
 

WOW is een geheel terechte uitspraak als het gaat om dit project. Het is geen “weekendprojectje”, je ziet het resultaat van 2,5 jaar ontwikkelen door Scott Bezek en verschillende versies.

Het heeft zo ongeveer alles in zich wat je kunt verzinnen: het ontwerp van de behuizing zodat het met een lasersnijder gemaakt kan worden. In de behuizing een overbrenging met tandwielen en een cylinder waarvoor hij moest berekenen hoe groot hij moest zijn (stukje Wiskunde dus). Op de Arduino zit een eigen ontworpen PCB die maximaal 12 units aan kan sturen, alle ontwerpen zijn open source beschikbaar via github.
En de filmpjes bij de deelstappen, deels in animaties zoals hieronder, zijn al een project op zich. Blader dus zeker ook door de beschrijving heen!

Ik ben in ieder geval diep onder de indruk.

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 032018
 

“Papa, hoe werkt deze dan eigenlijk?”. Dat was de vraag die ik kreeg toen mijn oudste dochter het zakje zag liggen met een van de bestellingen van AliExpress. Eerder vandaag hadden we namelijk samen naar deze blogpost gekeken toen het ging over de verschillende manieren waarop de fijnstofmeters verbinding maken met de ESP8266. Toen ging het over UART, SPI en I2C (als jou dat niets zegt, lees dan ook even die blogpost!).

Er waren twee manieren om erachter te komen op welke manier dit kleine LCD verbonden moest worden met een Arduino (of ESP8266): foetelen (!) en op de pagina van de verkoper kijken of naar de tekst bij de pinnen kijken. Dat was gemakkelijk: naast GND en VCC waren er maar 2 pinnen over, dus was het geen SPI, en met SDA en SDL bij de andere twee pinnen was het duidelijk: het was een I2C verbinding.

“Maar hoe zorg je er dan voor dat er tekst op komt? Moet dat dan pixel voor pixel?”, was de vervolgvraag. Ja, maar gelukkig ook weer niet. Daar hebben mensen namelijk “bibliotheken” voor gemaakt die een groot deel van de complexiteit verbergen. “Laten we het gewoon een uitproberen”, zei ik. Nu was de pagina van de verkoper toch nog handig, want we moesten nog een paar dingen meer weten, bijvoorbeeld of hij 3V of 5V wilde hebben. Als de verkoper die info niet online had staan, dan was even op de achterkant van het LCD scherm kijken ook handig. Daar stond namelijk OLED-091, en als je dat in Google invoert krijg je een zee van informatie. Het LCD-scherm kan zowel op 3V als op 5V en heeft een SSD1306 chip. Adafruit heeft daar een library voor gemaakt voor de Arduino en ook voor de ESP8266  is er eentje te vinden. Eitje dus om dit aan de praat te krijgen. Of zo dachten we.

Het aansluiten van de kabels, het installeren van de bibliotheken, het openen en draaien van een van de voorbeelden, dat ging inderdaad zonder problemen. Maar toen kwam de vraag: “Kunnen we ook ons eigen plaatje laten bewegen??”. Ehm, ja, maar dat duurde uiteindelijk een uur voordat het werkte. Daarom ook een blogpost om vast te leggen hoe we het uiteindelijk voor elkaar gekregen.

Lees verder….

Deel dit bericht:
dec 282017
 

OK, één bericht nog dan voordat ik ga schrijven over onze eerste fijnstofmeter die (als alles volgens plan gaat) ook tijdens de jaarwisseling online te volgen is.

Naast de bestelde Shinyei PPD42 die vorig jaar door het RIVM gebruikt is, hebben we een tweetal DSM501 modules van Samyong in huis en blijkt er nog een Plantower PMS5003 onderweg te zijn die (vanwege een wat vaag leveringsprobleem) waarschijnlijk ingehaald wordt door de Novafitness SDS011 die het RIVM dit jaar gebruikt (en die ook door o.a. OK Lab Stuttgart gebruikt wordt).

Dus was ik verder op zoek gegaan naar info specifiek voor die sensoren.

In dit bericht over de DSM501 module wordt ook gesproken over de Air Quality Index (IAQ, IQA) en de bijbehorende verschillen tussen de  Europese Common Air Quality Index (CAQI) die in 5 stappen van 0 tot 100 loopt en de 6 niveaus van de AQI index die in de VS en China gebruikt worden en die van 0 tot 500 (of meer) loopt. En er blijken meer smaken te zijn. Het bericht legt uit hoe de verschillende indexen te berekenen.

Op het forum van The Things Network kun je een hele thread vinden over sensoren met de nodige verwijzingen. Hier is een beschrijving te vinden van (nog) een oplossing gebaseerd op LoraWAN

Het aansluiten van de PMS5003 gaat net weer wat anders dan van de andere sensoren, maar ook daar is informatie over te vinden online. Hij maakt gebruik van een seriële verbinding, net zoals (zo begrijp ik van het RIVM) de SDS011.

Dit bericht ten slotte is niet erg positief over de betrouwbaarheid van de PPDN402 en op dit blog deden ze een test in de keuken waarbij de conclusie was dat het aantal deeltjes dat daar de lucht in geslingerd wordt minstens zo erg is als buiten.

Lees verder….

Deel dit bericht:
dec 212017
 

In de categorie “zodra je je ergens in begint te verdiepen ontdek je hoe weinig je er over weet/wist” even een follow-up op mijn bericht van gisteren over het zelf meten van fijnstof. Joost Wesseling van het RIVM reageerde dezelfde avond (laat) nog op mijn vraag voor wat meer informatie over het initiatief om tijdens de jaarwisseling zelf mee fijnstof te meten. Uit zijn mail bleek dat ze bij het RIVM (uiteraard) ook weten van het Venlose initiatief en Teus Hagen. Ze zijn afgelopen jaar bij hem op bezoek geweest (filmpje).

Op de YouTube pagina van Samen milieu meten vond ik ook nog een paar andere filmpjes die antwoord geven op vragen die ik nog had. Bijvoorbeeld over de te kiezen behuizing voor het geheel. Er staan 3 low-tech voorbeelden online: PVC T-stuk (video door Joost), yoghurt-emmer, plastic fles. Ik wist dat ik zelf een 4e optie gezien had op een van oorsprong Duitse site, maar die ook info in het Nederlands aanbieden: PVC bochten. Die site van OK Lab Stuttgart is sowieso een plek waar je wel een uurtje zoet kunt zijn. Je kunt daar je sensor ook aanmelden zodat jouw metingen permanent, dus niet alleen tijdens oud en nieuw op een online kaart weergegeven worden. Ook hier met ondersteuning voor Nederland en er zijn nog genoeg plekken waar nog niet gemeten wordt.

Op instructables.com staat een beschrijving van het opzetten van een configuratie met de Shinyei PPD42 sensor waarbij ze een belangrijke hack toepassen: ze plakken de opening bij het detectiegebied af zodat er geen licht op valt, dat schijnt de hoeveelheid “ruis” bij de metingen te verminderen.

Ook heb ik inmiddels de beschrijving gevonden van het gebruik van de Shinyei sensor in combinatie met The Things Network (TTN). Het voordeel daarvan is dat je sensoren ook kunt ophangen in gebieden waar je geen toegang tot een draadloos netwerk hebt, al is dit wel een sensor waarvoor je een stopcontact in de buurt moet hebben want op een batterij gaat het vanwege de continue metingen niet werken.

Bij de beschrijving van de TTN-oplossing werd verwezen naar de behuizing die je hierboven bij het bericht afgebeeld ziet. Kost zo’n €20,- in aanschaf. Iets duurder, maar als je niet zo van het knutselen bent wat mij betreft ook wel een optie.
Lees verder….

Deel dit bericht:

Het programmeren van een ATTiny85

 Gepubliceerd door om 06:52  Arduino, Hardware
dec 042017
 

Hoewel ik al ervaring had met het programmeren van een ATTiny85 als die onderdeel was van een Digispark board (links op de foto),  heb ik dit weekend geleerd dat het programmeren van een losse chip (rechts op de foto, de andere 9 exemplaren zitten in het buisje erboven) iets ingewikkelder is/was. Was eigenlijk omdat het nu ik het een keer gedaan heb weet en het niet echt moeilijker is.

Het Digispark board had zelf nog een USB-aansluiting, die had ik nu niet. Nou dacht ik dat ik daar een oplossing voor had in de vorm van een “Pluggable Development Board Voor ATtiny13A/ATtiny25/ATtiny45/ATtiny85 Programmering Editor Micro Usb Power Connector” (link). Inmiddels heb ik begrepen dat het  mogelijk moet zijn om, door eerst een bootloader op de ATTiny85 te zetten, ik iets kan met dat board. Maar vooraf nog niet.

Dus moest ik aan de slag met de “bekend” alternatieve optie waarbij een Arduino Uno gebruikt wordt om de code op de ATTiny85 te zetten. Daarvoor is de volgende constructie nodig:

De detailbeschrijving van het aansluiten kun je hier vinden.

De Arduino Uno moet dan een script krijgen dat standaard te vinden is in de IDE via Bestand > Voorbeelden > ArduinoISP > ArduinoISP

Daarna was het even zoeken naar de dingen die ik moest doen om het ATTiny85 script *via* de Arduino Uno naar de ATTiny85 te krijgen.

Uiteindelijk heb ik hier de url voor de Board managers voor “attiny” (https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json) en “ATTinyCore” (http://drazzy.com/package_drazzy.com_index.json) gevonden, die toegevoegd via Bestand > Voorkeuren en daarna de beide boards geïnstalleerd.

Daarna was het een kwestie van het instellen van board, de programmer moest omgezet naar “Arduino as ISP” en wonder boven wonder werkte het allemaal daarna.

Dát het werkte wist ik was toen ik de chip aangesloten had op het circuit dat ik eerst getest had met het Digispark board. Dat is een werkwijze die ik iedereen kan aanraden. Het programmeren van de Digispark via USB gaat veel sneller, je hoeft niet en chip om te prikken etc.
Maar dat kan dus wellicht straks ook met het ontwikkelboard, nadat ik een bootloader op een ATTiny85 chip gezet heb.

Ik kan het me helemaal voorstellen als je denkt “Wat een gedoe!”. Dat klopt. Maar daar staat tegenover dat de ATTiny85 ook een pareltje is. Qua afmetingen, qua prijs (minder dan 1 euro per stuk), het gegeven dat je hem gewoon op een 3V knoopcelbatterij kunt aansluiten. Kortom, voor “kleine” projecten, papercircuits etc. is het een fantastische chip.

p.s. het script waarmee ik aan de gang ging dit weekend kwam hier vandaan. Blijkt ook prima op de ATTiny85 te draaien.

Deel dit bericht:
nov 272017
 

Ondanks alles zijn kinderen nog lang niet zo’n nerd of geek als hun papa is. En hoewel ik natuurlijk sowieso helemaal niet over ze mag klagen, kreeg ik vandaag toch nog wel weer wat meer hoop. Vandaag kwam namelijk weer eens een pakje uit China binnen. Nu met zo’n “bekende” 37-in-1 sensorkit. Een zakje (ik had niet gekozen voor de duurdere versie met doosje) met daarin 27 verschillende sensoren voor aan de Arduino, de ESP8266 of de micro:bit.

Totale kosten zo’n 10 euro, geen geld dus. Ongetwijfeld niet de meest hoogstaande kwaliteit, maar elke sensor zit al op zijn eigen printplaatje met pinnen om meteen een dupont-kabeltje op aan te sluiten.

Wat me positief verraste was de belangstelling en de nieuwsgierigheid die het pakje met sensoren opwekte. Niet omdat ze iets moesten of wilden bouwen. Nee, gewoon nieuwsgierig naar waar al die 27 sensoren voor dienden, wat je er mee kon doen. Sommigen kenden ze al (relais, thermometer etc.) maar andere ook weer niet. Het bijbehorende kaartje bevat niet meer dan alleen een afbeelding van de sensoren en de bijbehorende naam. Ze kunnen er via YouTube dus heel eenvoudig achter komen.

Maar dat moet nog even wachten want komend weekend “moeten” we eerst nog een Sinterklaas surprise in elkaar knutselen op basis van een servo, een ATtiny85, LEDjes, hout, verf,…..
De week erna hebben we wél tijd. Ik ben eens benieuwd hoe ver we komen.

Dat kinderen alleen maar willen gamen en tv kijken is net zoveel onzin als dat hele digital natives verhaal van voorheen. 🙂

Deel dit bericht: