Appuppgradering
Appuppgradering installerar en ny applikation på dina Sensative VSM LoRa-trackers trådlöst.
Applikationen - appen - är det som bestämmer vad en tracker mäter, hur ofta den rapporterar
och vad den skickar med i rapporterna. Den består av upp till 64 små regler som trackern kör, och
den levereras som en .vso-fil från ditt Sensative-appbygge. Det här är inte enhetens
firmware: radion och LoRa-hanteringen påverkas inte av en uppgradering, och ingen firmware-avbild
är inblandad. Bara reglerna byts ut.
Tidigare var det enda sättet att byta app att hålla en NFC-telefon mot varje tracker. Yggio gör det nu på distans, över samma LoRa-nät som enheterna redan använder, till hur många enheter du vill samtidigt.
Huvudmenyn i Yggio visas på engelska, så menyvalet heter App Upgrade. Sidans eget innehåll och formulären är på svenska.
Innan du börjar
Appuppgradering är inte aktiverat för alla. Om du inte ser App Upgrade i huvudmenyn ber du din
Yggio-administratör att aktivera åtkomst till Appuppgradering på ditt användarkonto. Det är en
inställning per användare, så den måste aktiveras för varje person som behöver den, och du behöver
logga ut och logga in igen innan menyvalet visas. Administratörer aktiverar den genom att sätta
användarattributet app_upgrade_active till true i Keycloak, den inloggningstjänst Yggio
använder.
Du behöver också:
- Skrivrättigheter till varje enhet du vill uppgradera. Enheter du bara kan visa avvisas.
- Enheter som är Sensative VSM LoRa-trackers. Andra enhetsmodeller kör ingen regelapplikation.
- Enheter som är anslutna via en ChirpStack-nätverksserver. Yggio kan inte genomföra en uppgradering genom Netmore, Actility Thingpark eller The Things Network, så enheter på dessa hoppas över med en notering på raden.
- En
.vso-fil på högst 64 kB från ditt appbygge.
Vad en uppgradering gör med en enhet
En uppgradering är ingen uppdatering av delar. Yggio sätter först trackern i programmeringsläge, vilket tömmer dess regelminne, skickar sedan reglerna en i taget och säger till sist åt trackern att spara dem och starta om. Två följder är värda att känna till innan du börjar:
- En enhet vars uppgradering inte blir klar slutar rapportera. Regelminnet är tomt, så den har inga regler att köra och skickar inga mätvärden. Den finns fortfarande på nätet, tar fortfarande emot nedlänkar och kan uppgraderas igen - den är inte förlorad. Starta en ny uppgradering för den och den kommer tillbaka med den app uppgraderingen installerar. Till dess rapporterar den ingenting annat än checksumman för sitt regelminne.
- När en uppgradering startar slängs enhetens köade LoRa-nedlänkar. Överföringen kräver en tom nedlänkskö, så Yggio tömmer den först. Allt annat som väntar i kön - en ändrad rapporteringsintervall, ett konfigurationskommando - kastas och måste skickas igen efter uppgraderingen. Lägg dina konfigurationsändringar efter uppgraderingen, inte före.
Därför: installera en ny app på en tracker först, vänta till dess att den rapporterar mätvärden igen, och uppgradera flottan först då.
Enheter som redan rapporterar checksumman för den app du valt hoppas över som standard, så att köra om en uppgradering över en stor flotta rör bara de enheter som behöver det. Markera Programmera om enheter som redan kör den här appen om du vill att de raderas och laddas om ändå.
Ladda upp en app
Apparna finns i ett bibliotek på sidan App upgrade. Ladda upp en innan du startar en uppgradering med den.

