David
ff4a58e6ed
refactor: (headless) finish integrating Core cmd_vel
2026-03-19 20:02:37 -05:00
David
178d5001d6
Merge remote-tracking branch 'origin/main' into core-ros2-control
2026-03-19 19:45:59 -05:00
David Sharpe
684c2994ec
cmd_vel headless
2026-03-18 01:17:00 -05:00
David Sharpe
980c08ba4f
refactor: implement Riley's comments
...
- Add @warnings.deprecated decorators to callbacks that use old topics
- Rename "*new*" topics
- Print debug on malformed message receival
- Un-invert Axes 2 & 3 in the URDF
- Don't silently check mcu_name twice
- Remove threading.Thread (not one of Riley's comments)
- Add a real signal handler (ditto)
- Move stamped stop messages to helper functions
2026-03-17 01:14:18 -05:00
David Sharpe
743744edaa
refactor: (headless) change string parameters to bool
2026-03-16 00:39:22 -05:00
David Sharpe
292b3a742d
refactor: (headless) cleanup mainly arm
2026-03-16 00:26:35 -05:00
David Sharpe
62fd1b110d
refactor: remedy QoS profiles
2026-03-08 03:57:28 -05:00
David Sharpe
aaf40124fa
Merge branch 'main' into arm-topic-refactor
2026-03-08 03:56:25 -05:00
David Sharpe
294ae393de
feat: (headless) add new arm manual (JointJog)
2026-03-08 03:29:20 -05:00
David Sharpe
9c9d3d675e
refactor: (headless) reorganize send_controls() into different functions
2026-03-08 01:08:17 -06:00
David Sharpe
6fa47021fc
refactor: (headless) reorganize __init__(), add use_old_topics parameter
2026-03-08 00:42:41 -06:00
David Sharpe
169ab85607
refactor: formalize Arm URDF joint and link names
2026-03-07 16:36:58 -06:00
David
a3044963e5
feat: (arm) lin ac go back in too
2026-02-14 13:19:49 -06:00
David
51d0e747ad
fix: (headless) make new arm controls useable
2026-02-04 04:00:17 -06:00
David
caa5a637bb
feat: (headless) add arm IK control support
...
Only Twist-based so far, no JointJog. need to figure out which frame to send commands in. Currently `base_link`.
2026-02-04 04:00:17 -06:00
David
213105a46b
feat: (headless) add env var to configure stick deadzone
2026-02-04 04:00:17 -06:00
David
7ed2e15908
refactor: (headless) only send stop messages on mode change
...
As opposed to constantly sending them always
2026-02-04 04:00:17 -06:00
David
5f5f6e20ba
feat: (headless) add new control scheme for arm
2026-02-04 04:00:17 -06:00
David
9fc120b09e
fix: make QoS compatible with basestation-game
2026-01-31 17:21:52 -06:00
SHC-ASTRA
b5be93e5f6
add an error instead of a crash when a gamepad fails to initialize
2026-01-14 19:49:33 -06:00
SHC-ASTRA
0e775c65c6
add trying multiple controllers to headless
2026-01-14 04:56:55 -06:00
David
df78575206
feat: (headless) add Ctrl+C try-except
2025-12-13 16:23:42 -06:00
David
96f5eda005
feat: (headless) detect incorrectly connected controller
2025-11-10 22:02:49 -06:00
ryleu
d7fd133586
updated to astra_msgs
2025-11-06 21:35:47 -06:00
ryleu
c107b82a8d
reformat with black
2025-11-06 19:10:21 -06:00
David Sharpe
1281236b36
fix: I hate python ( #21 )
...
BioControl.drill expects an int, have to explicitly cast to an int or headless will crash
Makes main branch functional
2025-10-25 11:10:07 -05:00
David
fe1ae6120f
feat: all the features
...
* Move rover-ros2/rover_launch.py to src/anchor_pkg/launch/, renamed to rover.launch.py
* Anchor now waits to initialize topics until after it has found a microcontroller.
* Headless now waits for anchor to start before it starts itself
* Add default cases to motor feedback for motorId
* Added black to the flake.nix and package.xml
2025-10-23 02:22:31 -05:00
David
44aa4b0848
feat: ramp drill speed
2025-10-23 01:00:13 -05:00
David
d879a3bae4
feat: add drill to bio headless
2025-10-21 10:41:34 -05:00
David
b12515bf11
fix: rover can turn left again
2025-10-18 02:09:50 -05:00
David Sharpe
aa84667aab
feat: add depencies to packages.xml files, add packages to flake.nix
2025-10-17 18:06:54 -05:00
David
ebd07258f0
refactor: replace speed_mode with max_duty for core control
...
Makes it make more sense
2025-10-09 16:19:34 -05:00
David
0e256c7d22
feat: add agpl-3.0-only license
2025-10-04 23:24:23 -05:00
David
b62060026c
style: minor edits based on riley's comments
2025-10-04 23:08:04 -05:00
David
36da0203bc
fix: make turning input curve less aggressive
...
^2 instead of ^3. Not tested, hopefully makes it a lil better
2025-10-01 21:49:40 -05:00
David
87b2ab6f8c
fix!: remove bio from headless
...
Slows down controls too much, going to need to figure something out for speeding that up
2025-10-01 11:18:31 -05:00
David
8c5287158d
fix: arm/bio headless works again
...
I hate python
2025-09-30 11:56:05 -05:00
David
97fa17a4a8
feat: add bio to headless
...
NOTE: UNTESTED
2025-09-29 11:34:35 -05:00
David
a25983126f
refactor: move headless globals to class vars
2025-09-29 09:25:07 -05:00
David
647ff34fa5
feat: add rumble on headless mode switch (core/arm)
2025-09-29 09:16:43 -05:00
David
00be1cef52
fix: make headless rumble stronger
2025-09-11 18:33:30 -05:00
David
858e03f385
feat: add rumble on headless ready, change turn to cubic
...
Controller rumbles for 200ms when __init__() finishes, and angular is now cubic so turning control follows a curve rather than a straight line (y=x^3 instead of y=x)
2025-09-10 22:59:27 -05:00
David
882cbc5949
fix: -float is not float???
...
Tested with controller but on Clucky
2025-09-10 22:46:27 -05:00
David
d5ba9ad721
feat: add speed and brake mode control
...
Speed mode is set with bumpers, brake mode is set with 'A' button. Implemented through /core/control/state topic with custom message CoreCtrlState.
Also added Core measurements from Gabe, and did some general refactoring.
2025-09-10 10:49:51 -05:00
David
93226203f1
style: clean up core and headless
2025-09-09 20:12:46 -05:00
David
0c1a368499
feat: add Twist support to headless and core_pkg
...
Left stick y is forward/backward, right stick x is turn/angular. Still uses duty cycle. Published on /core/twist. On headless, needs CORE_MODE constant changed to "twist" to use new Twist command.
Also added TwistStamped to core_pkg for /cmd_vel. Will use velocity control. Needs wheel measurements from Core CAD. Will be used for Autonomy.
2025-09-08 09:51:25 -05:00
David
5461fbab11
fix: round() is not float ._.
2025-09-02 12:24:38 -05:00
David
caf20f46f6
refactor: poll controller state all at once, add deadzones
...
UNTESTED
Also adds ability to control axis 0 while controlling wrist
2025-09-02 02:43:38 -05:00
David
d3dbbf8658
style: fix author stuff for headless_pkg
2025-08-28 18:55:22 -05:00
David
4254ecc4ce
fix: python float/int for /core/control
2025-08-22 16:41:54 -05:00