* Implemented driver for MCP23017
* fixed compatability with mcp23009. (naming of instantiated GPIO-Devices)
* removed some comments
* removed even more comments
* commented out instatntiation of driver since it will not be used with v6x
* removed last useless comments
* re-activated gpio_mcp23009 driver, removed useless comments and empty lines
* removed empty lines at the end of mcp23017.cpp
* removed empty line
* Implemented driver for MCP23017
* fixed compatability with mcp23009. (naming of instantiated GPIO-Devices)
* removed some comments
* removed even more comments
* commented out instatntiation of driver since it will not be used with v6x
* removed last useless comments
* re-activated gpio_mcp23009 driver, removed useless comments and empty lines
* removed empty lines at the end of mcp23017.cpp
* removed empty line
* basic working implementation
* first improved driver version with shared code base for MCP23009 & MCP23017 (built as state machine with sanity checks)
* removed unused imports
* changed module name from MCP to MCP230XX
* removed debug print statements
* adjusted auto start command of driver
* removed comments
* -added seperate main functions for both derivative modules (mcp23009 and mcp23017)
* compile common functions as shared library in src/lib/drivers
* fixed cleanup of modules
* ->unclean working version with shared common library
* used make format
* working & cleaned version
* -> Added CallbackHandler to be able to use multiple reading GPIO-expanders simultaneously
-> Removed old mcap23009 calls and pin registrations
-> Adjusted GpioIn.msg to contain MAX_INSTANCES
* ->removed unused imports
->used make format
* Fix: Re-enabled platform_mcp_gpio for accton-godwit, cuav, fmu-v5x
* Fix: enabled platform_mcp_gpio in px4/fmu-v5x
* added depency to fmu-v5x
* Fix: removed new lines
* Fix: fixed linker errors
* removed unused linkage against mcp-library
* Made mcp start calls consistent for fmu-v5x and fmu-v6x
* moved logging of comm errors to read/write function directly
* added perf_count for sanity_check
* removed error message
* ensured member variables follow naming convention
* added retries to probe function
* simplyfied state-logic
* add break to terminate loop early
* ensured clean state when register_gpios() fails
* add registered-flag to pins
* used path from top dir instead of relative path in CMakeLists
* used constexpr to set parameters instead of calculating them at runtime
* style: used make format
* fix: corrected i2c_bus assignment
* style: init input of callbackhandler to 0
* fix: mark pin as registered if successful
* style: made arguments const type
---------
Co-authored-by: Alexander Lerach <alexander@auterion.com>
We should not build and release with the MAVLink development dialect
because messages in development.xml can change at any time and break
things.
Instead we should prototype and test things using specific mavlink-dev
targets.
* drivers: disable INS by default
With the growing number of INS drivers some targets are running out of flash
and its becoming challenge to keep them under the limit.
Signed-off-by: Ramon Roche <mrpollo@gmail.com>
* Update boards/nxp/tropic-community/default.px4board
Co-authored-by: Jacob Dahl <37091262+dakejahl@users.noreply.github.com>
* Update boards/px4/fmu-v6xrt/default.px4board
Co-authored-by: Jacob Dahl <37091262+dakejahl@users.noreply.github.com>
---------
Signed-off-by: Ramon Roche <mrpollo@gmail.com>
Co-authored-by: Jacob Dahl <37091262+dakejahl@users.noreply.github.com>
- split up old module into two, one handling setpoint generation, one control
- add lateral and longitudinal control setpoints topics that can also be
injected from companion computer
- add configuration topics that (optionally) configure the controller
with limits and momentary settings
Signed-off-by: RomanBapst <bapstroman@gmail.com>
Having a generic interface over the GPS drivers makes dedicated
functionality for each driver harder. Move the Septentrio driver into
its own module under the `gnss` driver directory, and let it have its
own parameters for only the functionality it requires. This also helps
with adding new features because they only need to be implemented for
the driver that wants it, simplifying testing.
* usb: Added parameter to enable always starting mavlink on USB.
Refactored cdcacm_init into a module and added a paramter to allow always starting mavlink on
USB, also added a paramter to choose the mode. The current default behavior is to wait and listen
for data on USB and auto-detect the protocol (mavlink, nsh, ublox). This results in the mavlink
stream not starting until something else on the mavlink network sends a packet first. The new
default behavior is to always start mavlink.
Added parameters
MAV_USB_ENABLE -- default 1 (always start mavlink on USB)
MAV_USE_MODE -- default 3 (onboard)
* added 3 retries for opening serial port in mavlink, removed sleep before sercon
* added DRIVERS_CDCACM_AUTOSTART to ark-v6x default.px4board
* added CONFIG_DRIVERS_CDCACM_AUTOSTART=y to default.px4board for boards with CONFIG_CDCACM in their nsh/defconfig
* format
* remove PGA460 from COMMON_DISTANCE_SENSOR to save flash
* remove LIS2MDL from COMMON_MAGNETOMETER to save flash
* disable CONFIG_DRIVERS_CDCACM_AUTOSTART for fmu-v5 protected.px4board
* moved and renamed parameters, removed mode logic in mavlink
* changed parameter names, added mode none
* remove parameters from mavlink
- during casual testing on default configs the stack was penetration was reaching ~90% which is a bit too close for comfort
- increasing by 50% to be conservative
* Fixedwing rate control into a separate module
* Start fw_rate_control for vtol
* Move over airspeed related parameters to fw_rate_control
Co-authored-by: Silvan Fuhrer <silvan@auterion.com>