* Driver for CADDX camera GM3 gimbal
* Update src/main/cli/settings.c
Fix copy-paste error on variable name.
Co-authored-by: Petr Ledvina <ledvinap@gmail.com>
* Update src/main/io/gimbal_control.c
Co-authored-by: Petr Ledvina <ledvinap@gmail.com>
* Update src/main/io/gimbal_control.c
Co-authored-by: Petr Ledvina <ledvinap@gmail.com>
* Update src/main/io/gimbal_control.c
Co-authored-by: Petr Ledvina <ledvinap@gmail.com>
* Only forward gimbal data with good CRC
---------
Co-authored-by: Petr Ledvina <ledvinap@gmail.com>
* Improved QMC driver, scheduled silent interval
* add ODR to drivers and use it to set the quiet period
* add MAG_TASK_RATE debug for testing
* don't do a read if the bus is busy - thanks, Petr
* refactoring and simplification, thanks to Steve
---------
Co-authored-by: Steve Evans <SteveCEvans@users.noreply.github.com>
* Add mag heading to GPS Rescue heading debug
* Roll and pitch compensated magnetic yaw
* Changes according to PR comments
* Encapsulate yawMag calculations
* Corrected naming
* Changes according to PR comments
* Changes so that Checks don't fail
* Added PARAM_NAME list
* Changes so that Checks don't fail
* Changes according to PR comments
* Update src/main/fc/parameter_names.h
Co-authored-by: Mark Haslinghuis <mark@numloq.nl>
* Changes according to PR comments
* 200Hz compass task
* fix wait status flag
* increase default ODR of HMC5883L to 75Hz
* fix spikes in MagYaw debug by re-calc only on new data
---------
Co-authored-by: ctzsnooze <chris.thompson@sydney.edu.au>
Co-authored-by: Mark Haslinghuis <mark@numloq.nl>
* WIP
* start of implement m10 code
* Fetch MON-VER from unit to check for unit version
* test nav5 m10 command
* missing empty lines
* offload detect to config file
* copy from hasli and organization
* fix platform.h include
* fix cli_unittest gps include
* fix cli_unittest for gps calls
* guard ublox version in gpsData
* print human readable hw version
* add utc_standard param and transfer with nav5 set
add nav5x message for autonomous mode for m10
* fix typo
* revert order structure, remove functions and reduce flash size
* revert order structure, remove functions and reduce flash size
* fix gps init and navx5 message
* generalized nav5 message
* remove unguarded debug
* change ubx version detection, baud rate negotiation fix and save found baud
* revert indentation
* revert indentation and refactorings
* the new code works with faster baud rate changes
* remove unguarded debug statement
* fix cli commands, major space reduce finished, removed extensions for now
* ubx version checks, add valset for M10
* beta of valset, change suggestions from ledvinap and macgivergim
* valset helper function and combine set nav rate valsets
* more valset refactoring
* remove big array and replace with macro
* remove assert, as it can stop bf completely
* refactoring to offsetof
* making reconnect more resilient, reorganize rate setup, so it doesnt get missed on init
* improved lost communcation detection, dont rely on ACK/NACK anymore
* paket rate debug
* adding debug mode, fixing major flight mode bug
* revert fake flight "isConfiguratorConnected"
* fixed proto detection, fixed reconfigure on too low updaterate
* valset doesnt always send ACK, so we dont wait for it
* size optimization, debug mode rename, minor fixes
* implemented some requested changes
* changed wait delay millisecond based
* fixes from ctzsnooze and zzXyz
* timer fixes
* CamelCase new settings names
* indent
* Fix failure to enter flight model on GPS Fix
* remove old commented out debugs
* simplify timeouts
* Clarify skip_acc and remove development valset code
* accept PL's advice to remove >> (8 * 0
* Simplify package counter, remove reconfiguration based on packet count
* fix error in package count introduced in previous commit
* Fix delay detecting Configurator, ANA disable (for another PR)
* address payload comments and fix logical error
* indentation edits
* delete old enum
* log gps and firmware nav interval times
* fix payload size, inc Rx buffer to 256, ifDef for sw_proto
* remove token parsing (Petr suggestions)
* fixes from reviews
* Basic NMEA improvements
* Address comments from karate
* only check platform version - thanks zzyzx
* Fix for too many sats problem - thanks zzyzx
* tidy up comments, ifdef some ublox definitions
* Use Nav packet intervals, NMEA and UBX, for time delta
* Resolve comments and flatten conditionals
* editorial change
* single function for gpsSol.navIntervalMs
* adam-ah suggestion for payload optimisation
* ACK/NAK & polled message timer fixes
* Revert timer fixes - unexpected side effects
* Revert adam-ah suggestion for payload optimisation"
This reverts commit 42fc8c04fdbc436c9ef196b88f0764ffcbb9239f.
Broke the display of sat info when more than 32 sats in view
* implement a number of comments
* Fast task rate on new data, don't spam at the start
thanks adam-ah
* include PDOP for M10 via NAV-PVT
* Address some of PL's recent comments
* don't recalculate millis so many times
* tidy up baudrate connect code
* Split receiving of GPS bytes from processing by adding GPS_STATE_PROCESS_DATA
* Split receiving of GPS bytes from processing by adding GPS_STATE_PROCESS_DATA
* Preserve state whilst processing packets
* Set gpsData.state directly as gpsSetState() clobbers gpsData.state_position
* Restore original read time check
* Schedule gpsUpdate() to run immediately again when a packet is received for processing
* add debugs to display scheduler valuesl
* simpler scheduler solution
* minor debug change
* FIxes: M10 connection, pDop, NMEA disable; thanks zzyxz
NB: Breaks unit's neat reconnection methods
M8 need a lot of settling time before using the serial port
* ubx parse length sanity + cleanup + dashboard conditional compiles
* Address recent comments from PL
---------
Co-authored-by: ctzsnooze <chris.thompson@sydney.edu.au>
Co-authored-by: ZzyzxTek <zzyzx@zzyzxtek.com>
Co-authored-by: Steve Evans <Steve@SCEvans.com>
* Re-arranging VCP files in preparation for AT32
* Tab size 4
* Adding ADC driver for AT32F43x
* RCC code here is STM32 specific.
* Adding rcc.c for AT32
* pwm_output.c has very specific MCU coupling - to be re factored.
* Separating exti.c
* Split up io.c int stm32/io_stm32.c and at32/io_at32.c
* Adding in VCP files for AT32 and move timer
- note will require more cleanup
* Solving for sanity checks
* Inadvertent inclusion of timer.c for HAL
* rcc.c, timer.c and moving other spevific files out of the driver directory
* Adding I2C drivers
* Formatting
* ws2811 driver and usb_msc driver skeleton
convert pressure to altitude early
remove median filter
PT2 filtering upsampled to altitude function in position.c - thanks KarateBrot
baro task synced to position task - thanks Steve
PT2 implementation - thanks KarateBrot
ground altitude from filtered altitude
baro cali by average of calibration samples over cal period
adjust vario and smoothing defaults
don't say haveBaroAlt until cal is complete
reduce PIDs since Baro is faster
add baro smoothing values to blackbox header
Co-Authored-By: Jan Post <post@stud.tu-darmstadt.de>
Co-Authored-By: Steve Evans <SteveCEvans@users.noreply.github.com>
Changes the blink logic to be OSD task loop based instead of time based.
The previous logic used a 200ms time interval for the blinking which didn't align well with the default 12hz OSD update frequency resulting in the logic periodically missing intervals resulting in an inconsistent blinking.
As the revised logic is now tied to the OSD task iterations the blinking will be consistent. However due to the timing the blink will be slightly faster - 167ms (6hz) vs. the previous 200ms (5hz) intervals. Technically the blinking was 6hz before but stuttered every 5th blink.
Since the OSD task rate can be changed from the default 60hz, the logic will fall back to the time-based implementation for non-default task rates.