====== Lavalampe til Jenkins ====== Jeg købte en [[https://www.aliexpress.com/item/USB-Rocket-Sequin-Lamp-Multi-Color-Changing-LED-Glitter-Night-Light-Lava-TH88-ES-TB-Sale/32555515590.html|billig lavalampe]]. Ved at skrue foden af og gå amok med en Dremel kunne printet (heldigvis fenolprint, som let kunne brækkes i mindre stykker inden i lampen) tages ud. Herpå sad en RGB LED med indbygget farveskiftschip og en 20 ohms modstand, som fungerede som varmelegeme. Det lykkedes at få plads til 3 stk RGB LED (WS2812-style), en [[https://www.aliexpress.com/item/Free-shipping-Digispark-ATTINY85-General-Micro-USB-Development-Board-for-Arduino-ATTINY85-usb-development-board/32510265413.html|ATTiny]], den originale modstand, samt en MOSFET til at tænde og slukke for varmelegemet. Et USB-kabel blev loddet på ATTiny-printet og ført ud igennem foden. For at gøre lampen mere stabil, og for at trækaflaste ledningen, kom jeg en god klat silikonefugemasse i foden og pressede en kraftig metalskive ned i det. På ATTiny'en ligger en simpel stump [[https://github.com/bullestock/lavalamp/blob/master/leds/leds.ino|kode]], der tillader at sende nogle få enkle kommandoer via USB (da den primitive USB-stak der er plads til ikke er helt compliant, er det nødvendigt at bruge noget dedikeret [[https://github.com/digistump/DigisparkExamplePrograms/tree/master/Python/DigiUSB/source|kode]] til at snakked med lampen. Kommandoerne er ''C////'' Sæt farven til den angivne GRB triple. F. eks. ''C000255000'' for rød. ''B////'' Skift mellem de to angivne farver. F. eks. ''C000255000000000255'' for at skifte mellem rød og blå. ''H////'' Tænd/sluk varmelegemet. ''D////'' Sæt delay mellem blink (millisekunder).