(Nieuwe pagina aangemaakt met '{{Project |Naam=Lounge Ledjes |Eigenaar=BugBlue, dvanzuijlekom, SA007 |Status=Uitvoer |Skills=Plakken, Programmeren, Python |Samenvatting=De lounge voorzien van ver...') |
|||
Regel 8: | Regel 8: | ||
== De ledjes == | == De ledjes == | ||
Dit zijn ledstrips van het type WS2812, 1 per 10cm, 50 stuks per string. | Dit zijn ledstrips van het type WS2812, 1 per 10cm, 50 stuks per string. | ||
− | Totaal zijn het ongeveer | + | Totaal zijn het <s>ongeveer</s> 790 ledjes |
== Installatie == | == Installatie == |
Versie van 8 dec 2019 22:08
Project: Lounge Ledjes | |
---|---|
Naam | Lounge Ledjes |
Door | BugBlue, dvanzuijlekom, SA007 |
Status | Uitvoer |
Madskillz | Plakken, Programmeren, Python |
Doel / Omschrijving | |
De lounge voorzien van verlichtering | |
Alle Projecten - Project Toevoegen |
De ledjes
Dit zijn ledstrips van het type WS2812, 1 per 10cm, 50 stuks per string.
Totaal zijn het ongeveer 790 ledjes
Installatie
Alle ledjes als 1 lange string ophangen in een leuk patroon, elke strip is voorzien bij de power-source van een kroonsteentje.
Dit is nodig omdat de meeste kabel van de ledjes van aluminium is en de voltagedrop over 5 meter teveel is om te zorgen dat er nog een beetje overblijft voor de ledjes. De weerstand van de kabel en de PCB's ertussen is te hoog. Dus elke strip krijgt netjes power toegevoerd.
Er is een voeding van 25A 5V boven het plafond die zit aangesloten op de lichtgroep, hiermee worden de ledjes gevoed.
Software
Op de ESP32 aan het begin draait micropython die op poort 4242 pakketten in het volgende formaat ontvangt:
Start << 8, Start, Data
De software in de micropython ontvangt deze data als UDP packet, en zet dan de databytes vanaf de startpositie in de bytearray van NeoPixel.buf
Daarna wordt Neopixel.write() aangeroepen en die stuurt in ongeveer 33ms de data naar alle ledjes.
Inclusief overhead van het netwerk is dus een framerate van ongeveer 25 te halen, behalve dat wireless op 2.4Ghz eigenlijk best traag is. Overschakelen op Ethernet kan een optie zijn om het in de toekomst te verbeteren
Aansturing
Op kleintje in ~/lampjes draait een stukje software, in mods staan de mogelijke commando's die als generator een berg data teruggeven die naar de ledjes gaat. De module selecteren kan door de naam te sturen naar mqtt 'hack42/lampjes'. Wit flitslicht is bijvoorbeeld:
mosquitto_pub -t hack42/lampjes -m flash
Als de module een maximum heeft (zoals flash) of er gaat iets mis (niet bestaande module selecteren) of de spacestate gaat open selecteerd de software standaard 'rainbow'. (Op dit moment)
Todo
Pixelmapping, zodat er ook lounge-brede en -lange patronen verstuurd kunnen worden op een makelijke manier.
Pixelmapping kan op kleintje in software worden geimplementeerd zodat de ESP hier geen cycles voor hoeft te verbranden.
Refresh commando, dit om te zorgen dat er niet halverwege de datastroom elke keer refreshed wordt. Dit om de 25fps te halen.