Chercher dans la communauté
Résultats des étiquettes.
21 résultats trouvés
-
EmuFlight 0.4.3 Note Supports F4 and F7 only. Caution DJI components bypass Configurator/USB safety-checks. Do not attempt arming while connected to Configurator with battery plugged. Always remove propellers and use a smoke-stopper for extra safety. 0.4.3 Changes since 0.4.2: [feature] Bare-Minimum MSP-Display-Port (#775,#958,#992) HDZero, WTF.OS, and Walksnail are known to work. DJI 03 only supports arming, exiting low-power mode, and vBat telemetry. No OSD whatsoever. HDZero Requires Rev 20240201 or later from: https://www.hd-zero.com/document EMUF HDZero font available from https://github.com/hd-zero/hdzero-osd-font-library Hard-coded 30Hz refresh rate. Does not support VTX-Admin (VTX-MSP/Backpack). Onboard OSD power element does not reflect VTX settings; don't use it. [bugfix] 3D-mode fix. (#1069) [bugfix] many compiler warning fixes and minor bugfixes. [enhancement] default PID Denom 2 for F411 (#994) [enhancement] motor_poles, vtx_low_power_disarm, and 3.2k loops in Configurator support (#991) [enhancement] misc enhancements (#1073, #1050) [targets] many targets, some tested, some not tested. make target requests in Discord: https://discord.gg/BWqgBg3 0.4.2 Changes since 0.4.1: [bugfix] fixes STABLE-MODE for HELIOSPRING, STRIXF10, and MODE2FLUX (#886). [bugfix] Fix the correction yaw gives in 2pass (#852). [feature] CLI option to apply dynamic-notches to RP vs normal/default RPY (#881). (set dynamic_gyro_notch_axis = [RP|RPY]) [feature] adds ICM42688P support (#891). [bugfix] ICM426XX - Disable AFSR (#933). [feature] adds BMI270 support (#930). [enhancement] add Gyro LPF2 type to OSD (#934). minor fixes/additions not affecting flight. [targets] adds some, not all, BMI270 and ICM42688P based targets. Change-log: 0.4.2...0.4.3 Contributors: @nerdCopter @BeauBrewski @saidinesh5 @Peck07 Additional thanks to @iNavFlight and @betaflight for ported/modified GPL code dealing with MSP-Display-Port. Thanks to @betaflight for target definitions Thanks to tylercorleone for 3D-mode consultation. Thanks to mricho for Configurator MSP-Display-port work. Thanks to Quick-Flash robert-b AndreySemjonov loutwice madchiller gretel EdouardMALOT and others for starting this project. Thanks to everyone who has consulted, tested, and contributed on this project. Thanks to everyone in the commit-history since the beginning. If you were missed, please consult. Feedback Welcome in EmuFlight's Discord or GitHub Discussions. Changes in this Build: 179c0bb86 nerdCopter 2024-07-12 [target] STELLARF4 update ibata scale (#1076) bade7f1be nerdCopter 2024-07-12 HELIOSPRING, and derivatives default SERIALRX_CRSF (#1075) 9de3526a0 nerdCopter 2024-07-12 default SERIALRX_CRSF if SERIALRX_PROVIDER not defined (#1050) d13bab41a nerdCopter 2024-07-12 [target] add IFLIGHT_BLITZ_F411RX - CC2500 version (#1068) bb73806d8 nerdCopter 2024-07-12 [target] add JHEF745 (#1067) 279031419 nerdCopter 2024-07-12 "[target] add FLYCOLORF7_AIO" (#1074) f7b769a73 nerdCopter 2024-07-12 more descriptive USBD_PRODUCT_STRING when not defined in target.h (#1073) 189d2bd76 nerdCopter 2024-07-12 3D-mode fix (#1069) 560cdd714 nerdCopter 2024-07-08 [target] FLYCOLORF7 add Baro bmp280 (#1072) 94e9f5a2a nerdCopter 2024-05-16 [target] add FLYWOOF745HEX (#1065) 9ce1d35ed nerdCopter 2024-05-15 [target] update CYCLONEF405_PRO (#1064) 9ecfcbd7e nerdCopter 2024-05-10 [target] add DREAMWORKSF722 (#1063) 002d5bf88 nerdCopter 2024-05-10 [target] add HGLRCF722AIO_X6 (#1062) 14a4a112e nerdCopter 2024-05-10 [target] add BETAFLIGHTF7 (#1061) 4f59ddc1c nerdCopter 2024-05-10 [target] JHEF722HD fix RX3,4 and add PINIO2 (#1060) 92c8571e7 nerdCopter 2024-05-03 [target] ZEEZF7 attempt enabling BlackBox Flash (#1059) 5a7840291 nerdCopter 2024-05-03 [targets] BEEBRAIN_PRO_DSM_US/INTL add BMI160 (#1058) 047242bd8 nerdCopter 2024-04-30 version bump 0.4.3 (#1057) 571a7cfbd nerdCopter 2024-04-30 MSP 1.54 (#991) a7bf26450 nerdCopter 2024-04-30 [targets] bulk target import (partial) (#1056) b76ced4fe nerdCopter 2024-04-26 [target] fix NBD_INFINITYAIOV2 adding USE_ADC (#1054) c6d496feb nerdCopter 2024-04-26 Revert "fix compiler warnings for ACC_2_ALIGN identical branches (#1051)" (#1053) c68a4a1c4 nerdCopter 2024-04-26 [target] fix FLYWOOF7DUAL timer count (#1052) bf2153163 nerdCopter 2024-04-26 fix compiler warnings for ACC_2_ALIGN identical branches (#1051) c7d7dd3b7 nerdCopter 2024-04-19 [target] fix GEPRCF722 redefine (#1049) 0c0a37728 nerdCopter 2024-04-19 [target] add FLYWOOF405S_AIO (#1048) 06d96d1f9 nerdCopter 2024-04-19 [target] add FOXEERF745V2_AIO (#1047) da8253839 nerdCopter 2024-04-19 [target] add MAMBAF405_2022A (#1046) e17df3e56 nerdCopter 2024-04-19 [target] add FLYCOLORF7 (#1045) 30adebcfe nerdCopter 2024-04-19 [target] add FF_RACEPITF7_MINI (#1044) 82b119c22 nerdCopter 2024-04-19 [target] add IFLIGHT_BLITZ_F722 (#1043) c022493f1 nerdCopter 2024-04-19 [target] add FLYWOOF745NANO (#1042) a8cad556e nerdCopter 2024-04-19 [target] add SPEEDYBEEF7MINI (#1041) 942584ca9 nerdCopter 2024-04-19 [target] add FULLSPEEDF411 (#1040) a7d4680c7 nerdCopter 2024-04-19 [target] add FLYWOOF411EVO_HD (#1039) f271b8ec9 nerdCopter 2024-04-19 [target] add NBD_INFINITYAIO (#1038) 62a2137f7 nerdCopter 2024-04-19 [target] add SKYSTARSF405 (#1037) 3d8537fd3 nerdCopter 2024-04-18 [target] add TMOTORF411 (#1036) 39fed31d6 nerdCopter 2024-04-18 [target] add VGOODF722DUAL (#1035) 70d8b0702 nerdCopter 2024-04-18 [target] add GEPRCF722 (#1034) dee8b34a6 nerdCopter 2024-04-18 [target] add EACHINEF722 (#1033) 5084411da nerdCopter 2024-04-18 [target] add LUXF7HDV (#1032) 4b4704bc6 nerdCopter 2024-04-18 [target] add HGLRCF405V2 (#1031) 8df13cc7a nerdCopter 2024-04-17 [target] rename ZEEZF7V2 (#1030) 78c3f489c nerdCopter 2024-04-17 [target] ZEUSF722_AIO add BMI270 (#1028) 3a9534985 nerdCopter 2024-04-17 [target] ZEUSF4FR add BMI270 (#1027) 2380bde55 nerdCopter 2024-04-17 [target] ZEUSF4EVO add BMI270; add default features (#1026) cfa88faf8 nerdCopter 2024-04-17 [target] XILOF4 add BMI270 (#1025) 95120af6e nerdCopter 2024-04-17 [target] TMOTORF7V2 add BMI270, ICM42688P (#1024) 2951f5d73 nerdCopter 2024-04-17 [target] JHEF411 enable dual gyro; add BMI270 (#1023) 60ac4a001 nerdCopter 2024-04-17 [target] JHEF405PRO add BMI270, ICM42688P; retain MPU6000 CW180; retain MPU6500 (questionable) (#1022) 5408c04df nerdCopter 2024-04-17 [target] IFLIGHT_F411_PRO add BMI270, ICM42688P, ICM20689 (#1021) a819ab40d nerdCopter 2024-04-17 [target] HGLRCF722 add BMI270 (#1020) 989567e91 nerdCopter 2024-04-17 [target] HGLRCF411 enable dual gyro; add BMI270 ICM42688P (#1019) f53e88c38 nerdCopter 2024-04-17 [target] HAKRCF722D add BMI270, ICM42688P; retain mpu6000 CW180 (questionable) (#1018) d83e2a717 nerdCopter 2024-04-17 [target] GEPRCF722BT add BMI270 (#1017) 8c02a7c6f nerdCopter 2024-04-17 [target] GEPRCF405 add BMI270, ICM42688P; keep mpu6000 as CW270 (questionable) (#1016) 7fbba1edc nerdCopter 2024-04-17 [target] GEPRC_F722_AIO add BMI270 (#1015) 7763234af nerdCopter 2024-04-17 [target] FLYWOOF7DUAL add ICM42688P; update timers (#1014) 967586b8d nerdCopter 2024-04-17 [target] FLYWOOF411_5IN1_AIO ensure BMI270 (define missing) (#1013) d0396f707 nerdCopter 2024-04-17 [target] FLYWOOF405 update dual-gyro, add ICM42688P; fix timers, add pinio (#1012) 1d7430e1f nerdCopter 2024-04-16 [target] BETAFPVF722 update dual gyro, add BMI270, ICM42688P, add ADC1_DMA (#1011) c48493615 nerdCopter 2024-04-16 [target] BETAFPVF411RX remove softserial, fix flashpin, update id (#1010) 89c562993 nerdCopter 2024-04-16 [target] BETAFPVF405 dual gyro, add BMI270, ICM42688P, motor_poles 12 (#1009) 2d53acca8 nerdCopter 2024-04-16 [target] AXISFLYINGF7 add BMI270, update id (#1008) 3f11875ec nerdCopter 2024-04-16 [target] ALIENFLIGHTNGF7 add MPU9250, update id (#1007) 02bdcea3d nerdCopter 2024-04-16 [target] ALIENFLIGHTF4 add MPU9250, update id (#1006) bfebfc60b nerdCopter 2024-04-16 [target] AIRF7 add MPU6000 (#1005) 5eaa3c7b5 nerdCopter 2024-04-16 [target] AIKONF7 add BMI270, ICM42688P (#1004) 692ce3b4f nerdCopter 2024-04-16 [target] AIKONF4 add BMI270 (#1003) f75f054bc nerdCopter 2024-04-11 [target] add SKYSTARSF405AIO with mpu6000 bmi270 (#1002) d5f051538 nerdCopter 2024-04-09 [target] DFRF722DUALHD disable Baro by default (#712) 6445ab228 nerdCopter 2024-04-09 [targets] MATEKRXF411/CRAZYBEEF4 add BMI270 ICM42688P (#1000) 0b4d6cf21 nerdCopter 2024-04-08 [target] SPEEDYBEEF405V4 dshot dmar off (#1001) 096d3dca2 nerdCopter 2024-04-04 [target] BETAFLIGHTF4 add BMI270 (#998) 8846a9035 nerdCopter 2024-04-03 [target] add TUNERCF405 with BMI270 (#956) ed8f094a3 nerdCopter 2024-04-03 [target] update NERO (#997) 5676f6e4e nerdCopter 2024-04-03 [target] add SPEEDYBEEF405V4 with ICM42688P, SDCard (#996) 8f459a572 nerdCopter 2024-04-03 [target] add SPEEDYBEEF405V3 with BMI270, SDCard (#955) 9d0ef5714 nerdCopter 2024-04-03 [target] add MAMBA F722_2022A with MPU6000, BMI270 (#954) 630612060 nerdCopter 2024-04-02 [target] add SPEEDYBEE_F745_AIO with MPU6000 (#953) 1b56e59c5 nerdCopter 2024-04-02 [target] add FOXEERF745V3_AIO with ICM42688P (#949) 1837c219a nerdCopter 2024-04-02 [target] NBD_INFINITYAIOV2 (non-pro) fixup (#995) 8893f1b25 nerdCopter 2024-04-02 [target] NBD_INFINITYAIOV2 (not pro) (#950) 1259124a0 nerdCopter 2024-04-02 default PID Denom 2 for F411 (#994) e82f193ca nerdCopter 2024-03-29 [targets] fix naming conventions (#993) c787ec20c nerdCopter 2024-03-28 [target] update IFRC_IFLIGHT_SUCCEX_E_F7 adding BMI270 and ICM20689 (#952) 53c6836e9 nerdCopter 2024-03-28 [target] update BETAFPVF411RX adding BMI270 and MPU6500 and flash (#947) 6caf22e10 nerdCopter 2024-03-28 fix MATEKF405SE MAG_I2C_INSTANCE (#850) d743e8e22 nerdCopter 2024-03-27 HDZERO - OSD Init/Menu/Stats Centering (#992) ae97c69c8 nerdCopter 2024-03-21 [target] PYRODRONEF7 - fix compiler warnings / update Timers (#985) 3bf72157a nerdCopter 2024-03-06 [target] NBDHMBF41S et al - fix compile warnings and make config.c usable if desired (#988) 4e7adab12 nerdCopter 2024-03-06 [target] ALIENWHOOP fix compile warning and refresh; add ADC; add MPU9250 (#987) 83dd26939 nerdCopter 2024-03-04 [target] MATEKF411SE fix usable timer count (#984) c70f55a68 nerdCopter 2024-03-01 fix compiler warning - convertSpektrumVtxPowerIndex - unused parameter 'sPower' (#973) f83f617e5 nerdCopter 2024-03-01 [target] MATEKF405SE fix compiler warning and refresh naming (#983) 5d65d2a30 nerdCopter 2024-03-01 [target] KAKUTEF7 KAKUTEF7MINIV1 refresh naming fix (#982) 31d981c65 nerdCopter 2024-03-01 [target] KAKUTEF7 add MPU6000 and refresh naming (#981) fabed9b71 nerdCopter 2024-03-01 [target] KAKUTEF7MINIV3 add ICM42688P (#980) e2797b21f nerdCopter 2024-03-01 fix compiler warnings - KAKUTEF7*; add icm20689 (#979) f5c35c6d4 nerdCopter 2024-03-01 fix compiler warnings - board.c - strncpy, allow trailing null (5th character) (#974) 228436645 nerdCopter 2024-02-29 suppress (don't fix) compiler warnings for 3rd party libraries - STM32F4 and STM32F7 (#978) 9136d4c1c nerdCopter 2024-02-29 fix compiler warnings - SmartAudio CMS menu `FREQ`, `POR FREQ` (#970) c655adee3 nerdCopter 2024-02-27 fix compiler warning - CRSF - unused parameter 'currentTimeUs' (#976) e65a7e06a nerdCopter 2024-02-27 fix compiler warnings - STM32F7 HAL Drivers: 'packed' attribute ignored (#969) e430b65fc nerdCopter 2024-02-27 fix compiler warnings - USBD VCP strings resulting in 'condition has identical branches' (#968) f4686c930 nerdCopter 2024-02-27 fix compiler warnings - Beesign: comment out unused code; fix function call parenthasis; (#967) c9d0d7b7e nerdCopter 2024-02-27 fix compiler warning - comment out getGhstFrame (defined but not used) (#966) 9f0358c0f nerdCopter 2024-02-26 fix compiler warning - FLWO_FLYWOOF411FR 10 timers not 7 (#971) 752257b61 nerdCopter 2024-02-23 remove extraneous files (#972) 8be02888b nerdCopter 2024-02-22 Add ICM-426xx IMU to list of IMUs with overflow protection (#964) ebc98f03c nerdCopter 2024-02-17 20240217 fix merge conflict OSD 0x0800 (#961) 333556519 nerdCopter 2024-02-07 modding HDZero PR #755 to revert to 5bit compatible OSD element positioning. (#958) 91c5ad700 Dinesh Manajipet 2024-02-07 Import HDZero OSD Driver from iNav (#775) d23611a55 nerdCopter 2023-12-20 [gh actions] use date as tag for dev-unstable dev-master (#959) 75b413e75 nerdCopter 2023-12-18 [target] RUSH BLADEF7 update/repair (#957) 9b20fc84e nerdCopter 2023-11-28 [Target] FOXEERF722V4 ICM42668P MPU6000 (#922) 86a7a0d26 nerdCopter 2023-11-08 [target] add SPEEDYBEEF7V3 with BMI270 (#948) 3fd716c1a nerdCopter 2023-11-08 [target] GEPRCF411_AIO add BMI270 and ICM42688P (#946) aaa46e69e nerdCopter 2023-11-04 [target] TMOTORF7 update; add ICM42688P and BMI270 (#944) 01155c0ce nerdCopter 2023-11-02 [target] SKYSTARSF7HDPRO (#943) 2bb2a72c3 nerdCopter 2023-11-02 [target] SKYSTARSF7HD add BMI270 (#942) c1ef73d4d nerdCopter 2023-11-02 [target] NBD_INFINITYAIOV2PRO (BMI270) (#941) 731894ae2 nerdCopter 2023-11-02 [target] IFLIGHT_F745_AIO_V2 add BMI270 (#940) 0d1a56a39 nerdCopter 2023-11-02 [target] FOXEERF745_AIO_V2 (BMI270) (#939) fa26c36cf nerdCopter 2023-11-02 [target] FLYWOOF411_5IN1_AIO - add BMI270 (#938) 218da79e5 nerdCopter 2023-11-01 [target] BETAFPVF411 - add BMI270 (#937) b1cf5d03f nerdCopter 2023-11-01 BMI270 Support - FIFO config file 328 bytes (#930) 3fd882df1 nerdCopter 2023-10-31 ICM426XX - Disable AFSR (#933) b2117eb9c nerdCopter 2023-10-27 revert some USE_GYRO_DATA_ANALYSE and USE_GYRO_LPF2 gating (#936) db57386cd nerdCopter 2023-10-26 fix/add USE_GYRO_LPF2 gating (#935) de71a3a27 nerdCopter 2023-10-26 add Gyro LPF2 type to OSD (#934) 6ba544644 nerdCopter 2023-10-25 option to apply dynamic-notches to RP vs normal/default RPY (#881) c55b0d708 nerdCopter 2023-10-11 add motor_poles to BBL header (#932) 41cfd3935 nerdCopter 2023-10-11 add rc rates_type to BBL header (#931) 9d64ef641 nerdCopter 2023-08-24 [Target] DIAT_MAMBAF405_2022B - MPU6000, MPU6500, ICM42688P (#908) 548e054af nerdCopter 2023-08-24 [Target Fix] MATEKF722SE - allow mpu6500 on gyro 1 and/or mpu6000 on gyro 2 (#928) 43543b4de nerdCopter 2023-08-23 [Target] JHEF411 - add ICM42688P (#925) 9d0485114 nerdCopter 2023-08-23 [Target] BETAFPVF722 add ICM42688P; fix Timers (#905) 11d38e5a0 nerdCopter 2023-08-23 [Target] RUSHBLADEF7HD add ICM42688P (#904) b54d768a9 nerdCopter 2023-08-23 [Target] GEPRC_F722_AIO ICM42688P (#903) 75b47d159 nerdCopter 2023-08-23 [Target] JHEF7DUAL add ICM42688P (#902) f25f0494a BeauBrewski 2023-07-12 [Target] IFLIGHT_F745_AIO_V2 (MPU6000 Only) (#895) a0b59bba2 nerdCopter 2023-06-30 [Target] fix FLYWOOF411_5IN1_AIO ICM42688P alignment (#911) 9c0d7044e nerdCopter 2023-06-14 bugfix gating USE_GYRO_DATA_ANALYSE (#917) c9cb676f1 Roland 2023-06-02 add ICM42688P support to FLYWOOF411_5IN1_AIO target (#907) 53a8da3e0 nerdCopter 2023-06-01 initial ICM426xx support (#891) 4d731cd49 nerdCopter 2023-05-11 bump version 0.4.2 (#888) Lire la source
-
Don't get excited; this is a fix for HELIOSPRING, STRIXF10, and MODE2FLUX only. fixes a bug in STABLE-MODE Everyone should continue to use 0.4.1 0.4.1...0.4.2 Lire la source
-
Fix helio attitude estimation (STABLE-MODE) (ACC/GYRO) (#886) * Update gyro.c * scale ACC for Helio too --------- Co-authored-by: nerdCopter <56646290+nerdCopter@users.noreply.github.com> Lire la source
-
Don't get excited; this is a fix for HELIOSPRING, STRIXF10, and MODE2FLUX only. fixes a bug in STABLE-MODE 0.3.4...0.3.5 Lire la source
-
Hello les pilotes, bientôt un peu de liberté pour aller voler alors j'ai voulu monter mon nouveau build à base de source one, revolt osd, esc furling pour tourner sur emu. Avant toute chose je branche ma fc (pc sous win 10) pour vérifier que tout est ok et là bah la fc n'est pas reconnu. Ni sous Emu, ni sous BF. Je la voit dans les périphériques(cf photo). Je tente en mode boot mais impossible de la faire booter, j'ai les deux led (verte et bleu) qui s'allume. Impluse RC ne trouve pas la fc, j'ai changer les drivers sous zadig mais rien n'y fait. J'ai essayer deux câbles usb qui fonctionnent bien avec d'autres fc mais encore une fois rien de rien. Je sèche un peu, si une bonne âme à des pistes je veux bien un coup de main. Merci
-
Lire la source
-
Bonjour à tous. J ai un gros soucis j ai acheté d occasion un eachine x220s avec radicommande qx7 Access, r9m 2019 et un récepteur r9mm mais les sticks ne bouge pas dans emuflight et j ai l impression que le récepteur n est pas branché au bon endroit il y a que 3 fils de branchés sur la FC omnibus f4sd v3. Bon à la longue de bouener j dessouder le fil blanc qui était souder tout à droite avec le petit s. Merci pour votre attention
-
betaflight Etude technique du GPS - Comprendre et configurer votre GPS
un sujet a ajouté CC06 dans Électronique
Comprendre et parler à son GPS NEO-M8 Introduction Cet article vous aidera (ou pas, car il reste un peu technique) à comprendre ce qu'est cette puce GPS que vous avez acquise et comment réussir à lui parler afin de recevoir ce qu'elle est censée faire. De trop nombreuses questions reviennent en boucle et trop de tuto contiennent des tâtonnements qui induisent souvent à l'erreur. Il traite uniquement des puces ublox M8 équipant les BN-220, BN-880 (et d'autres encore). N'achetant que les chinoiseries ci-dessous, je vous joins le lien pour vous faire une idée: Beitian BN-180 (à oublier) Beitian BN-220 https://www.banggood.com/custlink/DDvYILDKEw Beitian BN-880 https://www.banggood.com/custlink/vmmESLmGr3 Table des matières Le matériel (hardware) Connectique et communication Interconnexion Installation du logiciel Connexion au GPS Sauvegarde de la config / Backup Configuration du GPS et navigation dans la config Restauration d'une config Réinitialisation usine du GPS Vitesse et Optimisation de l'UART Les constellations de satellites Définition du modèle dynamique Fréquence de rafraichissement (rate) Les protocoles NMEA, UBX, RTCM et filtrage Les messages NMEA et UBX Checklist configuration GPS Configuration Betaflight/Emuflight Commandes CLI serialpassthrough et gpspassthrough Conclusion 1 - Le matériel (hardware) Ces modules GPS contient principalement: ⦁ une puce u-blox M8030-CT : C'est un microcontrôleur intégrant un system de réception satellite. Un microcontrolleur, cela veut dire qu'il embarque de la mémoire flash pour stocker son programme, un microprocesseur, la mémoire vive (RAM), et des ports d'entrée/sortie pour communiquer avec l'extérieur. J'ai lu le datasheet pour vous. Si cela vous intéresse, vous pouvez le consulter à cette adresse : https://www.u-blox.com/sites/default/files/products/documents/u-blox8-M8_ReceiverDescrProtSpec_UBX-13003221.pdf ⦁ Une antenne GPS : C'est cette antenne qui va capter les signaux des GPS et les acheminer vers le microcontrôleur. Il est important que cette antenne pointe vers le ciel, ne soit pas recouverte (même de plastique, scotch, ...) et soit éloignée de toute source de perturbation/parasite afin de capter quelque chose (ESC, moteur, Antenne VTX, métaux, ...). Elle est sensible aux ondes. (optionel - BN220/BN880) une pile pour la sauvegarde des paramètres (BBR - Battery Backed RAM). Si votre GPS perd sa config, c'est qu'il n'a pas de batterie (BN-180) ou que celle-ci est morte... (optionel - BN880) Boussole électronique Sur le BN-220, il y a deux LEDs: 1 bleue clignotante : Elle indique l'utilisation de l'UART. Si elle est éteinte, c'est que le GPS n'envoie pas de données sur l'UART, cela peut être un comportement normal. Si elle clignote vite, c'est que le GPS envoie plein de messages 1 rouge clignotante : Elle indique que le GPS a un fix 2D ou 3D et que votre drone est prêt à voler 2 - Connectique et communication Pour commencer, ce module nécessite une alimentation en 5V (ne pas mettre plus, il grille facilement). Donc vous retrouverez logiquement un + (VCC) et un - (GND). Ensuite, une interface de communication série. J'entends au loin : C'est quoi une interface série ? C'est une manière de communiquer (ancestrale, date des années 1970) qui permet d'envoyer les messages caractère après caractère, bit après bit sur un et un seul fil (cela peut être long et lent). C'est une communication unidirectionnelle (dans un seul sens), si les deux parties veulent se parler, il faudra prévoir 2 fils, un pour chacun : un fil sur lequel il écoute (RX) et un fil sur lequel il parle (TX), toujours un caractère après l'autre ... On définit les caractéristiques d'un port série par plusieurs paramètres (ex 9600,8,N,1): ⦁ la vitesse en Baud (bits par secondes). Par exemple : 9600, 57600, 115200... ⦁ le nombre de bits pour former un caractère : en général 8 bits (un octet) pour former un caractère ASCII ⦁ la parité (vérification de l'intégrité): Aucune dans notre cas (N) ⦁ le nombre de bits stop (indique la fin du mot): 1 dans notre cas L'interface (le port) du microcontrôleur gérant un port série s'appelle une UART (tient, ça vous dit quelque chose ?). Donc une UART parle à une autre UART à une certaine vitesse. Si vous n'avez pas la même configuration de chaque côté, vous ne comprendrez pas le message, comme si vous parlez deux langues différentes... 3 - Interconnexion Bon maintenant qu'on a fait le tour du propriétaire, passons aux choses sérieuses. Pour la configuration initiale, je recommande l'utilisation d'un adaptateur USB vers série. Il en existe de nombreuses versions, mais je recommande les FTDI qui ne sont pas chers et très efficaces. Le principal intérêt est l'auto-détection de la vitesse du port. Pour les bidouilleurs, vous le réutiliserez à de très nombreuses occasions (jailbreak, Hack, ...) Voici le mien : https://www.banggood.com/custlink/vmvE8aK3Yc Vous pouvez utiliser un arduino, perso, je vois pas l'utilité car vous vous complexifiez grave la tache. Je dis ça, mais je configurais mes ESC BLHeli avec l'arduino au début... Pour la suite, vous pourrez directement utiliser le contrôleur de vol de votre drone, mais pour simplifier la configuration initiale, l'utilisation d'un adaptateur est recommandée. Donc, une UART possède un TX (fil pour la transmission) et un RX (fil pour la réception). Évidemment, pour que deux UART se comprennent, il faut qu'un TX soit connecté à un RX et vice-versa. On parle avec la bouche -TX - à une oreille -RX-. Cela fait un branchement tel que celui-ci : Le câble du GPS est fourni en règle générale avec le connecteur pour l'adaptateur série, pas de soudure à prévoir, propre et simple. Ne pas oublier de positionner le jumper sur 5V (en jaune), bien qu'en regardant le datasheet, il se peut que cela fonctionne en 3,3V ... 4 - Installation du logiciel Rendez-vous à cette adresse pour télécharger u-center pour windows : https://www.u-blox.com/en/product/u-center Pour l'installation, à vous de jouer ... 5 - Connexion au GPS Après démarrage, on arrive sur une fenêtre assez austère sur laquelle, on va commencer à sélectionner le port COM (l'UART) du PC et sa configuration actuelle: Dans "receiver"on commence par sélectionner l'option "Autobauding" qui va nous éviter de tester les valeurs de vitesse et faire la recherche pour nous (attention, cela n'est garanti que dans le cas de l'utilisation de l'interface FTDI ). Puis on sélectionne le port (COM5 dans mon cas), ce qui va connecter automatiquement le PC au GPS. Si vous ne vous êtes pas trompé sur le port, le logiciel va automatiquement chercher la vitesse du port et se connecter. Vous pouvez visualiser cela en bas, dans la barre d'état avec la référence de la puce GPS, le port série et sa vitesse, le protocole NMEA ou UBX : 6 - Sauvegarde de la config / Backup Maintenant que l'on a établi la connexion, on va commencer par faire une sauvegarde de la configuration actuelle, puis réinitialiser la config, ce qui va nous permettre de vérifier qu'on a un GPS fonctionnel à l'autre bout : Puis, on sélectionne un dossier et un nom de fichier pour votre fichier de sauvegarde (1), puis on lance la sauvegarde en appuyant sur le bouton "Transfer" (2) Une fenêtre va s'ouvrir avec la progression du dump de la mémoire du GPS : Oubliez les erreurs (message rejected), le soft est fait pour un tas de puces GPS bien plus sophistiquées que le M8 et le dump ne fait pas dans la dentelle... 7 - Configuration du GPS et navigation dans la config Après la sauvegarde, nous allons commencer par remettre en configuration usine le GPS. Accédons à la configuration: View - > Configuration View qui va ouvrir la fenêtre de configuration. Mais avant, apprenons à naviguer dans la fenêtre de configuration : La zone à gauche (1) permet de sélectionner la famille de paramètres. La zone à droite (2) les différents paramètres et leur valeurs (que vous pouvez visualiser ou modifier). Le bouton "send" (3) permet de sauvegarder. Attention : le bouton "send"applique les valeurs, les rend fonctionnelles sans les enregistrer de manière permanente dans la mémoire non volatile (NVRAM). Si vous redémarrez votre GPS, toutes les valeurs modifiées seront effacées. Cela vous permet de tester une modification sans risquer de briquer votre GPS. Vous revenez aux valeurs précédentes par redémarrage du GPS. Exception : dans la Zone 1, entrée "CFG (Configuration)", l'entrée sur la gauche "Save current configuraion" suivi d'une validation par "Send" rendra définitves toutes les modifications apportées à la config. Il est important de comprendre cette notion de "running config"(configuration en cours d'exécution sur le GPS) et de "startup config" (NVRAM - configuration appliquée à chaque redémarrage). Et aussi de ne pas oublier de copier la running-config dans la startup-config si l'on est satisfait du résultat, sinon tout est perdu au prochain démarrage ... À propos : en bas de toutes les fenêtres se trouve un cadenas. Ce cadenas vous indique si la page est protégée ou pas. Si le cadenas est fermé, la visualisation va s'arrêter de défiler ou l'appui sur un bouton n'aura aucune action. Pour ouvrir le cadenas, il suffit soit de cliquer sur le cadenas, soit d'appuyer sur un bouton - "Send" par exemple - pour libérer la page. 8 - Restauration d'une config Ok, je vous ai montré comment sauvegarder votre config initiale, au cas où... mais à tout moment, lorsque vous êtes satisfait de votre config, vous pouvez la sauvegarder, l'archiver sur votre PC, la dupliquer sur vos autres GPS, la partager avec vos copains... ce que vous voulez. Fini les fastidieuses reconfigurations de GPS, il suffit de réinjecter un fichier de config, on sauvegarde et fini ! Demandez à vos copains une config fonctionnelle et optimisée, injectez dans le vôtre et partez voler direct sans même avoir à comprendre le pourquoi du comment... personne ne vous l'avait dit celle-là ? Un fichier de config de GPS est de la sorte : MON-VER - 0A 04 A0 00 52 4F 4D 20 43 4F 52 45 20 33 2E 30 31 20 28 31 30 37 38 38 38 29 00 00 00 00 00 00 00 00 30 30 30 38 30 30 30 30 00 00 46 57 56 45 52 3D 53 50 47 20 33 2E 30 31 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50 52 4F 54 56 45 52 3D 31 38 2E 30 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 47 50 53 3B 47 4C 4F 3B 47 41 4C 3B 42 44 53 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 53 42 41 53 3B 49 4D 45 53 3B 51 5A 53 53 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 CFG-ANT - 06 13 04 00 1B 00 F0 B9 CFG-DAT - 06 06 02 00 00 00 CFG-GNSS - 06 3E 3C 00 00 20 20 07 00 08 10 00 01 00 01 01 01 01 03 00 01 00 01 01 02 04 08 00 01 00 01 01 03 08 10 00 00 00 01 01 04 00 08 00 00 00 01 03 05 00 03 00 00 00 01 05 06 08 0E 00 01 00 01 01 CFG-INF - 06 02 0A 00 00 00 00 00 07 07 00 07 07 00 CFG-INF - 06 02 0A 00 01 00 00 00 07 07 00 07 07 00 CFG-ITFM - 06 39 08 00 F3 AC 62 2D 1E 03 00 00 CFG-LOGFILTER - 06 47 0C 00 01 00 00 00 00 00 00 00 00 00 00 00 CFG-MSG - 06 01 08 00 0B 30 00 00 00 00 00 00 CFG-MSG - 06 01 08 00 0B 33 00 00 00 00 00 00 CFG-MSG - 06 01 08 00 0B 31 00 00 00 00 00 00 CFG-MSG - 06 01 08 00 0B 01 00 00 00 00 00 00 CFG-MSG - 06 01 08 00 21 08 00 00 00 00 00 00 Au début de la ligne, on a la section suivit des valeurs. On ne va pas aller plus loin, mais si comme moi, vous apprenez à lire directement, vous identifiez très vite les problèmes. Ce fichier peut être réinjecté d'un coup, vous évitant de parcourir toutes les sections pour modifier les valeurs. Comme pour le backup, on retourne dans "tools / Receiver configuration". On sélectionne le fichier que l'on veut réinjecter (1). Et on appuie sur "Transfer file -> GNSS" (2). Remarques : malgré le fait qu'il soit proposé (à gauche de la flèche 2) de sauvegarder tout en NVRAM (paramètres appliqués à chaque redémarrage). J'ai eu de nombreux cas ou cela ne marchait pas. Il est conseillé de doubler la sauvegarde permanente avec un enregistrement manuel dans la section configuration UBX-CFG comme cité un peu plus haut. il se peut pour que vous ayez à charger la configuration deux fois dans le cas ou la vitesse de communication du port série est modifiée durant le transfert. En effet, quand la vitesse est changée, le logiciel va rechercher automatiquement (autobauding) la nouvelle vitesse, et pendant ce temps-là quelques lignes de commandes seront oubliées et en erreur (timeout). Dans ce cas, il vous faut à nouveau recharger la config qui se terminera sans erreur cette fois-ci car il n'y aura pas de perte de transmission. Si vous ne voulez pas vous embettez, vous chargez deux fois la config tout le temps, il y aura 100% de réussite. 9 - Réinitialisation usine du GPS Les GPS reçut de chine où d'ailleurs sont parfois (voire souvent) déja configuré pour un usage qui n'est pas forcément le nôtre. Au lieu de galérer pendant des heures pour comprendre ce qui ne va pas, il est plus simple de repartir de 0. Alors, voici la manière de faire un retour à la config usine. D'abord, on retourne dans la configuration du GPS. "View" -> "Configuration View". On sélectionne la section "CFG" (1), puis "Revert to default configuration" et on valide avec "Send". Tous les paramètres usine seront restaurés, en incluant la vitesse du port (mais si vous êtes en Autobauding, le système va automatiquement basculer la vitesse, sinon le faire manuellement vers 9600 - visible en bas à droite dans la barre de status). Voilà, votre GPS est en configuration usine, seuls les messages NMEA sont envoyés vers la FC. Maintenant on va pouvoir optimiser ... 10 - Vitesse et Optimisation de l'UART Ok, la vitesse du port série définit la vitesse à laquelle transitent les informations échangées entre la FC et le GPS. Plus cette vitesse est élevée, plus le GPS va pouvoir envoyer de volume d'information. Pourquoi a-t-on besoin de changer la valeur par défaut ? Le GPS communique à la FC des messages sur le port série. Ces messages sont par exemple, la vélocité, l'altitude, l'heure, la position géographique, la précision, les infos sur les satellites... Ces messages sont répétés à une fréquence de rafraichissement. Par défaut, c'est 5Hz soit 5 fois par seconde. Un peu de maths : Typiquement, un GPS "tuné"envoie 200 caractères 5 fois par secondes plus les infos satellite (400 caractères toutes les secondes). soit un total de 1400 caractères toutes les secondes. Le port série consomme 10 bits pour chaque caractère (8 pour le caractère + 1 bit start + 1 bit stop). Les données à communiquer sont donc de 1400 caractères x 10 bits = 14000 bits toutes les secondes. Une interface série configurée a 9600 bauds (défaut) ne peut faire transiter (au maximum dans les meilleures conditions) 9600 bits en une seconde... ça passe clairement pas. Exemple reproduit pour vous: Je configure en 9600 (3), UART1 est à 100% d'utilisation (2), et 5509 octets restent sur le carreau (3). La théorie aurait voulu plutôt 4400 que 5500, mais il y a toujours des différences entre la théorie et la pratique... d'où l'utilité de booster encore plus. On passe à 115200 et voila le résultat. La première barre représente l'utilisation instantanée et celle du dessous le maximum. On a de la marge. Attention, il est important que les deux UART qui communiquent entre elles aient les mêmes capacités. La FC de nos drones supporte jusqu'à 115200 bauds. Il ne sert à rien de booster notre GPS au-dessus, il ne pourra pas communiquer avec la FC. 115200 ou 57600 sont de bonnes valeurs. Avec une valeur comme 115200, on n'est pas prêt de perdre des messages... Pour configurer la vitesse de l'UART du GPS, sélectionner "PRT (Ports)" dans la fenêtre de configuration et sélectionner le "Baurate" souhaité pour la target "1 - UART1". Valider avec "Send". Ci-dessous, la config recommandée dans les tutos. Comme d'habitude, n'oubliez pas de sauvegarder dans la NVRAM si besoin (voir chap 7). 11 - Les constellations de satellites Il existe plusieurs constellations de satellites. La puce M8 est capable de recevoir les grandes familles suivantes : GPS: Constellation de 32 satellites du département de la défense Americaine GLONASS: Constellation de 24 satellites du département de la defense Russe GALILEO: Constellation Europeene de 30 satellites BEIDOU: Constellation Chinoise de 37 satellites Parmi ces systèmes, nous ne pouvons en sélectionner que 3 simultanément. J'ai mis en vert ceux qu'il faut activer (par défaut nous avons GPS,GLONASS,QZSS). Pour configurer, sélectionner GNSS dans la fenêtre de configuration et cocher les checkboxs "Enable" pour les constellations que vous souhaitez (rajoutez Galileo - retirer BeiDou). Valider avec "Send". Ci-dessus, la config optimisée. Comme d'habitude, n'oubliez pas de sauvegarder dans la NVRAM (voir chap 7). Pour vérifier la config, c'est "View"dans le menu, puis "Messages View". Dans la fenêtre, sélectionner dans la partie gauche UBX->MON->GNSS On peut voir dans la ligne "Current enabled system" ceux activés avec un petit rappel que l'on peut en avoir que 3 ... 12 - Définition du modèle dynamique C'est quoi le modèle dynamique ? Le GPS possède plusieurs algorithmes de calcul de la position optimisés en fonction du comportement sélectionné (stationnaire, piéton, vélo, automobile, avion ...). Le calcul est plus rapide et plus précis s'il correspond au mode. Il existe 10 modes. D'après ce que j'ai lu dans le datasheet, celui qui correspond le mieux à l'utilisation de nos drones est le mode "0-Portable". Mais les dev de Betaflight considèrent d'autres valeurs ansi que les divers tutos sur le net. Je vous laisse libre de tester. Pour info, voici la liste des modes : Pedestrian est un peu léger (108km/h à l'horizontal et 72km/h en vertical). Airbone, la précision est moins bonne. Portable semble effectivement un bon compromis ... Pour configurer, dans la fenêtre de configuration, on se déplace à la section "NAV5" et on sélectionne ce que vous souhaitez. Valider avec "Send". Comme d'habitude, n'oubliez pas de sauvegarder dans la NVRAM si besoin (voir chap 7). 13 - Fréquence de rafraichissement (rate) On peut modifier la fréquence à laquelle le GPS récupère les données des satellites et calcule ses mesures. Chaque calcul génèrera en retour des messages transmis à la FC au travers de l'UART. Chaque calcul solicitera le CPU et ses ressources. Plus la fréquence est élevée, plus le GPS consomme électriquement et génèrera un grand volume de messages. Dans le datasheet, il est préconisé 1Hz/1000ms (un calcul par seconde - le paramètre par défaut). C'est, d'après eux, suffisant pour tous les usages. La plupart des tuto sur le net recommandent 5Hz, Betaflight initialise aussi à cette valeur ... pourquoi pas ? Etre trop gourmand va résulter en un calcul de la position impossible ou trop de données envoyées sur l'UART. Pour configurer les "rates" du GPS, sélectionner "RATE (Rates)" dans la fenêtre de configuration et modifier "Mesurement Period" avec la valeur souhaitée... Valider avec "Send". Ci-dessus, la config optimisée avec la recommendation. Comme d'habitude, n'oubliez pas de sauvegarder dans la NVRAM (voir chap 7). Pour vérifier, ouvrir la console affichant les trames de packets envoyé et reçus : On retrouve bien 5 blos de messages dans la même seconde. 14 - Les protocoles NMEA, UBX, RTCM et filtrage NMEA qui veut dire "National Marine Electronics Association", édité par l'association du même nom, elle a pour but de définir un standard d'interface pour l'industrie électronique. Le standard NMEA autorise l'addition de messages propriétaires spécifiques. La seule obligation est que ces messages doivent être tous préfixés par une mnémonique identifiant le constructeur. Et devinez quoi ? u-blox, le fabriquant de la puce NEO-M8N, a choisi le préfix UBX. Puisque le standard l'autorise, son protocole peut se substituer totalement à NMEA. C'est pour cela que vous avez le choix dans Betaflight/Emuflight/INav entre le protocole NMEA ou UBX. À non ... les développeurs ont confondu le nom de la société et le nom du protocole... vous trouverez UBLOX dans le choix du protocole à la place de UBX ... personne ne peut être parfait. Faudrait peut-être que j'ouvre un ticket ... Pour être complet, il y a aussi un autre protocole, RTCM (Radio Technical Commission for Maritime Services), utilisé pour améliorer la précision du GPS en lui fournissant des informations de correction de position... dans tous les tutos, on nous demande d'ajouter ce protocole en entrée, perso, il n'y aucune référence à un message RTCM dans le code de Betaflight. Comme moi, vous pouvez le retirer, cela ne changera rien, et mettez "0+1 - UBX+NMEA" en "Protocol in". Alors, maintenant que les présentations sont faites, il va falloir indiquer au GPS les protocoles que l'on va supporter dans les échanges GPS vers FC et vice-versa. Pour cela on retourne dans "PRT (Ports)" dans la fenêtre de configuration et sélectionner le "Protocol in" et "Protocol out". Valider avec "Send". "Protocol in" : C'est ce que la FC va envoyer au GPS. Donc messages de configuration du GPS. "Protocol out" : C'est ce que le GPS va envoyer à la FC. Ci-dessus, je laisse les 2 protocoles, comme ça, le choix vous appartient de sélectionner l'un ou l'autre dans votre FC ... mais moi, le choisis "0 - UBX" car je n'utilise par NMEA. Il est à bien noter que cette configuration n'active pas les protocoles. C'est un filtre que l'on met sur l'UART dans le sens TX (Protocol out) et RX (protocol in). Si vous n'autorisez pas les protocoles, les messages correspondants seront automatiquement mis à la poubelle, d'où l'importance de définir correctement ces champs. Comme d'habitude, n'oubliez pas de sauvegarder dans la NVRAM si besoin (voir chap 7). 15 - Les messages NMEA et UBX Là, on rentre dans le vif du sujet. Comment on configure le GPS, comment la FC reçoit le fix, les coordonnées géographiques, la vitesse, la distance ? Tout échange de données entre la FC et le GPS est basé sur une notion de message. Exemple : Pour effectuer un reset de la position Home, la FC envoie au GPS un message CFG-RST avec le protocole UBX (UBX->CFG-RST) En fait, chaque fois que, dans l'interface, vous sélectionnez une section, et appuyez un "Send", vous envoyez un message au protocole UBX sur l'UART... Même chose pour le sens retour, le GPS vous envoie des messages. Exemple : un message UBX - NAV - POSLH envoyé à la FC avec la position géographique, la hauteur et l'estimation de la précision. Les protocoles UBX et NMEA définissent des centaines de messages différents. Activer tous les messages saturerait sans aucun problème le lien entre les UARTs résultant en la perte de beaucoup d'information. Par contre, ne pas transmettre les messages attendus par Betaflight résulterait en un lock impossible, pas d'info sur la vitesse ou la position géographique. L'optimisation va nous permettre de définir seulement les messages que Betaflight/Emuflight et Inav attendent et filtrer les autres, donc optimiser le CPU, l'utilisation des UARTs et garantir 100% des fonctionnalités. Pour cela il faut d'abord lister dans le code de Betaflight les messages utilisés pour la navigation. Le fichier qui contient le code est celui-ci : https://github.com/betaflight/betaflight/blob/master/src/main/io/gps.c Nous allons retrouver 3 définitions de messages de navigation pour NMEA et 5 pour UBX : #define FRAME_GGA 1 /* Global Positioning System Fix Data */ #define FRAME_RMC 2 /* Recommended Minimium Data */ #define FRAME_GSV 3 /* GNSS Sattelites in View */ enum { PREAMBLE1 = 0xb5, PREAMBLE2 = 0x62, CLASS_NAV = 0x01, CLASS_ACK = 0x05, CLASS_CFG = 0x06, MSG_ACK_NACK = 0x00, MSG_ACK_ACK = 0x01, MSG_POSLLH = 0x2, /* Geodetic position solution */ MSG_STATUS = 0x3, /* Receiver navigation status */ MSG_SOL = 0x6, /* Navigation solution information */ MSG_VELNED = 0x12, /* Velocity solution in NED frame */ MSG_SVINFO = 0x30, /* Space vehicle information */ MSG_CFG_PRT = 0x00, MSG_CFG_RATE = 0x08, MSG_CFG_SET_RATE = 0x01, MSG_CFG_NAV_SETTINGS = 0x24 } ubx_protocol_bytes; Si vous voulez connaitre le contenu de chacun des messages, vous trouverez la définition dans le datasheet fourni au début de l'article. Nous allons donc restreindre l'envoi de messages dans le GPS à ces messages seuls. Il est à noter que si, dans le futur, les développeurs de Betaflight rajoutent des fonctionnalités basées sur d'autre messages, il faudra venir les rajouter ... de plus je laisse les messages NMEA dans l'étude, mais, perso, je les retire car je n'utilise que UBX comme protocole. Pour cela on retourne dans Configure - > MSG (Messages). Vous allez devoir sélectionner en premier le message souhaité, puis sélectionner l'interface sur lequel le message sera envoyé (nous c'est l'UART1). Il est inutile de sélectionner les autres interfaces, les laisser consommerait des ressources inutiles. A côté se trouve le coefficient diviseur : si vous laissez 1, cela veut dire que le message sera envoyé à tous les cycles du rate (paragraphe 13) que vous avez défini. Si vous mettez 2, c'est une fois tous les deux cycles et ainsi de suite. Cela vous permet de limiter la fréquence de certains messages. Nous allons l'utiliser pour limiter l'envoi des données sur les satellites qui a une importance relative comparée aux coordonnées géographiques ou la vélocité ... Voici ce que je recommande: Commencer par retirer la totalité des messages envoyés. Comme ça, c'est clair. Si vous réussissez, la diode bleue s'arrête totalement de clignoter, plus aucun message n'est envoyé. Puis ajouter ces messages : 01-06 NAV-SOL, Interface UART1, Diviseur 1 01-03 NAV-STATUS, Interface UART1, Diviseur 1 01-30 NAV SVINFO, Interface UART1, Diviseur 5 01-12 NAV-VELNED, Interface UART1, Diviseur 1 01-02 NAV-POSLLH, Interface UART1, Diviseur 1 F0-00 NMEA GxGGA, Interface UART1, Diviseur 1 (optionel) F0-03 NMEA GxGSV, Interface UART1, Diviseur 1 (optionel) F0-04 NMEA GxRMC, Interface UART1, Diviseur 1 (optionel) Terminer par "Send". La diode bleue doit recommencer à clignoter signifiant l'envoi de données par le GPS. 14 - Checklist configuration GPS Une petite pause pour rappeler les étapes de la configuration du GPS. On fait un backup de la config On effectue une remise a zéro de la configuration du GPS (UBX-CFG-CFG) On configure le port UART (UBX-CFG-PRT) : vitesse (115200 bauds) et le filtrage des messages non NMEA/UBX sur le TX et le RX On configure les rates à 200ms (5Hz) dans UBX-CFG-RATE On rajoute Galileo et on retire BeiDou dans UBX-CFG-GNSS On configure le profile de navigation Portable dans UBX-CFG-NAV5 On retire tout les messages sur toutes les interfaces UBX-CFG-MSG On rajoute la liste de messages NMEA/UBX du paragraphe 15 dans UBX-CFG-MSG On sauvegarde la config en mémoire non volatile dans UBX-CFG-CFG On refait un backup de la config dans un nouveau fichier texte sur le PC que l'on archive bien On est prêt à configurer le drone maintenant. 15 - Configuration Betaflight/Emuflight Connexion physique sur la FC : On sélectionne une UART libre sur la FC composé d'un TX et un RX. On relie un TX à un RX et vice-versa. On commence par l'onglet "Ports" : Pour l'UART choisie, aller dans la colonne capteur et selectionner "GPS" puis sélectionner la vitesse. Là vous aurez deux choix. Soit vous laissez la FC chercher la vitesse et vous mettez sur AUTO (*). Soit vous fixez directement la vitesse (choix préféré). (*) Dans le code source de Betaflight, la FC teste les vitesses suivantes: 9600, 19200, 38400, 57600, 115200. Si dans le GPS vous définissez une vitesse non supportée, le mode AUTO ne fonctionnera pas. On passe à l'onglet "Configuration" : Dans le cadre "GPS", on commence activer le GPS, on choisit le protocole, de préférence UBLOX - UBX en vrai). Ensuite, vous pouvez activer la recherche automatique de la vitesse de l'UART "Baud Auto" ou pas. Même chose que dans l'onglet "Ports". Vous pouvez sélectionner "Config Auto" ou pas. Un petit paragraphe est nécessaire pour ce paramètre. En premier, il n'a d'effet que si vous avez sélectionné le protocole UBX (pardon UBLOX dans le configurateur). Donc, si vous êtes en UBX et que "Config auto" est selectionné, à la mise sous tension du drone, Betaflight va envoyer la liste de messages de configuration suivants aux GPS (encore un peu de reverse-engineering dans le code source): Reset factory sans sauvegarde en NVRAM (startup config) Passage de la vitesse de l'UART à 19200 Passage en mode piéton ou airbone Retrait des messages NMEA VGS, GSV, GLL, GGA, GSA, RMC Activation les messages UBX POSLLH, STATUS, SOL, SVINFO (tous les 5 cycles), VELNED Configuration des rates à 5Hz - 200ms Configuration du service d'augmentation de la précision (SBAS) en fonction de ce que vous choisissez dans le champ "Type d'assistance au sol"... A noter : A la mise sous tension du drone, Betafligh exécute en premier un reset usine du GPS, c'est à dire que toutes les modifications que vous avez apportées par vous même dans le GPS ne sont plus prises en compte !!! Betaflight ne sauvegarde pas dans la NVRAM à la fin. Donc, à la fin de la Lipo, après extinction du drone, les modifs Betaflight seront perdues. Donc, pour résumer, si vous sélectionnez "Config auto", oubliez toute la config du GPS, Betaflight retirera tout à chaque démarrage du drone et appliquera ses paramêtres qui sont globalement les mêmes que dans tous les tutos (même la constellation "Galileo"). Si vous souhaitez utiliser votre configuration de GPS, mettez "Config auto" a OFF. Onglet "CLI" : des commandes ne sont pas disponibles dans l'interface graphique, mais seulement en CLI. Celle de la prise en compte de la constellation Galileo : set gps_ublox_use_galileo = on (ou off) Celle de la modification du mode dynamique : set gps_ublox_mode = AIRBORNE (ou PEDESTRIAN) Utilisées seulement dans le cas de "Config Auto" sélectionné, sinon, cette commande n'a aucun effet. Vérification du bon fonctionnement du GPS dans l'onglet "GPS". exemple ci-dessous. Ça parle tout seul. 18 - Commandes CLI serialpassthrough et gpspassthrough L'utilisation d'un adaptateur USB/série (FTDI par exemple), n'est pas obligatoire (conseillé quand même). Une fois que tout fonctionne, il n'est plus simple d'utiliser le drone monté et configuré pour piloter le GPS sans aucune modification matérielle. Vous pouvez utiliser u-center au travers du contrôlleur de vol. Pour cela, il faudra veiller à connaitre votre configuration sur le PC (port série utilisé, celui utilisé pour connecter Betaflight) Exemple (COM1 ici) : Avec nos FC, avec une version récente de Beta/Emu/Inav on peut trouver deux fonctions intéressantes en CLI (Command Line Interface) : serialpassthrough et gpspasstrough. Ces commandes permettent de transformer temporairement une FC en adaptateur USB/série. Veuillez toutefois posséder une version de Beta/Emu/Inav pas trop vieille. 1) La commande "serialpassthrough" permet de transférer toute la communication du port USB vers l'UART de la FC. Il faut fournir en paramètres l'index interne du port UART (égal au numéro d'UART -1 ) ainsi que la vitesse du port UART. Syntaxe : serialpassthrough <num UART -1> <vitesse> Ex: serialpassthrough 5 115200 ---> (UART 6, 115200 bauds) A partir du moment la commande est soumise, l'intégralité du port USB est redirigé: On perd la communication avec la FC (MSP) jusqu'au prochain reboot. 2) La commande "gpspassthrough" récupère directement dans la configuration beta/emu/inav les paramètres de port configurés pour le GPS (UART et vitesse) et invoque serialpassthrough en passant les valeurs. Elle ne nécessite aucun argument. Syntaxe : gpspassthrough Comme pour l'autre commande, à partir du moment la commande est soumise, l'intégralité du port USB est redirigé: On perd la communication avec la FC (MSP) jusqu'au prochain reboot. La procédure est plus compliquée, mais ne nécessite rien de plus que votre câble USB connecté au PC et à votre drone. Attention toutefois, le GPS doit être sous tension : Ce qui implique dans la plupart des cas le branchement de la LiPo. La procédure: Connecter la FC au PC Connecter une LiPo pour alimenter le GPS Ouvrir Beta/Emu/Inav Configurator Connecter le configurateur au drone Aller dans l'onglet CLI (le dernier en bas à gauche) passer la commande "serialpassthrough" ou "gpspassthrough" Fermer le configurateur avec la croix en haut à droite pour libérer le port COM du PC (sinon u-center n'arrivera pas a connecter le port) Demarrer u-center Connecter dans u-center le port COM associé. Pour que la FC revienne en mode de fonctionnement normal, n'oubliez pas de déconnecter la LiPo ainsi que le port USB. Conclusion Je pense avoir couvert la plupart des sujets. Faites-moi vos remarques, je modifierai ou compléterai l'article sur demande. Désolé s'il y a des erreurs, personne n'est infaillible, tout est basé sur mon expérience personnelle, la lecture des datasheets d'UBLOX et du reverse engineering dans le code des developpeurs... Maintenant, à vous de jouer, de tester, de reporter vos trouvailles et de partager vos fichiers de configuration. Voici le mien. BN220-CC06.txt- 30 réponses
-
- 14
-
Salut tout le monde, Je n'ai pas encore vu de topic dédié, donc je me permets d'en lancer un. EmuFlight est un nouveau firmware pour nos FC, c'est un fork de Betaflight (3.5). Il intègre pas mal de petites nouveautés dont les 2 plus intéressantes (mais il y en a d'autres) : Le filtrage IMUF qui avait fait le succès des cartes Helio, mais qui a été adapté pour s'appliquer à pratiquement toutes les FC Un système de "geofancing", que ne propose pas BF, utile pour certifier des quads et fournir certainement prestations dans un cadre plus légal en France Une liste complète est dispo sur le wiki : https://github.com/emuflight/EmuFlight-Butter-Varient/wiki/What-makes-EmuFlight-different%3F A noter qu'il y a des français qui bossent dessus. Depuis environ 2 semaines, on en entend pas mal parler sur les différents groupes, donc forcément, j'étais intrigué, je l'ai foutu sur 3 quads (5") avec des config différentes pour voir ce que ça donnait : Une Kakute F7 + des ESCs BLHeli_32 (une partie de la vidéo avec des hélices un peu tordues/coupées) Une stack de Tyro99 (donc Matek F4 + ESCs BLHeli_S) Une stack GEPRC Stable Pro F7 avec son double gyro de l'enfer ultra sensible et qui en m'a jamais 100% convaincu sous BF 4.0 J'ai tout laissé en stock, le filtrage, les PIDs, les fréquences des boucles Gyro et PIDs. A noter que pour l'utilisation du "Feathered PIDs" , il faut désactiver le Feed Forward (c'est en tout cas ce qui est recommandé), donc faites gaffe quand vous rechargé votre DIFF de BF. Par habitude, j'avais aussi passé le RC Smoothing sur "Filtre", mais comme j'avais une alerte lors de l'armement, je suis repassé sur "Interpolation". Voici une petite compilation des premiers vols bien crados (niveau pilotage) sur ces 3 configs : Ce que l'on ne voit pas sur la vidéo, c'est la température des moteurs en fin de session : ils sont à peine tièdes ! Mon feeling de noob, avec différents quads, sans aucun tuning : ils volent tous mieux que sous BF 4 (avec peu de tuning). Les moteurs sont nettement moins chauds, le propwash existe encore un peu sur certaines manœuvres, mais ça reste très léger. Bref, sans se galérer, on a une qualité de vol semblable à du BF 4 + RPM filter, la chaleur des moteurs en moins, et la compatibilité avec les ESCs BLHeli_S en plus (même si un firmware payant existerait pour ces derniers). Donc chapeau aux devs, pour une première version, c'est impressionnant. Et comme c'est basé sur BF 3.5, on ne se retrouve pas sur une firmware dépouillé de ses fonctionnalités, ici on a tout : OSD, alertes, LEDs, GPS etc., tout comme sur BF 3.5. J'ai hâte de voir la suite, notamment ce genre de promesses : En tout cas, pour les gars comme moi, qui ne sont pas des experts en tuning ou même les débutants, je trouve que ce firmware permet d'avoir un quad qui vole plutôt pas mal, sans se faire de noeuds au cerveau. Le tuning des PIDs, d'après les différents commentaires semble aussi assez simple, contrairement à BF4, où l'on ne sait même plus s'il faut les toucher 😉 Niveau "stick feel", par défaut c'est pas ce à quoi je suis habitué, le quad est un peu trop "relâché" ("loose"), sous BF 4.0 je jouais sur le iterm_relax_cutoff et le feedforward pour avoir une sensation plus lockée, là, comme ces 2 fonctions sont désactivées par défaut, je ne sais pas encore sur quoi je peux jouer. J'aimerais tellement pouvoir avoir un feeling proche de ce que j'ai sur FalcoX, si qqun a des pistes, je suis preneur, en attendant que Dom Lee nous explique comment il s'y est pris pour reproduire le feeling FalcoX sur BF 😉 J'ai aussi laissé la boucle PIDs à 2kHz, à voir si la monter à 8 kHz apporte qque chose. Pour le moment, je n'ai fais mes tests que sur des 5", je suis curieux de voir ce que ça donne sur des 3". Si vous avez des retours, des conseils, des astuces, des expériences à partager sur EmuFlight, faites-vous plaisir 🙂
-
Bonsoir N'ayant jamais utilisé de module GPS, j'ignore encore plus si leur usage est supporté par Emu et l'OSD DJI ? Merki Ps: ils ont des antennes ces modules ?
-
Bonjour, J'ai une question qui me taraude depuis un moment, comment sait on que le les parametrages moteurs sont bien réglés ? je trouve que mes moteurs tournent "vite" par rapport à falcoX voire kiss au bruit notamment , j'avais deja eu cette impression dans le passé sous betaflight. je ne parle pas du bruit des moteurs juste apres armement (Motor Idle Throttle Value [percent])mais apres decollage en stationnaire devant moi à 1 m du sol . bon j'espere que ce topic ne partira pas en banane même si ma question peut paraitre idiote. En gros faudrait il intervenir sur la vitesse max de rotation des moteurs ? j'ai des 2306/2450kv en 4s , une frame Alien 5 pouces et une carte racepit FF et j'ai conservé les reglages par defaut sous emuflight au niveau des vitesses , cela pourrait il être lié au reglage du throttle boost ? là on dirait un moustique sous steroide 🙂 Ou peut être fais je fausse route et tout est lié à mes PID (visibles dans le screen shot)? j'ai utilisé le preset Pierre Meunier Hight Tune. merci
-
Salut les copains, J'ai une petite question... J'ai profité de ce confinement pour changer mon vtx sur mon kwad. Cependant dans le smart audio j'ai toujours les valeurs de mon ancien vtx qui s'affichent... Y a t-il une manip à faire sur ému en passant par le cli pour changer la table vtx?
-
Salut les copains! Souhaitant sans dooute dans un proche avenir passer au numérique j'aurai besoin de réorganiser ma FC pour faire de la place au vista... Pour cela j'aurai besoin de remapper deux pads pour accueillir mon gps et libérer l'uart 3 pour le vista. En opérant un dump j'ai remarqué les ressources SCL et SDA qui ne sont pas utilisées pourrai-je les utiliser pour remapper un tx et rx? J'ai trouvé pas mal de tutos bien réaliser pour remapper mais je n'ai rien trouvé sur ces SCL et SDA...🤔 Je vous mets l'image de la FC pour plus d'info... 😉 En vous remerciant!!!👍
-
Salut à tous, Possédant une strix F10 sous butterflight, j'ai voulu la passer sous emuflight. J'ai premièrement flashé l'imuF puis ensuite emuflight. Tout se passait bien jusqu'au moment où je suis allé dans l'onglet receiver où aucune commande de la radio n'est reçue. Je sais bien que c'est un problème courant mais cette fois ci j'ai tout essayé, changer d'uart, reflasher la carte, changer de version d'emuflight. Bref je sais plus quoi faire 😆😆 Si quelqu'un peut me venir en aide 🙂 Mercii
-
Bonjour, alors voila je voudrais acheter un buzzer autonome, celui ci particulièrement https://www.drone-fpv-racer.com/vifly-finder-2-buzzer-autonome-3632.html sauf que sur le schéma du branchement du buzzer indue le + le - et le ground sauf que sur ma fs j'ai pas de ground la ou je doit souder le buzzer le lien de mon contrôleur de vol https://www.drone-fpv-racer.com/cl-racing-f4s-aio-by-armattan-1975.html?search_query=CL+Racing+F4S+AIO&results=196 étant débutant la dessus et ce que le ground est nécessaire ou je peut le laisser débrancher ? si je doit le souder ou je pourrait le souder sur mon contrôleur de vol ?
-
emuflight Créer un switch pour choisir son mode failsafe (rescue, tombe...)
un sujet a ajouté Binary White -FPV- dans Électronique
Salut les pirates ! J'espère que vous arrivez à un voler un peu avec ce temps de chiens ! Bon du coup, avec ma disette de pilotage je suis en train de plancher sur une problématique. Je voudrais mettre un inter dédié à la sélection des failsafe, c'est a dire pouvoir passer du rescue au mode classique comme bon me semble sur un même quad et cela sans difficulté. J'ai check les modes (qui bien sur ne le permettent pas ^^), j'ai commencé à regarder les tables, je pense qu'on dois pouvoir réussir à en tirer quelque chose mais le pb étant que ça s'appuie sur les modes... Donc je suis en train de regarder du côté des interrupteurs logiques, chose qui pourrais être faisable mais le pb étant que l'on ne peux pas programmer un rescue via le failsafe radio... Merci d'avances si certains on des idées / pistes car la je commence à sécher un peu ^^ Ou tout simplement répondre à la question : est-ce faisable ? (je suis sur que oui lol, bidouille power !). Je suis sous emu 0.2.9 gui 2.14. À bientôt dans les air ! -
Hello 😬 Je viens de vous demander un peu d'aide pour un peu d'affinage de PIDs / filtres sous Emu: - Chameleon Ti 6 pouces - 2306 1750KV - GEMFAN 6042-3 Réglages full stock sous Emu 0.2.0, j'ai juste jouer sur le Q et W pour l'instant, actuellement: 6000 sur le Q 48 sur le W (j'ai testé 64) J'ai un bon feeling avec ces valeurs + PIDs stock, pas de chauffe moteur. Mais je sens que les PIDs ne sont pas parfait, ça vol très bien franchement déjà mais si je peux affiner ça c'est mieux 😄 J'ai commencé à faire des enregistrement BB, mais je suis un peu perdu au final pour l'analyse, j'ai vu les vidéos de DOM à ce sujet, mais je pense ne pas encore avoir assez de recul... J'essaye de comprendre, d'apres ce que me montre la BB, mes commandes suivent a priori bien mon gyro, du moins c'est plus qu'acceptable pour de réglages stock. En fait c'est surtout pour savoir si déjà y'a quelques choses qui vous "choc" et qu'il faudrait que je règle en premier. Genre sur ce roll à droite: On voit bien que le P et le D sur le Roll oscille en fin de course, il faudrait que j'augmente un peu le P, que je regarde et j'affine sur le D au besoin ? Sur ce flip arrière: Je sens aussi que j'ai un peu de propwash, donc faudrait que je joue sur les D, le truc c'est que aussi je ne sais pas de combien augmenter les valeur si jamais je dois les augmenter ? Et si jamais, je laisse les fichiers BB et DVR si jamais un âme charitable ce sent des les regarder: https://easyupload.io/nzaoo0 / juste le DVR et BB d'un vol: https://easyupload.io/if9cms Merci à tous !
-
Bonjour à tous, Pour la première fois j'essaie de flasher une carte et c'est donc emuflight pour ma mamba F405 mini (firmware furyF4OSD) mais je n'ai pas de communication en mode boot. Sinon j'ai la connexion USB en mode normal hors boot. Pour info c'est pareil avec BF. N'étant pas expert, il doit manquer quelque chose de flagrant ?
-
Pour remplacer mon Shrieker qui a bien vécu, je voulais un modèle plus léger et puissant. J'ai donc choisi un châssis de Kaidju R3 habillé par un capot perso fabriqué avec des morceaux de chutes d'équerres PVC collés.. Pendant les premiers vols, pas mal de vibrations dues à des P trop hauts et des mouvements intempestifs violents. En baissant l'eBoost à 90 (j'étais parti de 500 comme sur le Shrieker) et en ne dépassant pas la valeur de I par défaut, tout va bien. La première tour installée a été une iFlight Sucess 16x16 mais au premier vol, la FC est tombé en panne ... MPU6000 plus reconnu. Donc remplacement par une tour Diatone Mamba F411 Nano flashée avec Emuflight 0.2. J'arrive à voler 3min 30s avec une batterie 500mAh et pour l'instant, le passage en 4S n'est pas envisagé.
-
Bonjour à tous , voilà je suis avec ma Kakute f7 V1.5 que je viens de passer sous emuflight, mais depuis mon gyro et acc n'est plus reconnu, y'a t-il une manip spéciale à faire ? Je viens de Betaflight. Merci pour vos rep