LED-valonauha työtasoa valaisemaan

Keittiön työtasojen valaistus jätti toivomisen varaa, joten asia piti korjata. Jo aiemmin varastoon tilatuista osista syntyi Home Assistantiin liitetty, kevyt ratkaisu – mutta ei aivan ilman mutkia.

Tarvikkeet

Monet tähän projektiin liittyvistä osista voi hankkia paikallisista elektroniikkaliikkeistä tai, jos ei ole kiire, AliExpressistä. Oheiset linkit johtavat jälkimmäiseen.

Rakentaminen

Tarkoitus on hyvin yksinkertaisesti liittää LED-nauha Wemos D1. Mini -mikrokontrollerin ohjattavaksi. Vastaavia toteutuksia on dokumentoitu niin erilaissa nettiartikkeleissa kuin YouTube-kanavissakin. Itse poimin oppeja erimerkiksi tästä ja tästä sekä ESPHome-dokumentaatiosta.

Omassa käyttötapauksessani LED-nauhassa on 15 lediä, joista jokainen vie noin 60 mA ja Wemos D1 Mini noin 500 mA, joten valitun 3A virtalähteen pitäisi riittää tarkoitukseen mainiosti.

Lähteissä esille tuotu kytkentä on perin simppeli, joten hankaluuksia ei pitäisi olla tiedossa. LED-nauhan liitosjohdoista punainen juotetaan Wemos D1:n 5V-nastaan, musta johto GND-nastaan ja sininen liitetään suojaavan vastuksen kera esimerkiksi D4-nastaan. Nastat selviävät mm. täältä. Mikä voisi mennä vikaan?

”Ohjelmointi”

Wemos D1 Minille EspHome:lla fläshättävän ohjelman (tai oikeammin yaml-konfiguraation) kirjoittamiseen löytyy apuja esimerkiksi aiemmin mainituista lähteistä, mutta pientä tuunaustakin tarvittiin. ESPHome.io -sivustolta nimittäin selviää, että kirjoitushetkellä ledinauhaa ohjaavan fastled_clockless ei toimi oikein uusimmalla 8266-alustalla, jolloin yaml-koodissa pitää viitata sen aikaisempaan versioon. Vaihtoehdoksi tarjottiin myös NeoPixelBus Lightin käyttämistä, mutta sen kokeilu jäi toiseen kertaan.

Oheinen koodi lienee muilta osin helposti luettavaa, jos on aikaisemmin yhtään käyttänyt ESPHomea. Salaisuudet löytyvät hyvän tavan mukaisesti secrets.yaml -tiedostosta. Rivi ”fast_connect: true” auttaa tilanteessa, jossa wifi-verkko on piilotettu. Ja jostakin syystä värien järjestys on ”rgb_order: GRB”. Koodin kolme viimeistä riviä/asetusta ovat itse asiassa kaikki nyt oletusarvoissaan, mutta testailin niitä askartelun aikana kutakin eri arvoilla.

esphome:
  name: tyotason-valo-01

esp8266:
  board: d1_mini
  framework:
    version: 2.7.4

logger:

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  fast_connect: true
  output_power: 20

api:
  password: !secret esp32_ota_password
ota:
  password: !secret esp32_ota_password

light:
  - platform: fastled_clockless
    chipset: WS2812B
    pin: D4
    num_leds: 15
    rgb_order: GRB
    name: "tyotaso-01"
    default_transition_length: 1s
    restore_mode: RESTORE_DEFAULT_OFF
    color_correct: [100%, 100%, 100%]

Kytkentäsavut!

Niinpä niin, tämä(kään) nörtteily ei mennyt kuin Strömsössä. Kokonaista kaksi kertaa oli syytä ottaa silmä kouraan, fundeerata hetkinen ja tehdä muutoksia ennen kuin projekti oli maalissa.

Ensinnäkin, on väärin olettaa, että LED-nauhojen päissä olevien JST-liittimien johtojen langoitus olisi standardoitu – tai että sitä kaikkien valmistajien toimesta noudatettaisiin. Niinpä savujen hälvennettyä kävi ilmi, että hätäisesti vain yhteen painettujen LED-nauhan ja liitäntäkaapelin liittimissä 5V ja GND -johdot ovat tasan vastakkaisissa reunoissa. Hupsista!

