Autosuunnistus.netin foorumissa keskustellaan juuri nyt alkuvuodesta 2016 vilkkaasti autosuunnistuksen tulevaisuudesta ja älypuhelinten käyttämisestä kelloina, trippeinä ja compuina. Tällä sivulla esitän omia ajatuksia siitä miten eri web-sovelluksia voitaisiin käyttää autosuunnistuksessa nykyisten laitteiden sijaan ja ehkä myös kehittäen niiden toimintoja. Etusivulla olevien kuvakkeiden takana löytyy toimiva AS-Kello testtatavaksi ja vapaasti käytettävksi. Muuten esitän kuvauksia muista eri vaiheessa olevista projekteistä. Tämän sivun lopussa on myös Disqus-keskustelualue jossa voi esittää kysymyksiä ja kommentteja.
Itse olen hankinnut tämän telineen. Istuu tukevasti kiinni kojelaudalla mutta jos painaa näyttöä muualla kun keskellä niin puhelin käyntyy helposti alta pois eli teline vaatii vähän parantelua. Exogearilta löytyy myös tablettiteline, joka vaikuttaa tukevalta. Näiden imukuppien huono puolihan on että niistä jää jälkiä kojelautaan. Nykyään puhelimet ja tablettit voidaa laadata autolatureilla.
Web-sovellukset koostuvat yhdeltä html-sivusta ja tarvittavista javascript- ja CSS-tyylimäärittely-tiedostoista. Usein käytetään valmiita kirjastoja jolla rakennetaan sovellusten käyttöliittymiä ko sivulle. AS Appit-kehityksessö on käytetty Webix-sovelluskehystä (frameworkia). Sillä pääsee helposti käyntiin mutta maallikolle webixin dokumentaatio on aika niukka ja olen joutunut - kuten yleensä - turvautumaan "trial and error"-menetelmään. Webixin kautta pääsee myös hyödyntämään Awesome:n fonttikokoelma. Kaikki "mahtavat" kuvakkeet sovelluksessa ja sivustossa tulevat tästä kokoelmasta. Ne ovat skaalautvia ja määrittely tapahtuu fontti-määrittelyn avulla.
Manifest-tiedostojen avulla web-sovellus lataa kaikki tarvittavat tiedostot puhelimeen tai tablettiin. Näin ollen web-sovellukset toimivat vaikka laite ei ole verkossa. Web-sovellukset ovat kuitenkin vain nettisivuja, jotka pyörivät selaimessa, eivät heillä sen takia ole oikeuksia saada tietoja esimerkiksi puhelimen gps-vastaanottimelta.
Olen käyttänyt Notepad++ tiedostojen muokkaamiseen ja Chrome-selaimen kehitystyökalut sovellusten testaamiseen ja virhe-etsintään. Jos joku on kiinnostunut sovellusten lähdekoodista voin kyllä toimittaa - siivouksen jälkeen ☺. Yhteystietoni löytyy alempana.
Olen käyttänyt aika tuoreita tekniikoita ja sovellusten kello- ja mittausscriptit pyörivät omissa säkeissä nk. Web workersien avulla joten puhelimet pitää varmasti olla suhteellisen uusia ja niiden prosessoreissa pitää olla useita ytimiä. Olen voinut testata vain muutamilla Android-puhelimilla enkä voi siten taata että sovellukset toimivat Windows Phonessa tai iOS-järjestelmissä. Eli toivottavasti testatte ja annatte palautetta siitä miten toimii.
Sovellus otetaan käyttöön klikkamalla ko sovelluksen sivulla olevaa linkkiä siinä puhelimessa tai tabletissa jossa sovellus on tarkoitus ottaa käyttöön. Sovellus on lisättävä kuvakkeeksi puhelimen työpöydälle. Kun sovellus käynnistetään painamalla kuvaketta se kääntyy oikeasuuntaisesti - kello toimii vaakatasossa puhelimessa - ja täyttää koko selainikkunaa. Kuvakkeen lisääminen toimii eri tavalla eri puhelimissa ja selaimissa. Esim. Androidin Chromessa painetaan osoiterivin oikealla puolella olevia pisteitä ja valitaan Lisää kotinäyttöön. Tarkista oman laitteen käyttöohjeesta miten toimii siinä. iOS:n Safari-selaimessa tämä tapahtunee tällä tavalla.
Web-sovellukset pitäisi päivittää itsensä kun ne "huomaavat" että sovelluksen manifest-tiedot ovat muuttuneet. En ole saanut tätä toimimaan minun puhelimessa taikka tietokoneen selaimessa. Olen tyhjentänyt Chrome-selaimen välimuistia historiatiedoista (Cache ja Appdata) ja seuraavan kerran kun olen avannut sovelluksen painamalla sen kuvaketta uusi versio on ollut käytössä. Tämä edellyttä tietysti että laite on verkossa ja voi hakea kaikki tiedostot uudestaan palvelimelta. HUOM! Välimuistin tyhjentäminen poistaa myös muiden sovellusten tai sivustojen tallentamia tietoja.
Itselläni on Raspberry Pi eli nk. luottokorttitietokone kaapissa. Näissä pyörii Linux-käyttöjärjestelmä samalla kun niihin voidaan kytkeä erilaisia antureita GPIO pinnien avulla. Niihin saa myös Wifi-adaptereita kiinni. Eli tarkoitus on virittää Pi:n ohjelmistoa siten että siinä pyörii DHCP-palvelin joka antaa ip-osoitteita web-sovelluksia pyörittäviin älypuhelimiin tai tabletteihin. Pi:hen pinneihin kytken reedkytkimen ja Linuxin alla pyörivä skripti välittää reedkytkimestä tulevia impulsseja tapahtumina websocketien avulla sovelluksiin. PI:ssä oleviin pinneihin voitasiin myös kytkeä tripin nolluskytkimia ja peruutusvaihteen valitsemiseen liittyvä kytkin. Löytyy ymmärtäkseeni muitakin tapoja saada signaaleja auton etenemisestä kuin reedkytkimeltä. Laite pitää olla liitettynä Raspberry Pi:n muodostamaan langattomaan verkkoon ja Pi:n ip-osoite tiedossa jotta sitä voi tallentaa sovellukseen. Kuulostaa yksinkertaiselta mutta saa nähdä saanko toimimaan. Jos tämä toimii voin ajatella että Pi:ssä pyörivä järjestelmä voitaisiin jakaa valmiina leyvkuvina. Se voidaan kirjoittaa SD-muistikorttiin Pi:hen laitettavaksi. Jos puhelin tai tabletti laitetaan lentokentotilaan ja liitetään tällaiseen langattomaan verkkoon ei kai voida enää puhua yhteydenpitovälineeltä eli ei olisi sääntöjen vastainen?
Tulevaisuudessa voitaisiin ajatella että koko tuloslaskenta pyörisi verkossa. Kun kilpailijat tulevat kilpailupaikalle he saavat PIN-koodin jolla heidän käyttämä sovellus hakee ajomääräystä netistä. Aikatarkastusasemien käyntiajat ja reittitarkastusasemien käyntijärjestys tallentuu sovellukseen kilpailun aikana ja maalissa (ja tauolla) tiedot siirretään tuloslaskentasovelluksen tietokantaan ja tuloslaskenta tapahtuu itsestään ...
Kartturi sai lukiolta Ipadin. Oivalsin että voidaan tehdä offline-tilassa toimivia nettisivuja autosuunnistuskäyttöön. En siinä vaiheessa tiennyt juuri mitään HTML5:stä ja web-sovelluksista. Laite oli tietysti varattu enkä saanut paljon aikaan. Syksyllä 2014 hankin itselleni ensimmäisen älypuhelimen (LG G3 S) ja aloitin kehittelyä uudestaan ja perehdyin tarkemmin siihen miten tehdään web-sovelluksia. Keväällä 2015 ensimmäinen toimiva kelloversio oli käytössämme Lapuan harkkarissa. Toimii aika hyvin ja sen jälkeen olen silloin tällöin lisännyt ja parantanut toiminnallisuutta ja suunnitellut muita sovelluksia.
Minut saa kiinni sähköpostitse mmelin64(at)gmail.com. Seuraan keskustelua alla jos sellaista syntyy ja autosuunnistus.netin foorumia mutta en ole naamakirjassa ☺. Äidikielini on ruotsi joten saa antaa palautetta myös sivuston ja sovellusten kieliaususta ☺.
Keskusteluun voi osallistua luomatta tilin Disqusiin mutta nimi ja sähköpostiosoite on annettava jotta viestisi menisi läpi.