projects:lichtkrant

Lichtkrant

Hello world!
Ron heeft het op 1 mei 2019 voor elkaar gekregen om met een Arduino Uno tekst op de lichtkrant weer te geven. Deze lichtkrant werkt op basis van shiftregisters en moet actief gemultiplext worden. Op de printplaat zat een microcontroller die ik er af heb gewipt. Aan de verbindingen die naar de shiftregisters gaan heb ik draadjes gesoldeerd en verbonden met de Arduino. Aan de draadjes zitten labels die aangeven waar ze voor zijn. Waarschijnlijk heeft Ron de Hello World Arduino sketch nog.

Het plan + ideeën
Het oorspronkelijke plan was om de lichtkrant bij het SpaceMap project te gebruiken. Een aantal ideeën voor de lichtkrant:

  • De lichtkrant aansturen met een ESP8266/ESP32
  • Gebruiken als klok in de labruimte

In november 2020 heeft Ron besloten om de lichtkrant met een ESP8266 aan te sturen en te gaan gebruiken als klok voor in de labruimte.

Hello world op ESP8266
In juni 2021 is het gelukt om het hello world programma te laten draaien op een ESP8266. Tijdens het testen waren er problemen met de level shifter.

De lichtkrant maakt verbinding via WiFi, haalt de huidige tijd op en geeft de tijd weer. De klok past zich automatisch aan aan zomer- en wintertijd.

Wanneer iemand op de deurbel drukt, verschijnt de knipperende tekst Deurbel! op de lichtkrant.

Wanneer de SpaceMap ziet dat er een hackerspace open of dicht gaat, publiceert hij een bericht via MQTT die door de lichtkrant wordt weergegeven. Zie hieronder een voorbeeld van zo'n bericht:
TDvenlo gaat open: +TDvenlo
TDvenlo gaat dicht: -TDvenlo

  • De originele processor is gedesoldeerd. Een ESP8266 stuurt via zijn footprint de shiftregisters aan.
  • 74HC595N shift registers
  • Scherm resolutie: 72×7 pixels

projects:lichtkrant_bitmap.png

  • De software is in Arduino geschreven
  • De lichtkrant wordt gemultiplext met een interrupt-timer
  • Verversingsfrequentie: 142.85Hz

Wanneer de ESP8266 opstart en niet kan verbinden met het netwerk, dan zal hij een WiFi portal starten waarmee je het gewenste WiFi-netwerk in kunt stellen. Verbind dan met het netwerk LichtkrantAP.

Voor het uploaden van een programma moet de “brightness” schakelaar op LO staan.
Uploaden via OTA is ook mogelijk. Zie het wachtwoord in de broncode.

Het is heel lang een probleem geweest dat de ESP8266 na een aantal uur de wifi-verbinding kwijtraakt en daarna niet meer kan herverbinden. De oplossing is om de WiFi sleep mode uit te schakelen door de volgende regel toe te voegen aan de code: WiFi.setSleepMode(WIFI_NONE_SLEEP)
https://github.com/esp8266/Arduino/issues/5998

Deurbel

Spacemap

Overig

De lichtkrant publiceert de volgende topics naar MQTT:

  • onTime: Het aantal seconden dat de lichtkrant aanstaat. Dit wordt gebruikt in grafana om weer te geven wanneer er spanning op de labtafels staat.
  • Een wifi-configuratieportal toevoegen om hardgecodeerde wachtwoorden weg te halen
  • Verbinden met de deurbel via MQTT
  • Verbinden met de spacemap?
    • Een MQTT topic aanmaken waar de spacemap naar kan publishen (lichtkrant/spacemap_msg)
    • Subscriben naar een MQTT topic van de spacemap (spacemap/state_change_msg)
    • Payload in json:
      • space_name [string]
      • new_status [string]
      • timestamp [?]

Sinds 30-03-2022 is het niet meer mogelijk om de tijd te verzetten. De tijdzone waarin wij ons bevinden is nu hardgecodeerd. De klok zou nu automatisch van zomer- naar wintertijd moeten springen.

  • projects/lichtkrant.txt
  • Last modified: 12/04/2024 23:38
  • by ron