- Öppna App Upgrade i huvudmenyn.
- I avsnittet Appar trycker du på Välj .vso-fil och väljer filen.
- Ändra eventuellt Appnamn - standard är filnamnet - och lägg till en Beskrivning så att dina kollegor kan skilja apparna åt.
- Tryck på Ladda upp. Yggio läser filen och visar hur många regler den innehåller och vilken mål-CRC den har.
Biblioteket visar, för varje app:
| Kolumn | Betydelse |
|---|---|
| App | Namnet du gav den, dess beskrivning och vilka sensorer dess regler kräver |
| Regler | Hur många regler appen innehåller, av maximalt 64 |
| Mål-CRC | Den checksumma en tracker rapporterar när appen är installerad. Det är appens identitet - så vet Yggio att en uppgradering lyckats, och så känns en enhet igen som redan är uppdaterad |
| Storlek | Storleken på den uppladdade filen |
| Uppladdad | När den laddades upp |
Yggio kontrollerar filen när du laddar upp den, så en fil som skulle lämna en tracker i ett dåligt
skick avvisas i stället för att skickas. En fil avvisas om den inte är en .vso-fil, är större än
64 kB, inte innehåller några regler alls, innehåller en rad med kompileringsfel, har en regel som
är tom eller längre än 32 byte, eller har regelnummer som ligger utanför intervallet, förekommer
flera gånger eller inte bildar en obruten följd från regel 0. Meddelandet anger vilken rad som är
fel så att du kan rätta filen och ladda upp den igen.
Enhetens firmware
Äldre Dots-firmware låser sig om en tracker får samma nedlänk två gånger, och en låst tracker behöver hanteras på plats. Nyare firmware har rättat detta. Inställningen Enhetens firmware talar om för Yggio vilken av de två den pratar med, och den sätts per uppgradering.
| Inställning | Vad Yggio gör |
|---|---|
| Äldre firmware (säkert för alla) | Skickar aldrig samma nedlänk två gånger inom en och samma uppgradering. Om en tracker tystnar frågar Yggio efter dess checksumma en gång och väntar sedan; om en tracker startar om mitt i en överföring ger Yggio upp för den i stället för att skicka om regler den redan hade. En ny uppgradering börjar om från programmeringskommandot, vilket är det som gör ett nytt försök möjligt. |
| Firmware med rättningen för dubbla nedlänkar | Får fråga en tyst tracker igen, och får ta upp en omstartad tracker där den slutade. Färre uppgraderingar behöver ett andra försök. |
Äldre firmware är standard, och det är det säkra valet. Att välja den nyare inställningen för en tracker som inte uppdaterats kan låsa den. Att välja den äldre för en uppdaterad tracker kostar ingenting mer än en extra uppgradering ibland.
Oavsett vilket skickas alltid en regel som trackerns egen checksumma bevisar aldrig kom fram - då tar trackern emot den för första gången, det är ingen upprepning.
Hur lång tid en uppgradering tar
Regler skickas som LoRa-nedlänkar, och hur snabbt de kan skickas avgörs av enhetens datahastighet (DR), som speglar hur bra radiolänken är. Siffrorna nedan gäller en app med alla 64 regler:
| Datahastighet | Överföringstid för 64 regler |
|---|---|
| DR0 | Omkring 3 timmar |
| DR1 | Omkring 1 timme 45 minuter |
| DR2 | Omkring 50 minuter |
| DR3 | Omkring 25 minuter |
| DR4 | Omkring 15 minuter |
| DR5 | Omkring 10 minuter |
Det här är golvvärden. En app med hälften så många regler tar ungefär hälften så lång tid, och utöver själva överföringen tillkommer väntan till dess att varje tracker rapporterar nästa gång: en tracker tar bara emot nedlänkar när den själv hör av sig, så en enhet som rapporterar en gång i timmen kan behöva en timme bara för att gå in i programmeringsläge. Väntan på programmeringsläge i startformuläret är hur länge Yggio väntar på det; tillåt minst två rapportintervall.
Enheter på DR0 - DR2 är långt från en gateway. De blir klara till slut, men överföringen är långsam. Enheter samtidigt begränsar hur många enheter som programmeras samtidigt, eftersom enheter som delar gateway konkurrerar om samma luft; ett lägre tal går långsammare men är mer pålitligt.
Uppgraderingar fortsätter i bakgrunden. Du kan stänga sidan, eller datorn, och komma tillbaka senare.
Starta en uppgradering
Uppgraderingar startas från dina enheter, inte från sidan App upgrade. Det finns två vägar.
Flera enheter samtidigt
- Öppna Devices i huvudmenyn.
- Markera de enheter du vill uppgradera.
- I raden som visas längst ner väljer du App upgrade under Select action.
- Välj den App som ska installeras och den LNS-konnektor som enheterna hör till. Låt
resten vara om du inte har skäl att ändra det:
- Programmera om enheter som redan kör den här appen - av som standard, så uppdaterade enheter hoppas över i stället för att raderas och laddas om.
- Enhetens firmware - lämna den på Äldre firmware (säkert för alla) om du inte vet att trackrarna har uppdaterats. Se nedan.
- Enheter samtidigt - hur många enheter som programmeras samtidigt.
- Väntan på programmeringsläge (minuter) - hur lång tid en enhet får ta på sig att hämta kommandot som startar programmeringsläget.
- Tryck på Starta uppgradering.

