Woordklok (wordclock) bouwkit van workshop

In 2016 en 2017 heeft Bitlair (hackerspace Amersfoort) samen met DJO Amersfoort een workshop georganiseerd voor het bouwen van een wordclock. Dit is een klok die de tijd als woorden weergeeft. De tijd wordt gesynchroniseerd met een NTP op internet via WiFi. De tijd wordt afgerond op 5 minuten weergegeven. De tussenliggende minuten worden met 4 stippen aangevuld. Alles is ingebouwd in een fotolijst van Ikea.

De voorzijde met letters is gewoon wit papier, extra dekkend zwart geprint in een laserprinter (meerdere malen over elkaar heen). De verlichting van de woorden wordt gedaan met RGB LED-strip.

Ik heb de klok samen met Robbert thuis gebouwd. Ik kon toen niet aanwezig zijn tijdens de workshops helaas.

Controller en Arduino firmware:

Als controller wordt een ESP8266 gebruikt op een praktische WEMOS D1 mini PCB. Dit heet ook wel een NodeMCU. Hier zit namelijk ook gelijk een USB naar UART serial converter op, dus is programmeren erg makkelijk. De ESP8266 kan in de Arduino IDE geprogrammeerd worden, nadat je de ESP boards toegevoegd hebt. De huidige Arduino software laat alleen maar groene letters zien, ondanks de RGB LED-strips. Dit is met de nodige kennis aan te passen. Dat wil ik in de toekomst ook nog eens doen. Bijvoorbeeld dat je een rainbow mode hebt met verschillende kleuren.

Arduino firmware met NL woorden: https://github.com/niekproductions/word-clock – of gebruik deze downloadlink, maar let op de versieverschillen:

Word Clock Arduino code
Word Clock Arduino code
word-clock-master.zip
6.0 KiB
20 Downloads
Details...

Het enige wat ik in de software aangepast had, is de NTP server (naar time.nist.gov). Dat is een kwestie van testen. Na uploaden van de code gaat de ESP zich tijdelijk als WiFi AP gedragen en kun je het netwerk wordclock-xxxxxx met je telefoon of laptop verbinden. In de Arduino serial monitor staat de tijdelijke WiFi naam ook vermeld. Door met de webbrowser naar 192.168.4.1 te gaan, komt er een configuratiepagina beschikbaar. Daar kan je WiFi netwerk van thuis gekozen worden, inclusief het wachtwoord. Daarna verdwijnt het tijdelijke WiFi netwerk en zal de klok proberen te verbinden met je eigen netwerk. Vrij snel daarna komt de tijd zichtbaar als woorden.

 

Schema Wordclock:

LDR
Optioneel kan een LDR aangesloten worden op een analoge ingang (A0) in een spanningsdeler-configuratie (zie schema). Het voordeel is dan, dat de LED-strips gedimd zullen worden zodra er weinig omgevingslicht is. Hiermee voorkom je bleeding door het zwarte deel van de letters en het feit dat de klok te vel is in de avond/nachturen.

 

LED-strip montage
De strips werden op papier geplakt en onderling verbonden met korte draadjes. Dat was het meeste werk, want je moet nogal wat draadjes strippen.

Robbert is druk aan het plakken
Ik heb de draadjes geknipt, gestript en gesoldeerd

Er was één modificatie voor de onderste vier stippen: daar moest een 1N4007 diode in serie van de voedingslijn komen, om een klein spanningsverschil te maken. Ik weet niet precies wat daar de reden van was. Maar die zie je zitten op bovenstaande foto (onder het krimpkousje rechtsonder).

 

Schotjes
Om overstraling van naburige woorden te voorkomen, moeten er schotjes geplaatst worden in de fotolijst. Oorspronkelijk werd dit met karton en hotglue gedaan en dat werkt prima. Alleen Bitlair zou Bitlair niet zijn als dat niet mooier kon. Dus is met de lasercutter een mooi systeem gesneden en dat werkt prima.

Optionele voedingsbeveiliging
Als je een USB voeding gebruikt, dan kan er weinig misgaan; de spanning is over het algemeen netjes 5V en de polariteit (+ en -) kan niet eenvoudig verkeerd aangesloten worden. Indien je een adapter gebruikt, check dan goed of deze 5V uitgangsspanning heeft. De Wemos controller zal niet snel stuk gaan van een te hoge ingangsspanning vanwege zijn eigen onboard spanningsregelaar, maar voor de LEDstrips moet je wel wat oppassen. Eventueel kun je de volgende beveiliging aanbrengen aan de voedingsingang. Dit is dus normaal gesproken niet nodig voor een goede werking. Maar ik ben zelf wel voorstander van iets van een zekering in ieder elektrisch apparaat, dus dat is ook meteen meegenomen met dit schemaatje.

Kosten en beschikbaarheid
De kosten waren ongeveer €45,- inclusief de 5V voeding (USB lader van telefoon).