Ja toiseksi, sillä todella on väliä, mistä päästä LED-nauhaa kontrollisignaalia syötetään. Kolmekymmentä LED:iä pitkän (ja tätä projektia varten keskeltä katkaistun) nauhan molemmissa päissä oli liittimet, koska nauhoja voit ketjuttaa — mutta kontrolleri pitää toki kytkeä oikeaan päähän. Tämä innokas harrastaja ei hetimiten hoksannut, että passeli kytkentäsuunta selviää helposti nauhaan tulostetuista nuolista… Elämä todella on oppimista varten.

Lopullinen kytkentä

Koska ennen ensimmäisen kytkentävirheen hoksaamista oli epäilys, että D1 päästi savut siksi, että sen läpi kulkeva virta on liian suuri, otin LED-nauhalle virrat suoraan virtalähteen johdosta. Lopputulema ei ole niin siisti kuin alun havainnekuvassa, mutta toimiva. Allaolevasta kuvasta käy ilmi miltä toimiva kytkentäni näytti ennen siistimistä ja paketoimista. LED-nauha on tuossa vaiheessa jo liimattu alumiiniprofiilikotelon sisälle.

Kuvassa olen siirtänyt myös vastuksen eli ohjaussignaalin pinnistä D4 pinniin GPIO3 eli RX, koska epäilin jossakin kohdassa polttaneeni D3-pinnin 🙂 Koodiin tämä tarkoittaa pientä muutosta ”pin: D4” -> ”pin: GPIO3”.

Askartelut Home Assistantin puolella

Sen jälkeen kun tuo yaml-konfiguraatio on fläshätty Wemos D1:lle ja lokeista näkyy, että lutikka pääsee wifiin kiinni, Home Assistantissa määritellään tämä uusi ESPHome-integraatio. Jostakin videosta hoksasin, että IP-osoitteen sijaan laitteisiin voi viitata osoitteella nimi.local, eli tässä tapauksessa ”tyotason-valo-01.local”. Sen jälkeen valoa voi alkaa käyttämään.

Home Assistantin dashboardille voi luoda Light-kortin, jonka avulla saa helposti valon päälle/pois, mutta siitä on helppo säätää myös valon kirkkautta, väriä, jne.

Valokohtaisiin lisävalintoihin Light-kortin oikean yläreunan kolmesta pisteestä.

Tai sitten voi lisätä kyseisen valon samaan Home Assistant dashboardin Entities-korttiin muiden valojen kanssa. Sillä tapaa saa helposti myös kaikki valot kerralla pois päältä.

Kuitenkin arjessa kaikkein käytännöllisintä lienee (lisäksi) liittää kokonaisuuteen fyysinen, langaton painike, jolle määritellään esimerkiksi seuraavan kaltainen automaatio. Se sytyttää ja sammuttaa (toggle) työtason valon langatonta painiketta painettaessa. Tuollaisen pienen, langattoman kytkimen voi sitten sijoittaa mihin tahansa haluamaansa paikkaan vaikka tarralla. Pieni nappiparisto tuntuu kestävän uskomattoman kauan.

If it works, don’t touch it?

Kunhan Kiinan pojat henkilöt saavat toisen virtalähteen perille asti, voisin toisen ledinauhan osalta kokeillaversiota, jossa…

  • otan ledinauhan virran mikrokontrollerista,
  • käytän NeoPixelBus Light -alustaa ja
  • tutkin automaation kautta tehtäviä lisäsäätöjä (kuva alla).

Mutta nyt kun tämä kerran toimii, niin eipäs kosketa…

Advertisement
Kategoriassa Yleinen

Vastaa

Täytä tietosi alle tai klikkaa kuvaketta kirjautuaksesi sisään:

WordPress.com-logo

Olet kommentoimassa WordPress.com -tilin nimissä. Log Out /  Muuta )

Twitter-kuva

Olet kommentoimassa Twitter -tilin nimissä. Log Out /  Muuta )

Facebook-kuva

Olet kommentoimassa Facebook -tilin nimissä. Log Out /  Muuta )

Muodostetaan yhteyttä palveluun %s