En uppgradering omfattar högst 200 enheter. Markera färre och kör flera uppgraderingar om du har fler.
En enskild enhet
Öppna enheten, gå till LoRa-kontroll och använd avsnittet Appuppgradering där. Det visar vilken app enheten rapporterar att den kör nu, och den förväntade överföringstiden vid enhetens egen datahastighet.

Följa förloppet
Sidan App upgrade listar dina uppgraderingar under Uppgraderingar, senaste först, med status för varje och hur många av dess enheter som är klara. Tryck på Visa på en rad för att öppna den.

Detaljvyn visar appen, dess mål-CRC och de inställningar uppgraderingen startades med, och räknar
sedan hur många enheter som är klara, överhoppade och pågående. Under det listas varje enhet med
sin DevEUI, en status och ett regelantal, till exempel 22 / 34. Klicka på en enhetsrad för att se
förloppet regel för regel: vilka regler som har skickats, vilka enheten har bekräftat, när, och hur
många försök varje regel krävde.

Den utfällda raden visar också den kontrollsumma enheten senast rapporterade, den kontrollsumma den körde innan uppgraderingen startade, och målkontrollsumman. En regel med fler än ett försök är en regel som skickades igen efter att enheten rapporterat en oförändrad kontrollsumma.
En enhet blir klar på en enda grund: sparkommandot lämnade dess nedlänkskö och det återstod ingenting att skicka. Det bevisar att nätet skickade sparkommandot, inte att trackern lyssnade. Varje klar rad visar därför redan målkontrollsumman - enheten rapporterar den när sista regeln kommer fram, innan sparkommandot ens är köat - så kontrollsummorna på raden kan inte visa om appen faktiskt sparades.
För att bekräfta att en uppgradering gick fram: öppna enheten, gå till LoRa-kontroll och kontrollera att den app enheten nu rapporterar att den kör är den du installerade. En tracker som var utan täckning när sparkommandot skickades visas som klar men rapporterar ändå ingenting; starta en ny uppgradering för den.
Enhetsstatusar:
| Status | Betydelse |
|---|---|
| väntar | I kö, inte startad än |
| tömmer kön, väntar på att kön töms | Rensar enhetens nedlänkskö så att överföringen börjar från ett rent läge |
| går in i programmeringsläge | Kommandot är köat; väntar på att enheten hämtar det vid nästa rapport |
| väntar på tomt regelminne | Väntar på att enheten bekräftar att regelminnet är tomt, vilket är beviset på att den är i programmeringsläge |
| skickar regler | Överför; enheten bekräftar reglerna när de kommer fram |
| skickar om förlorade regler | En regel kom inte fram. Yggio räknade ut vilken utifrån checksumman enheten rapporterade och skickade den igen |
| sparar och startar om | Alla regler är på plats; enheten har fått order om att spara dem och starta om |
| klar | Sparkommandot lämnade enhetens nedlänkskö och ingenting återstod att skicka. Bekräfta appen under LoRa-kontroll; kontrollsummorna på raden kan inte visa om den sparades |
| överhoppad | Ingenting skickades: enheten kör redan den här appen, eller den är på ett nät som Yggio inte kan uppgradera genom - raden visar vilket |
| misslyckad | Gav upp; se felet på raden |
En uppgradering är långsam av naturen. En tracker bekräftar bara regler när den rapporterar, så en enhet som står på samma regelantal i flera minuter är normalt och inget fel. En enhet som sover eller är utan täckning fördröjer bara sin egen överföring, inte de andras.
Själva uppgraderingen pågår medan enheter programmeras, och är slutförd, misslyckad eller avbruten när alla enheter är färdiga.
Stoppa en uppgradering och rensa
Tryck på Avbryt uppgradering på uppgraderingens egen sida för att stoppa den. Yggio slutar skicka regler och tömmer nedlänkskön för varje enhet som hade börjat programmeras. Enheter som fortfarande väntade på sin tur behåller de nedlänkar andra delar av Yggio har lagt i kö för dem.
Att avbryta återställer inte en enhet. En enhet som var mitt i överföringen har ett tomt regelminne och slutar rapportera till dess att en uppgradering lyckas, precis som beskrivs ovan; starta en ny uppgradering för den när du är klar. En ny uppgradering börjar alltid om från den första regeln.
Att ta bort en uppgradering raderar bara dess förloppspost. På sidan App upgrade markerar du de uppgraderingar du inte längre behöver och trycker på Ta bort markerade, eller trycker på Ta bort alla för att rensa hela listan. Du kan också ta bort uppgraderingen du tittar på från dess egen sida. Listan behåller alla uppgraderingar tills du tar bort dem, så det är värt att rensa då och då.
Bara en avslutad uppgradering kan tas bort. En uppgradering som fortfarande pågår har ingen Ta bort på sin sida, kan inte markeras i listan och utesluts från Ta bort alla - dess post är det Yggio driver överföringen från, så att ta bort den skulle lämna enheterna som programmeras utan någon som skickar resten av deras regler och utan någon som rensar det som redan ligger i kö. Avbryt den först och ta sedan bort den.
Att ta bort en app tar bara bort den ur biblioteket - enheter som redan kör den fortsätter köra den. En app som en oavslutad uppgradering fortfarande använder kan inte tas bort; avbryt den uppgraderingen först, och meddelandet anger vilken det är.
Om något inte fungerar
| Vad du ser | Vad det betyder |
|---|---|
| Inget App Upgrade i menyn | Åtkomst är inte aktiverad på ditt konto, eller du har inte loggat ut och in igen sedan den aktiverades. Kontakta din Yggio-administratör. |
| "Appuppgradering är inte aktiverat för ditt konto" | Samma som ovan. |
| Filen avvisas när du laddar upp den | Filen är inte en giltig .vso-app - se skälen ovan. Meddelandet anger vilken rad som är fel. Rätta filen och ladda upp den igen. |
| En enhet avvisas när du startar uppgraderingen | Du har bara läsrättigheter till den, eller den har redan en uppgradering eller en almanackssändning på gång. |
| Inget avsnitt Appuppgradering på en enhetssida | Enheten är inte en Sensative VSM LoRa-tracker, eller den är inte ansluten via en ChirpStack-nätverksserver. |
| En enhet är överhoppad | Den rapporterar redan den här appens checksumma, eller den är på ett nät som Yggio inte kan uppgradera genom. Vill du installera samma app ändå startar du om med Programmera om enheter som redan kör den här appen. |
| Alla enheter står på väntar | Uppgraderingen har inte börjat, eller konnektorn kan inte nå nätoperatören. Kontakta support om ingenting rör sig. |
| En enhet står kvar på går in i programmeringsläge | Den har inte rapporterat sedan kommandot köades. Trackers tar bara emot nedlänkar när de rapporterar, så tillåt minst två rapportintervall innan du oroar dig. |
| En enhet är misslyckad | Den slutade svara under överföringen, oftast dålig täckning eller en enhet som är offline. Regelminnet är tomt, så den rapporterar inga mätvärden till dess att en uppgradering lyckas - starta en ny uppgradering för den. |
| En app går inte att ta bort | En oavslutad uppgradering använder den fortfarande. Avbryt uppgraderingen, ta bort den och ta sedan bort appen. |
| En uppgradering går inte att ta bort | Den pågår fortfarande. Avbryt den först; en avbruten uppgradering kan tas bort. |