#nerdalert, vi nærmer os nytår, men vi kan lige nå årets sidste juletråd 🎄🙂
Det var en hyggelig jul med hele familien ❤️ - mine forældre havde fjernstyrede lys på træet, men hvordan virker de?
Som altid i mine tråde, er der meget at udforske for den nysgerrige 🤓 🧵
Det viser sig at fjernbetjeningen var med IR (infrarødt lys, som ved TV fjernbetjeninger).
Eftersom jeg ikke fik mange point på tanken om at skille den ad ved sofabordet (what could ever go wrong? 🤷🏼♂️😂), brugte jeg min #flipperzero til at optage signalet fra de 5 knapper. Det vender vi tilbage til senere 🙂
Et af lysene var defekt, “det må du kunne fikse, Søren!” (story of my life..) “Jeg kan da prøve, men jeg lover ingenting 😈”
Lysene kører på et enkelt AAA batteri og de er kodet til at reagere på fjernbetjeningen, det kigger vi nærmere på om lidt.
Lyset var iøvrigt ødelagt, mine forældre skal lære at fjerne batterierne når de lægger dem tilside til næste jul 💦🪫☺️
Tilbage i mit lab og det er tid til at kigge på de optagelser jeg lavede med ‘delfinen’: hver kode starter ud med en lang puls, sikkert en ‘preamble’ -> nu vågner det lille lys og er klar til at modtage data. Derefter følger en række pulser, som fortæller lyset hvad det skal gøre: tænde, slukke, dæmpe, osv.
Zoomer man, kan man se at alle pulserne i virkeligheden er et 38kHz firkant signal. Det er ret smart, for så reagerer lyset ikke på tilfældig ‘støj’, der SKAL være 38kHz i signalet før det reagerer.
Inde i lyset er der en lille printplade som styrer den lille hvid/gule lysdiode, der udgør ‘flammen’. De to vigtigste komponenter er en IR modtager (rød cirkel) og en lille 6-benet mikroprocessor, grøn cirkel.
Processoren er en underlig kinesisk sag, den kunne jeg ikke finde data på. Men IR sensoren er en ret kendt type, og den er der masser af info på. De er overraskende komplekse, bag de tre ben gemmer sig et komplet modtager kredsløb, designet til de 38kHz. Lidt som en radio, bare med infrarødt lys. Når den modtager en kommando via IR lys fra fjernbetjeningen, konverterer den det til data, der bliver sendt videre til processoren som så pænt udfører ordren 🙂
Hver knap på fjernbetjeningen har sin egen datakode, I kan se de er forskellige. Og nu er det, at vi går lidt over i gætværk, hvordan er koderne opbygget? Der er for så vidt ingen regler for kinesisk designede juletræ lys, men der er nogle metoder man kan anvende, for at få et mere robust system. Nu bliver det tricky 🤓
Hvis man ser bort fra den første lange puls, kan man skrive en binær tal sekvens op for de efterfølgende pulser. I kan se at man går fra ‘0’ til ‘1’, derefter 0-1 igen, 01, 01 osv.
Det er normalt at man bruger en ‘Manchester Kode’, dvs. det er overgangen fra ‘0’ til ‘1’, eller vice versa, der afgør om data er et ‘1’ eller et ‘0’.
‘Manchester koden’ giver ekstra robusthed mod fejl: juletræ lyset har bedre chance for at reagere korrekt på IR signalet. Nu kan man skrive de 5 talkoder op, en for hver knap (se rød tekst på billedet) De er alle, undtaget en enkelt, lige lange. Og de starter alle med ‘11111’, så selve beskeden ligger i den resterende del af signalet..
Den lille processor er kodet til at reagere på disse signaler og nu kan man styre lyset med fjernbetjeningen 🙂
Slut på 🧵 Glædelig bag-jul allesammen, og rigtigt godt nytår 🥂🍾
Og husk: der er altid et lag, eller flere, lige under overfladen, som man kan udforske 🙂🙂
@threadreaderapp unroll pls
Share this Scrolly Tale with your friends.
A Scrolly Tale is a new way to read Twitter threads with a more visually immersive experience.
Discover more beautiful Scrolly Tales like this.
