Il Nestua H743 viene spedito con ArduPilot (ArduCopter) preinstallato e funziona con Mission Planner, QGroundControl e MAVProxy. La configurazione è quella standard di ArduPilot. Questa pagina tratta gli aspetti specifici di questa scheda: cosa c'è su ciascun pad, quale numero SERIALn ha ciascuna UART e i pochi parametri su cui è facile sbagliare.
- La batteria va all'ESC. Il FC riceve la tensione della batteria tramite il cavo ESC a 8 pin e genera autonomamente 5 V e 3,3 V.
- La USB alimenta solo il dominio a 3,3 V. GPS, ricevitore e VTX sui pad a 5 V richiedono una batteria collegata.
- Il logging avviene sulla NAND di bordo: mantenere
LOG_BACKEND_TYPE = 4. - Nessuna bussola sulla scheda. Usare un GPS/bussola esterno via I2C o DroneCAN.
- Impossibile da rendere inutilizzabile: tenendo premuto BOOT mentre si collega la USB si accede al bootloader in ROM.
Prima di iniziare
Servono un ESC 4-in-1 con il connettore standard JST-SH 1,0 mm a 8 pin, un cavo USB-C, una ground station (Mission Planner su Windows, oppure QGroundControl su Windows, macOS e Linux) e, per le modalità GPS, un modulo GPS/bussola esterno. Per tutte le operazioni di questa pagina, fino al test dei motori, tenere le eliche smontate.
Montare la scheda con la freccia serigrafata rivolta in avanti. Con questo orientamento AHRS_ORIENTATION resta al valore predefinito 0. Lo schema di fissaggio è 30,5 × 30,5 mm con fori da Ø4 mm: usare gommini antivibranti M3.
Collegare l'ESC 4-in-1
Il cavo ESC trasporta la tensione della batteria, quattro segnali motore, la telemetria ESC e il segnale di misura della corrente. Non c'è un pin a 5 V, perché il FC non ha bisogno dei 5 V dall'ESC.
| Pin | Segnale | Sul FC | ArduPilot |
|---|---|---|---|
| 1 | GND | Massa | — |
| 2 | VBAT | Ingresso del BEC di bordo da 5 V e misura della tensione | Tensione batteria |
| 3 | M1 | Uscita 1 (DShot) | SERVO1 |
| 4 | M2 | Uscita 2 | SERVO2 |
| 5 | M3 | Uscita 3 | SERVO3 |
| 6 | M4 | Uscita 4 | SERVO4 |
| 7 | TLM | UART7 RX (solo ricezione) | SERIAL5 |
| 8 | CUR | Ingresso analogico di corrente | Corrente batteria |
Verificare l'ordine dei pin prima del collegamento. Questo ordine è comune sugli ESC 4-in-1, ma alcune marche differiscono. Se il pin VBAT dell'ESC finisce su un pin di segnale, la scheda si danneggia. Confrontare la serigrafia o il manuale dell'ESC con la tabella qui sopra e, se necessario, riassegnare i pin del cavo.
Il range di ingresso è 2–6S (7–25,2 V). L'ingresso ha protezione contro l'inversione di polarità e un diodo TVS da 600 W, e il BEC da 5 V è dimensionato per 2 A. I fili delle fasi dei motori e il cavo della batteria si saldano all'ESC. Al FC arrivano solo segnali a bassa corrente.
Prima accensione
- Solo USB. Collegare la USB-C. Il LED verde (3,3 V) si accende e il LED ambra (5 V) resta spento. È corretto: la USB alimenta solo processore, sensori e flash dei log. La scheda viene enumerata come
NestuaH743. - Collegare la ground station. Mission Planner o QGroundControl rileveranno l'heartbeat MAVLink sulla porta USB.
- Batteria. Con le eliche smontate, collegare la batteria all'ESC. Il LED ambra a 5 V si accende e GPS, ricevitore e VTX sui pad a 5 V si alimentano. USB e batteria possono essere collegate contemporaneamente.
Gli altri due LED sono i LED di stato di ArduPilot (blu e rosso). Per un allarme di ricerca del modello, saldare un buzzer attivo da 5 V ai pad BZ+ e BZ−. Il transistor di pilotaggio e il diodo di ricircolo sono già sulla scheda.
Pad UART e numeri SERIAL
Ogni porta periferica è un gruppo di pad di saldatura etichettati con i propri pad 5V e G accanto. ArduPilot numera le porte secondo un proprio ordine: per impostare i parametri fare riferimento alla colonna di destra.
| Pad (serigrafia) | UART | Uso previsto | Porta ArduPilot | Impostare |
|---|---|---|---|---|
| USB-C | USB | Ground station | SERIAL0 | — |
T1 R1 + SDA SCL | UART1 + I2C2 | GPS + bussola esterna | SERIAL1 | SERIAL1_PROTOCOL = 5 |
T2 R2 | UART2 | VTX digitale / OSD | SERIAL2 | SERIAL2_PROTOCOL = 42 |
T3 R3 | UART3 | Radio di telemetria | SERIAL3 | SERIAL3_PROTOCOL = 2 |
T4 R4 | UART4 | Libera (es. companion computer) | SERIAL4 | secondo necessità |
| Pin ESC 7 | UART7 RX | Telemetria ESC | SERIAL5 | SERIAL5_PROTOCOL = 16 |
T8 R8 | UART8 | Libera | SERIAL6 | secondo necessità |
T6 R6 | UART6 | Ricevitore RC (CRSF/ELRS) | SERIAL7 | SERIAL7_PROTOCOL = 23 |
Ricordarsi di incrociare le linee dati: il TX del dispositivo va al pad R del FC e l'RX del dispositivo al pad T del FC. Riavviare la scheda dopo aver modificato un qualsiasi SERIALn_PROTOCOL.
Ricevitore RC
Per i ricevitori CRSF o ELRS, collegare il ricevitore a T6 R6 e impostare SERIAL7_PROTOCOL = 23 (RCIN). ArduPilot rileva il protocollo automaticamente. Poiché il ricevitore è alimentato a 5 V, collegare una batteria durante il binding e verificare i canali nella pagina di calibrazione radio.
GPS e bussola
Collegare un modulo GPS/bussola al gruppo di pad GPS: i dati GPS a T1 R1 e la bussola del modulo ai pad SDA/SCL adiacenti (bus I2C esterno, con resistenze di pull-up da 4,7 k sulla scheda). Impostare SERIAL1_PROTOCOL = 5. ArduPilot rileva autonomamente il baud rate del GPS e la bussola esterna.
La scheda non ha una bussola per scelta. Una bussola montata su un flight controller si trova a pochi centimetri dalle correnti di batteria e motori e le legge come campo magnetico. Montare il GPS/bussola su un'asta o il più lontano possibile dai cavi di potenza compatibilmente con il telaio, quindi eseguire la calibrazione della bussola.
Periferiche DroneCAN
La porta CAN si trova sui pad CH/CL, con 5V e G accanto. Dispone di un transceiver NXP TJA1057, protezione ESD e una terminazione fissa da 120 Ω, perché il flight controller è sempre un'estremità del bus. Terminare anche l'estremità opposta del bus e lasciare senza terminazione i nodi intermedi.
CAN_P1_DRIVER = 1 # enable CAN port 1
CAN_D1_PROTOCOL = 1 # DroneCAN
GPS1_TYPE = 9 # DroneCAN GPS (GPS_TYPE on older firmware)
Bussole, sensori di velocità all'aria e telemetri DroneCAN vengono rilevati una volta attivato il driver. Compaiono in Mission Planner in Setup → Optional Hardware → DroneCAN/UAVCAN.
OSD digitale (DJI, HDZero, Walksnail)
L'H743 non ha un chip OSD analogico. Gestisce l'on-screen display dei sistemi video digitali tramite MSP DisplayPort. Collegare la UART della air unit a T2 R2, quindi impostare:
SERIAL2_PROTOCOL = 42 # DisplayPort
OSD_TYPE = 5 # MSP DisplayPort
Alcune air unit richiedono anche l'attivazione di MSP o DisplayPort dal proprio lato. Consultare la documentazione del sistema video.
Telaio, motori e telemetria ESC
FRAME_CLASS = 1 # quad
FRAME_TYPE = 1 # X
MOT_PWM_TYPE = 6 # DShot600 (5 = DShot300)
SERIAL5_PROTOCOL = 16 # ESC telemetry on the ESC connector
SERVO_BLH_AUTO = 1 # request telemetry from the DShot motor outputs
Il DShot non richiede la calibrazione degli ESC. L'ordine quad X di ArduCopter è: motore 1 anteriore destro, 2 posteriore sinistro, 3 anteriore sinistro, 4 posteriore destro. Le posizioni M1–M4 di un ESC 4-in-1 dipendono da come è montato: eseguire il Motor Test in Mission Planner (senza eliche) e riassegnare SERVO1_FUNCTION–SERVO4_FUNCTION (33–36 = motori 1–4) finché ogni motore gira nella posizione corretta. Correggere il senso di rotazione nel configuratore dell'ESC oppure invertendo due fili del motore.
Le uscite 5–8 si trovano sui pad M5–M8, per un ottocottero, servo o un secondo ESC. Le uscite 1–4 e 5–8 appartengono a gruppi di timer separati, quindi ogni gruppo di quattro può usare un protocollo o una frequenza diversi.
Tensione e corrente della batteria
Il monitoraggio della tensione è preconfigurato: BATT_MONITOR = 4 (tensione e corrente analogiche) con un partitore di tensione dimensionato per 6S (BATT_VOLT_MULT circa 11,0). Confrontare la lettura con un multimetro e, se necessario, regolare il moltiplicatore.
La corrente proviene dal sensore di corrente dell'ESC sul pin 8. La scala dipende dall'ESC: impostare BATT_AMP_PERVLT (e, se necessario, BATT_AMP_OFFSET) in base alla documentazione dell'ESC, quindi calibrare confrontando i mAh consumati in volo con quelli reintegrati dal caricabatterie.
Calibrazione e primo volo
- Accelerometro: calibrazione a sei posizioni, poi livellamento.
- Bussola: calibrazione a bordo con il modulo esterno montato nella posizione definitiva.
- Radio: calibrazione dei canali e interruttore delle modalità di volo.
- Failsafe: failsafe radio, failsafe batteria e (con GPS) geofence.
- Test dei motori senza eliche, poi primo hovering in Stabilize o AltHold in un'area aperta.
Per il tuning, le guide ufficiali di ArduPilot e l'ArduPilot Methodic Configurator funzionano senza modifiche su questa scheda.
Blackbox: logging e download dei log
I log di volo vengono scritti su 256 MB di SPI NAND saldati sulla scheda. Nessuna scheda SD che possa staccarsi con le vibrazioni. Il logging funziona subito. L'unica impostazione da conoscere:
LOG_BACKEND_TYPE = 4 # block logger on the onboard NAND (default)
LOG_DISARMED = 0 # set to 1 only for bench debugging
LOG_BACKEND_TYPE è una bitmask: 1 = file system, 2 = MAVLink, 4 = block. Questa scheda non ha un file system, quindi impostarlo a 1 disattiva il logging senza alcun messaggio di errore. Se i log scompaiono, controllare per primo questo parametro.
Per scaricare i log, collegare la USB e usare DataFlash Logs → Download DataFlash Log Via Mavlink in Mission Planner, oppure la schermata di download dei log in QGroundControl. Nei nostri test al banco, un log da 1,17 MB è stato scaricato via USB a circa 730 KB/s senza byte mancanti. I log si aprono in Mission Planner, UAV Log Viewer o qualsiasi strumento di analisi dei log ArduPilot.
Aggiornamenti firmware e ripristino
Le schede vengono spedite già programmate e collaudate. Forniamo gli aggiornamenti firmware come file .apj, da caricare via USB-C con Load custom firmware in Mission Planner o con l'opzione per firmware personalizzato di QGroundControl. I parametri vengono mantenuti.
Se un aggiornamento si interrompe, la scheda non diventa inutilizzabile. Lo STM32H743 dispone di un bootloader in ROM:
- Tenere premuto il pulsante BOOT e collegare la USB-C.
- La scheda compare come
DFU in FS Mode(USB ID 0483:DF11). - Scrivere l'immagine completa (bootloader + firmware) con STM32CubeProgrammer, oppure con
dfu-util -a 0 -s 0x08000000:leave -D firmware_with_bl.bin.
dfu-util potrebbe mostrare un errore dopo "File downloaded successfully". Si tratta di un'anomalia innocua: la scheda si è già riavviata con il nuovo firmware.
Etichette dei pad, valori predefiniti e dettagli del firmware riportati in questa pagina si riferiscono alla revisione attuale della scheda e possono cambiare prima del lotto di produzione. Domande? hello@nestua.net.