Commit Graph

32 Commits

Author SHA1 Message Date
Iampete1 71137dac31 AP_PiccoloCAN: send incomming servo telem data to new `AP_Servo_Telem` lib 2024-12-03 07:38:17 +11:00
Thomas Watson f2a9075d43 AP_PiccoloCAN: use 32 bit microsecond timeouts for write_frame
For consistency with other parts of the code.

Note that now different frames in a group could have slightly different
deadlines.
2024-10-15 10:24:25 +11:00
Thomas Watson 1354490621 AP_PiccoloCAN: use 32 bit microsecond timeouts for read_frame
For consistency with other parts of the code.

Makes obvious the curious fact that the read_frame timeout is always 0.
2024-10-15 10:24:25 +11:00
Thomas Watson 55c5cb10d0 AP_PiccoloCAN: use 32 bit microsecond timeouts for connection funcs
For consistency with other parts of the code.
2024-10-15 10:24:25 +11:00
Dr.-Ing. Amilcar do Carmo Lucas 957b05e53e AP_PiccoloCAN: Remove duplicated code
Fix doxygen markup for consistency
Fix typos
2024-02-25 10:19:23 +11:00
Andrew Tridgell 9c1e145c8f AP_PiccoloCAN: reimplement with BinarySemaphore 2024-01-03 07:37:05 +11:00
Peter Barker 15dc15df3f AP_PiccoloCAN: remove double-definition of HAL_PICCOLOCAN_ENABLED
also trust minimize_features.inc to remove this feature where not desired
2023-06-09 08:00:46 +10:00
Oliver 97e58d9df9 AP_PiccoloCAN: Remove old ESC structure
- No longer needed
- Now replaced with class-based implementation
2023-06-09 08:00:46 +10:00
Oliver a246cf71f3 AP_PiccoloCAN: Split device functionality into separate files 2023-06-09 08:00:46 +10:00
Peter Barker 179b79a00c AP_PiccoloCAN: use minimize_features.inc for more features 2023-06-06 10:14:02 +10:00
Peter Barker 1e38200293 AP_PiccoloCAN: tidy AP_EFI defines 2023-03-21 09:01:13 +11:00
jackhong12 4a4f361a17 all: use CLASS_NO_COPY() macro 2022-10-04 11:23:04 +11:00
Reilly Callaway 19f135b1b6 AP_PiccoloCAN: SendECU throttle commands over CAN 2022-09-20 15:24:48 +10:00
Reilly Callaway 080c0a77e8 AP_PiccoloCAN: Add Currawong ECU message handling 2022-09-20 15:24:48 +10:00
Siddharth Purohit 43bb543aff AP_PiccoloCAN: fix missing _telem_sem 2021-06-24 17:15:08 +10:00
Oliver Walters de3c4cc9da AP_PiccoloCAN: Increase number of supported channels from 12 -> 16 2021-06-24 15:51:21 +10:00
Oliver Walters 7b0da02a18 AP_PiccoloCAN: Framework for CAN servo outputs 2021-06-24 15:51:21 +10:00
Oliver Walters 43b7b4eb3b AP_PiccoloCAN: Add support for CBS servo protocol
- Adds protocol files for the servo protocol
- Generated using Protogen tool
2021-06-24 15:51:21 +10:00
Dr.-Ing. Amilcar do Carmo Lucas d15042d7c0 AP_PiccoloCAN: fix compilation when HAL_WITH_ESC_TELEM == 0 2021-06-09 21:42:51 +10:00
Andy Piper 70fae36a89 AP_PiccoloCAN: add ESC telemetry support
remove send_esc_telemetry_mavlink()
log telemetry data in frontend
record volts, amps and consumption as floats
2021-05-12 17:01:11 +10:00
Oliver Walters 6786e832a1 AP_PiccoloCAN: Provide compatibility for "Gen 2" Velociy ESC ICD
- The "Gen 2" Velocity ESC provides much more telemetry data
- The new ICD changes are compatible (i.e. legacy and modern ESCs can be on the CAN bus at the same time)
- Decode legacy packets and convert them to modern data structures
- Supports decoding of newer telemetry packets
- Supports decoding of new warning / error packets
2020-10-28 18:25:45 +11:00
Oliver Walters 8aeec6c4d1 AP_PiccoloCAN: Constrain ESC command message rate
Use constain_int16 rather than using primitive checks
2020-09-09 15:31:21 +10:00
Oliver Walters 818e7f2cdf AP_PiccoloCAN: ESC message rate is now in Hz 2020-09-09 15:31:21 +10:00
Oliver Walters 5c53c17076 Remove parameters related to CAN servo operation 2020-09-09 15:31:21 +10:00
Oliver Walters 66812c72da AP_PiccoloCAN: Specify which ESC channels are used
- Uses the CAN_Dx_PC_ESC_BM bitmask to determine which ESC (motor) channels are controlled over PiccoloCAN
- Only transmits messages relevent to the selected motor channels
2020-09-09 15:31:21 +10:00
Oliver Walters 17932e3d1d AP_PiccoloCAN: ESC command rate now configurable
Uses CAN_Dx_PC_ESC_MS parameter to set the ESC data rate (in ms)
2020-09-09 15:31:21 +10:00
Oliver Walters a98babc02c AP_PiccoloCAN: Add user configurable operations to adjust Piccolo CAN ESC behaviour 2020-09-09 15:31:21 +10:00
Siddharth Purohit 0fcf0b4564 AP_PiccoloCAN: modify to use uavcan agnostic CAN drivers and manager 2020-08-19 17:31:09 +10:00
Andrew Tridgell e1f89c2c0d AP_PiccoloCAN: fixed build error on Linux
_thread_name too short
2019-12-31 11:38:30 +11:00
Oliver Walters fadc968b38 AP_PiccoloCAN: Improve arm/disarm ESC behaviour
- When disarmed, broadcast a "software disable" command to all ESC on the bus
- This means that ESC will reject any PWM commands
- When armed, ensure each ESC is enabled before sending PWM commands
2019-12-22 09:48:40 +11:00
Andrew Tridgell 9821d52b72 AP_PiccoloCAN: added selective build of PiccoloCAN 2019-12-22 09:48:40 +11:00
Oliver Walters ace0006a4e AP_PiccoloCAN: added support for Piccolo CAN ESCs 2019-12-22 09:48:40 +11:00