Mikrokontrollerin etäpäivitysjärjestelmä
Karell, Lauri (2018)
Karell, Lauri
Turun ammattikorkeakoulu
2018
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2018061113380
https://urn.fi/URN:NBN:fi:amk-2018061113380
Tiivistelmä
Opinnäytetyön tavoitteena oli kehittää käyttöjärjestelmättömälle mikrokontrollerille etäpäivitysjärjestelmä. Järjestelmän vaatimuksena oli, että laite automaattisesti jatkaa päivityksen aiheuttamasta vikatilanteessa huolimatta toimintaansa vanhalla ohjelmalla. Rajoitteena oli myös laitteen vähäinen muistin määrä.
Työssä kuvataan järjestelmän osapuolet, niiden väliset tiedonsiirron menetelmät ja päivitykseen liittyvät eri prosessit vaihe vaiheelta.
Päivitettävän laitteen muisti on jaettu niin, että sinne mahtuu bootloader, eli esilaataja, vanha ohjelma sekä uusi ohjelma. Bootloaderin, tehtävä on lukea pääohjelmien metatiedot ja niiden perusteella valita niistä toinen ajettavaksi. Ajettava ohjelma suorittaa laitteen tavallisten toimintojen, kuten esimerkiksi paikannin sijaintitietojen lähettämisen, lisäksi päivitykseen liittyvät toimenpiteet, joita ovat oman metatiedon päivittäminen, päivitysten tarkistaminen ja lataaminen. Tilanteissa, joissa virheellistä ohjelmaa ei voida ajaa, laitteen vahtiajastin käynnistää laitteen uudelleen, jolloin bootloader merkitsee ohjelman vialliseksi eikä enää yritä ajaa sitä.
Opinnäytetyö täytti asetetut tavoitteet. Työssä on kuitenkin tietoturvaan liittyviä riskejä, joiden takia järjestelmää tulee tällaisenaan käyttää vain tuotteen kehitysvaiheessa.
Työssä kuvataan järjestelmän osapuolet, niiden väliset tiedonsiirron menetelmät ja päivitykseen liittyvät eri prosessit vaihe vaiheelta.
Päivitettävän laitteen muisti on jaettu niin, että sinne mahtuu bootloader, eli esilaataja, vanha ohjelma sekä uusi ohjelma. Bootloaderin, tehtävä on lukea pääohjelmien metatiedot ja niiden perusteella valita niistä toinen ajettavaksi. Ajettava ohjelma suorittaa laitteen tavallisten toimintojen, kuten esimerkiksi paikannin sijaintitietojen lähettämisen, lisäksi päivitykseen liittyvät toimenpiteet, joita ovat oman metatiedon päivittäminen, päivitysten tarkistaminen ja lataaminen. Tilanteissa, joissa virheellistä ohjelmaa ei voida ajaa, laitteen vahtiajastin käynnistää laitteen uudelleen, jolloin bootloader merkitsee ohjelman vialliseksi eikä enää yritä ajaa sitä.
Opinnäytetyö täytti asetetut tavoitteet. Työssä on kuitenkin tietoturvaan liittyviä riskejä, joiden takia järjestelmää tulee tällaisenaan käyttää vain tuotteen kehitysvaiheessa.