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
Peter Barker
bf49716520
AP_PiccoloCAN: allow compilation with HAL_LOGGING_ENABLED false
2024-01-17 18:25:55 +11:00
Andrew Tridgell
9c1e145c8f
AP_PiccoloCAN: reimplement with BinarySemaphore
2024-01-03 07:37:05 +11:00
Peter Barker
ba96789b70
AP_PiccoloCAN: allow more libraries to compile with no HAL_GCS_ENABLED
2023-09-05 22:23:51 +10:00
Oliver
a246cf71f3
AP_PiccoloCAN: Split device functionality into separate files
2023-06-09 08:00:46 +10:00
Peter Barker
f17dfbc584
AP_HAL_ChibiOS: correct heavy periph compilation
...
canmanager isn't enabled, so no piccolocan
2023-06-07 18:24:05 +10:00
Andrew Tridgell
7963ee8a13
AP_PiccoloCAN: expand servo status logging
2023-05-09 09:40:53 +10:00
Peter Barker
34a02fcda9
AP_PiccoloCAN: move and rename CAN Driver_Type enumeration
2023-04-20 08:53:46 +10:00
Peter Barker
1e38200293
AP_PiccoloCAN: tidy AP_EFI defines
2023-03-21 09:01:13 +11:00
Reilly Callaway
9097f51698
AP_PiccoloCAN: Fix ESC voltage and current telem scaling
2023-02-22 18:40:12 +11:00
Andrew Tridgell
e4a0ea65b8
AP_PiccoloCAN: fix for new param set
2022-09-20 15:24:48 +10: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
Reilly Callaway
813c21ffc0
AP_PiccoloCAN: Add Currawong ECU piccolo protocol
2022-09-20 15:24:48 +10:00
Iampete1
63e58e4fa1
AP_PiccoloCAN: params always use set method
2022-08-03 13:43:48 +01:00
Iampete1
51a631b523
AP_PiccoloCAN: update ESC_BM Bitmask
2022-05-22 12:07:37 +10:00
murata
af3fbac118
AP_PiccoloCAN: Change from division to multiplication
2022-03-16 18:41:52 +11:00
Iampete1
515db96858
AP_PiccoloCAN: GPIO servo does not count as active
2022-03-08 11:16:42 +11:00
VMsunghwan
e3c116c9fb
AP_PiccoloCAN : Update Telemetry
...
telemtry -> telemetry
2022-01-17 11:26:34 +09:00
Oliver
80c7c9f16a
AP_PiccoloCAN: Bug fix for ESC temperature data
...
- Fixes issues with temperature data in telemetry and logs
- Use the maximum of available temperature values for the ESC (where available)
2021-12-19 10:50:37 +11:00
Oliver
9aba85dadc
AP_PiccoloCAN: Explicit initialization of AP_HAL::CANFrame instances
2021-06-24 15:51:21 +10:00
Oliver
dade859ff9
AP_PiccoloCAN: Remove unncessary floating point operations
2021-06-24 15:51:21 +10:00
Oliver
06eb844ede
AP_PiccoloCAN: Update code to match new esc telemetry / logging architecture
2021-06-24 15:51:21 +10:00
Oliver Walters
fb16b085c0
AP_PiccoloCAN: Record servo telemetry information to log
...
- Servo position
- Servo speed
- Servo force / torque
- Servo duty cycle
Updated servo protocol file to accommodate extra variable data
2021-06-24 15:51:21 +10:00
Oliver Walters
115c1224de
AP_PiccoloCAN: Send servo commands for active channels
...
- For each channel, check if a non-motor function is assigned
- If so, send the function value out to the servo
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
Siddharth Purohit
6d8972e63b
AP_PiccoloCAN: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS
2021-06-24 09:02:42 +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
Tom Pittenger
96055e877b
AP_PiccoloCAN: AP::can().log_text() needs HAL_ENABLE_LIBUAVCAN_DRIVERS
2021-06-09 18:36:18 +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
917f7d8797
AP_PiccoloCAN: Update timeout values to use 64-bit calls
...
- Prevent premature overflow due to 32-bit variables
2020-10-28 18:25:45 +11:00
Oliver Walters
479df2e20b
AP_PiccoloCAN: Prevent thread from getting stuck in an infinite loop
...
- Previous code would get stuck in the CAN Tx loop
- New approach is to simply increase the timeout on frame transmission
2020-10-28 18:25:45 +11: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
09d38f8729
AP_PiccoloCAN: Fix logic to improve readability
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
Peter Barker
245b962d92
AP_PiccoloCAN: regularise CAN pre-arm failure messages
...
AP_Arming tacks on the sub-system bit.
Remove PiccoloCAN's silly nullptr check
Require the library to supply the failure message (no default message)
Remove default cases so authors know to think about places they should
add things.
2020-05-05 11:27:53 +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
9229efbf81
AP_PiccoloCAN: Always use bulk ESC commands
2019-12-22 09:48:40 +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