Jan-Gregers-problemet endelig løst!

I flere uker har vi hatt et stort problem med 2 av dronene våre: Jan og Gregers. Koden vår har fungert fint på begge de to andre dronene våre, men når vi har testet på Jan og Gregers har vi fått “Waypoint timed out” og “No FCU connection”. Vi har brukt utallige timer på dette og vi har til og med prøvd å ta kontakt med Intel for å få innspill (https://communities.intel.com/thread/127207). Da Max døde før ferien satt vi enda flere ressurser på problemet og tilfeldigvis fant vi ut av det i dag. 

Vi har lenge trodd at det var firmware-versjoner som ga oss problemer. Vi har prøvd å reinstallere alt på Jan flere ganger på ulike måter men ikke hatt noe hell. Vi har også undersøkt muligheten for å bruke noe annet enn mavros for å sende mavlink-meldinger til flight controlleren.  

Grunnen til at vi fant det faktiske problemet var at vi skulle sette opp den siste dronen, Gunnar, med QGroundControl. Vi hadde tidligere på dagen kjørt koden vår, som alltid har fungert på Gunnar, og alt gikk bra. Vi fikk endelig kontakt med QGC ved å endre på noen parametere og endre IP til laptopen i main.conf-filen til dronen. Etter det var gjort skulle vi teste koden vår igjen og da fikk vi helt samme problem på Gunnar som vi tidligere har hatt på Jan og Gregers. Frustrert over å miste enda en drone som faktisk flyr gikk vi tilbake og så på akkurat hva vi hadde gjort. Vi oppdaget da at vi tidlig i sommer har endret system-id på alle dronene i QGroundControl for å kunne ha flere droner koblet til QGC på en gang. Det viser seg at denne sys-iden tilegnes dronen og at vi bruker denne parameteren når vi initialiserer mavros. Vi har prøvd å bruke mavros sin default sys-id, som er 1, og det er grunnen til at det hele tiden har fungert på Max. Max var fra starten drone 1, og Gunnar fikk ikke endret sin sys-id før nå så det er grunnen til at det fungerte tidligere på Gunnar.  


 

Å løse dette problemet var en utrolig selvtillitsboost for teamet, og nå gleder vi oss til å vise frem hva vi har fått til!