Stuur gerust een bericht, of schrijf hier een reactie, als je op de hoogte gehouden wil worden van toekomstige workshops. Ook kun je mij een bericht sturen, om je interesse aan te geven voor een bouwkit (als je niet bij een workshop kan zijn). Geen garantie, want ik ben niet de organisator, maar ik kan het wel eenvoudig doorgeven.

24 gedachten over “Woordklok (wordclock) bouwkit van workshop”

  1. Geweldige uitleg enorm bedankt daarvoor!

    Bij mij werkt hij na lang klungelen met de software.
    Hij is bij mij Rood, dus ik heb RGB rood nu 255 gegeven en dan doet hij het perfect groen ??
    En ik moet om de boel werkend te krijgen pin 2 selecteren voor uitgang in arduino software.
    En aansluiten op 4.
    Zou het kunnen zijn dat ik het verkeerde boardje selecteer in Arduino?
    Ik heb gekocht een mini V2 NodeMcu 4M bytes Lua WIFI ESP8266 by WeMos D1 Development Board.
    En selecteer Wmos mini D1 R1 9 Er 2 staat er niet)
    Als je zin heb graag een antwoord :-)
    groet
    leo

    • Hoi Leo,
      Leuk dat je de klok ook hebt gebouwd!
      Wat gek dat bij jou de kleur niet veranderd. Heb je dus het volgende?
      #define R_VALUE 255
      #define G_VALUE 0
      #define B_VALUE 0

      Dat verschil tussen pin 2 en 4 is een bekende. Kun je misschien het volgende board selecteren: “NodeMCU 1.0 (ESP-12 module)”
      Wellicht gaat dat beter. Volgens mij zit die in de ESP8266 library die je handmatig toe moet voegen. Wat je denk ik al eens gedaan had om de Wemos te kunnen gebruiken.

      Ik ben benieuwd!
      Gr. Tjalling

  2. Hoi Tjalling.
    Ja klopt ik heb rood 255 staan en dan is hij groen :-)
    Ook na dat ik NodeMCU 1.0 (ESP-12 module) hebt geselecteerd.
    En poort 4 aangesloten en 2 geselecteerd in software.
    Maar werkt verder perfect ik denk dat het in de strip zit zou kunnen toch?
    Ik heb een grote aluminium plaat besteld met de tekst 2x zo groot eruit gelasert en wil hem ook 2x zo groot maken :-)
    Het is een te gek bouwproject!
    Groet
    leo

  3. Hallo Tjalling

    Ik heb nu het goede board geselecteerd.
    Maakt niet uit rood blijft groen en visa versa :-)
    Aangesloten op pin 4 en 2 geselecteerd in de software.
    Misschien is de strip niet goed en draait hij de kleuren om.
    Wat maakt het uit het werkt perfect nu, ik ga er nu 1 bouwen 2x zo groot:-)
    Groet
    en dank Leo

    • Wauw Leo, ik ben echt heel benieuwd naar je resultaat straks! Dat is wel gaaf, zo’n aluplaat! En inderdaad gek van die strip. Wat je zegt, misschien zijn er wel verschillende versies. Heel veel succes verder met bouwen!

      O ja, op Bitlair zijn ze alweer ver gevorderd om een nieuwe workshop te organiseren. Een aantal zaken zijn samengevoegd op één PCB, zodat je geen zwevende onderdelen meer hebt aan de Wemos. Mocht je een tijdens die workshop langs willen komen (of überhaupt daar buiten), wees welkom. Ook al heb je hem al gebouwd dan denk ik, misschien vind je het gewoon leuk om gelijkgestemden te spreken. Als je wil, kan ik je een seintje geven als het gepland wordt. Het zal weer in Amersfoort zijn.

  4. Wat een gaaf project! Ik heb ook interesse in de workshop. Hoe en waar kan ik me aanmelden? Wat zijn de kosten voor de workshop? Alvast bedankt voor je reactie.

  5. Supervet! Ik heb hem ook gebouwd. Ik ben niet zo handig met Arduino software, maar ik ben van plan me er wel verder in te verdiepen.

    Heb wel inmiddels de software zo aangepast dat ik die via een webinterface kan updaten.

    Ik zou hem graag verder uitbreiden met
    – kleur kiezen via een web-interface
    – na elke vijf minuten een kort ‘rainbow’-effect of iets dergelijks, alleen over de leds met de ‘nieuwe’ tijdsaanduiding

    • oh nice! Ik weet dat ze bij Bitlair ook bezig zijn om de software te verbeteren. Die webinterface heb ik ook bij hun voorbij horen komen. Ik heb die behoefte ook al eens aangegeven. Bijvoorbeeld een kleur die correspondeert met het tijdstip van de dag. Bijvoorbeeld blauwig in de morgen en rood in de avond. Alleen zwart in de nacht is geen goed idee :)

      Als je je code zou willen delen tzt, dan zou dat top zijn!

Een reactie plaatsen