Kyseessä siis Beaglebone AI ja Debian oletus image.
Tällä hetkellä joudun itse aina suorittamaan:
systemctl restart networking.service
Aina kun käynnistän laitteen uudelleen. Mikä on oikea oppinen tapa saada automaattisesti käynnistyksessä verkko ja nettiyhteys toimintaan?
Tällä hetkellä Linux käynnistyy myöskin työpöydälle ja haluaisin sen jäävän shelliin sekä suorittavan käynnistyttyään oman ohjelmani mikä hakee invertteriltä tietoja aurinkopaneelien tuotosta ja sähkömittarilta tietoja kulutuksesta. Mittausarvot painetaan tietokantaan ja niitä sekä ennustetta aurinkopaneelien tuotosta käytetään optimointiin kuormien päälle ohjausta varten siten, että aurinkopaneelien tuotosta saataisiin mahdollisimman paljon hyödynnettyä itse (esim. käyttöveden lämmitys ja sähköauton lataus sopivalla teholla). Ohjelma tarjoaa ulospäin REST rajapinnan ja html pohjaisen sivun mistä voi käydä katselemassa kuvaajia, tietoja invertteriltä ja releohjauksien tilan. Lisäksi vastaavia tietoja saa halutessaan suoraan mobiilisovellukseen.
Kuulostaa, että asetuksiin on jäänyt jokin vika (tai oletukset ovat pielessä), sillä kyllähän verkon pitäisi toimia automaattisesti. Onko verkko jostain syystä jäänyt pois käytöstä lähtötilanteessa (aja: systemctl enable networking.service
) tai antaako se jonkin virheen (aja: systemctl status networking.service
)? Ovatko verkkoasetukset oppaan mukaiset, ja jos ovat, niin mitkä tarkemmin? Yleensä asetuksissa pitäisi olla Debianissa kai jotain tällaista:
auto eth0 allow-hotplug eth0 iface eth0 inet dhcp iface eth0 inet6 dhcp
Oletuksena käynnistyy graphical.target, mutta graafinen työpöytä jää pois, kun asetetaan tavoitteeksi vain multi-user.target:
systemctl set-default multi-user.target
Oman ohjelman voi ajaa järjestelmän laajuisena palveluna tai tietylle käyttäjälle kuuluvana. Ensiksi mainittuun saa tehtyä monipuolisempia rajoituksia esimerkiksi käyttöoikeuksien suhteen (ja voi tietysti asettaa myös haluamansa käyttäjätunnuksen), toisaalta käyttäjän oma palvelu taas toimii käyttäjätilin oikeuksien rajoissa ja sitä voi myös helposti muokata käyttäjän omilla tunnuksilla.
Yleisen palvelun voi luoda, ottaa käyttöön ja käynnistää seuraavasti:
systemctl edit --force --full aurinkopaneeli.service systemctl enable --now aurinkopaneeli.service
Palvelun tiedostoon, jonka systemctl edit
avaa, voi kirjoittaa esimerkiksi jotain tällaista:
[Unit] Description=Aurinkopaneelien seuranta After=network.target [Service] User=kayttajatunnus Group=users WorkingDirectory=/home/kayttajatunnus/paneeli ExecStart=/usr/bin/aurinkopaneeli [Install] WantedBy=multi-user.target
Käyttäjäkohtaista palvelua varten pitää järjestelmän tasolla erikseen määrätä, jos haluaa käynnistää tietyn käyttäjän palvelut jo ilman kirjautumista. Loput komennot ovat muuten samat kuin edellä, mutta niihin pitää lisätä parametri --user
.
loginctl enable-linger käyttäjätunnus systemctl --user edit --force --full aurinkopaneeli.service systemctl --user enable --now aurinkopaneeli.service
Palvelun parametreja voi olla käyttäjän omassa palvelussa vähemmän:
[Unit] Description=Aurinkopaneelien seuranta [Service] # Kotihakemistoon (%h) ei voi viitata polussa vaan ainoastaan parametrissa, # joten hyödyllinen kikka on käynnistää vaikka Bash-skripti: ExecStart=/bin/bash %h/bin/aurinkopaneeli.sh [Install] WantedBy=default.target
Kiitos, tällä pääsen varmasti alkuun! Ohjeen mukaan alunperin kävin wifi asetukset läpi. Onkohan Beaglebone AI:lle mahdollista saada rautakiihdytystä työpöydälle käyttöön vai onko PowerVR pohjainen grafiikkapiiri huonosti tuettu Linux käytössä?
Jäänyt itseltä Linux harrastelu vähemmälle. IBM POWER alustalla AIX:ia ajanut ja vanhemmalla SGI raudalla Irix:ia. Näillä tosin kaikki vaan toimi hienosti ilman ylimääräistä säätelyä. Taisin muuten vihdoin saada hommattua OpenVMS harrastelija lisenssin ja saan kellarista Alpha rautaa hyötykäyttöön PL/I ohjelmointia varten.
Wifi onkin usein virhealttiimpi, ja myös vaihtoehtoja asetuksiin on enemmän, NetworkManager, suora wpa_supplicant ym.
PowerVR:lle ilmeisesti ei ole avoimen lähdekoodin ajureita. Suljettuja ajureita kannattaa ehkä tiedustella oman laitteen valmistajalta, tai neuvoa voi kysyä käyttäjäyhteisöstä. Laitteen sivuilla kuitenkin mainostetaan "BeagleBoard.org® open source Linux approach" ja tulee jopa Linux valmiiksi asennettuna, joten luulisi TI:ltä jotain löytyvän.
Kiitoksia! Langaton verkko toimii nyt hyvin ja laite käynnistyy shelliin työpöydän sijaan.
Grafiikan rautapuolen tukea en saanut kunnolla toimimaan, mutta pärjään tällä nyt. Pystyisiköhän joku kokeilemaan miten tämä Sudokun ratkaisija toimisi Raspberry Pi alustalla? Paketissa on 8th koodi ja valmiit binaarit useimmille alustoille. Tämä ihan vaan siltä varalta, että jos haluaisin myöhemmin lisätä koteloon lcd-näytön mistä näkyisi paikallisesti tiedot invertteriltä ja releohjauksien tilat. Käyttöliittymä on Nuklear pohjainen ja ilman toimivaa GL tukea ei ole käyttökelpoinen.
Sudokun ratkaisijassa hiirellä voi valita ruudukon aktiiviseksi ja pois aktiivisesta tilasta. Aktiivisessa ruudukossa voi liikkua nuolinäppäimillä ja käyttää numeronäppäimiä 0 - 9 asettamaan arvoja ruudukkoon. Ohjelmassa on yksinkertainen parseri Sudokun lukemiseksi tekstitiedostosta. Tekstitiedostossa Sudoku koostuu 81 peräkkäisestä numerosta. Tyhjänä ruutuna voi käyttää nollaa tai pistettä ja halutessaan rivinvaihtoja saa käyttää vapaasti.
No nyt on legacy näyttis ainakin, muistaakseni itselläni kun celeronit julkaistiin, oli ”3d korttina” power vr ennenkuin hommasin voodoon. En tiennyt noita olevan enää olemassakaan, ellei sitten jotain uusioversioita
groovyb kirjoitti:
No nyt on legacy näyttis ainakin, muistaakseni itselläni kun celeronit julkaistiin, oli ”3d korttina” power vr ennenkuin hommasin voodoon. En tiennyt noita olevan enää olemassakaan, ellei sitten jotain uusioversioita
No, itse valitsin Beaglebonen lähinnä parempien liitäntä mahdollisuuksien puolesta ja jos tarvitaan reaaliaika tukea, niin voi käyttää pru:ta erillisen mikrokontrollerin sijaan.
groovyb kirjoitti:
No nyt on legacy näyttis ainakin,
Ehkä firman fokus on muuttunut sitten 1990-luvun, mutta uudempia PowerVR-siruja löytyy Wikipedian mukaan mm. iPhonen versioista 4–6.
Aihe on jo aika vanha, joten et voi enää vastata siihen.