Commit 0e34b85
Merge PR LiamBindle#38 (lukedempsey/PyVESC): interface update, firmware flashing, params
Resolves the modify/delete conflicts by porting master's changes into the
PR's flattened layout (pyvesc/VESC.py + pyvesc/messages/):
- multi-CAN-ID heartbeat (PR LiamBindle#37): alive message list, start_heartbeat(can_id=)
- **kwargs (can_id) passthrough on set_rpm/set_current/set_duty_cycle/set_servo
- COMM_FORWARD_CAN = 34 (verified against current vedderb/bldc datatypes.h)
- drop module-level alive_msg from setters
Fixes on top of the PR:
- restore the public API (pyvesc.encode/decode/messages/VESC) gutted by the
emptied __init__.py files; simple.py and docs autoclass refs work again
- decode(): skip unparseable garbage instead of TypeError/infinite loop;
forward recv= to VESCMessage.unpack
- move dummy test-message IDs to 0xE0+ so they don't collide with real
registered commands; all 9 tests + params self-tests pass
- setup.py: package list for the new layout, python_requires>=3.6
- update examples/docs for scalar'd SetDutyCycle (fraction) and 3-tuple decode
- remove .DS_Store, ignore .venv
Co-Authored-By: Claude Fable 5 <[email protected]>31 files changed
Lines changed: 2366 additions & 459 deletions
File tree
- docs/source
- pyvesc
- VESC
- messages
- examples
- messages
- params
- protocol
- packet
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
| 2 | + | |
2 | 3 | | |
3 | 4 | | |
4 | 5 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
36 | 36 | | |
37 | 37 | | |
38 | 38 | | |
39 | | - | |
40 | | - | |
| 39 | + | |
| 40 | + | |
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
| |||
48 | 48 | | |
49 | 49 | | |
50 | 50 | | |
51 | | - | |
| 51 | + | |
52 | 52 | | |
53 | 53 | | |
54 | 54 | | |
| |||
0 commit comments