Cursor + ArduPilot — settings opzoeken, opschrijven, toepassen

We programmeren de Pixhawk niet “uit het hoofd”. We zoeken settings op, schrijven ze op, en gebruiken die als input.
Ergens halverwege de stack vroeg ik me af: staat ELRS nou al op SERIAL2_PROTOCOL = 23? Ik dacht van wel. De backup zei van niet. Dat moment — “ik denk” vs “de dump zegt” — is precies waarom we dit zo doen.
ArduPilot is een grote lijst parameters op de FC. Die kun je ophalen en aanpassen — zie ArduPilot-settings. In deze build doen we dat met Cursor: de agent leest docs en backups, stelt voor wat er nog moet, en houdt de documentatie bij. Mission Planner schrijft naar de board. Cursor flasht niks zelf.
Welk probleem we oplossen
Op de Pixhawk 6X Mini moet van alles goed staan: GPS, CAN, ELRS, batterij, later OSD. Uit je hoofd gaat dat fout. We wilden:
- Settings opzoeken (wiki, Holybro, ELRS-docs).
- Dat documenteren in de build-docs (onderdelen + voortgang).
- Die docs + een param-backup als input gebruiken bij de volgende stap.
Hoe / waarom / welk probleem: minder giswerk, een spoor in git, en een checklist vóór we veilig vliegen.
Hoe we het doen
1. Opzoeken
We lezen de officiële bron. Voorbeeld: ArduPilot DisplayPort, CRSF/ELRS, Holybro-setup voor H-Flow of F9P.
Cursor helpt: “wat moet SERIAL2_PROTOCOL zijn voor ELRS?” → antwoord met bron + waarde. Geen “voelt als 23”.
2. Documenteren
Elke keuze komt in een onderdeelpost of in de voortgangsdocumentatie. Kort. Met params. Met links.
Checklist: ArduPilot-settings — voortgang.
Daar staat: gedaan / todo / later. En de echte waarden uit onze dump.
3. Backup van de FC
Via Mission Planner: parameters ophalen → Save to file.
Bestanden in de repo:
docs/firmware/param-backups/pixhawk6x-mini-latest.param— volledige lijstpixhawk6x-mini-YYYYMMDD-….param— snapshot met datum
Cursor (en wij) lezen die dump. Zo weten we wat er nu op de board staat. Niet wat we “denken” dat er staat.
4. Als input gebruiken
Volgende vraag in Cursor: “ELRS staat nog op todo. Welke params moeten we zetten, gegeven de backup?”
De agent:
- leest de backup (
SERIAL2_PROTOCOLis nog 2, niet 23); - leest ELRS-setup;
- stelt de set params voor;
- werkt de voortgangsdocumentatie bij.
Daarna schrijven we die params in Mission Planner (Write Params). Props eraf. Testen. Nieuwe backup.
Wat we in de repo hebben vastgelegd
| Wat | Waar |
|---|---|
| Skill | .cursor/skills/ardupilot-params/SKILL.md |
| Rule | .cursor/rules/ardupilot-params.mdc |
De skill zegt: lees eerst de param-backup + deel 27. Stel geen params “uit het niets” voor. Houd NL/EN-documentatie en status bij.
Poortkaart die we steeds herhalen (zodat niemand TELEM1/2 door elkaar haalt): TELEM1 = LD-06, TELEM2 = ELRS, CAN = F9P + H-Flow, GPS2 = M9N.
Wat het oplevert (en wat niet)
Wel: geen giswerk (backup = waarheid), een spoor in docs + git, sneller verder omdat Cursor de stack kent, minder dubbel wiki-werk, veiligere checklist vóór de eerste vlucht (ELRS, 6S-batt, LD-06, …).
Niet: Cursor flasht de FC niet. Geen params verzinnen zonder bron of backup. Geen vage “fase”-taal — we zeggen: wat staat er nu, wat moet nog vóór we veilig vliegen.
Kort: we “programmeren” ArduPilot door params te beheren. Cursor leest. Wij (via Mission Planner) schrijven.
Verder lezen
Keuzelog
Skill + rule in .cursor/; voortgang in deel 27; waarheid in .param-dumps. Niet uit het hoofd. Dat moment met SERIAL2 was genoeg overtuiging.
Foto’s
