Fold LEGACY into the generation folders
The LEGACY copies of HexapodRobot, Hexapod_NEW, Hexapod_Teensy and the old remote sketch were identical to the imported repos and are removed. The old Nextion design moves to 2019-teensy-nrf24/remote-nextion/, the 2019 remote case files to 2019-teensy-nrf24/remote-case/. Paths in CLAUDE.md, READMEs, remote/ comments, sim/build.ps1, the Unity DLL message and .vscode/settings.json now point to the new places. robot/ is not touched (its CLAUDE.md asks to check with the owner first).
This commit is contained in:
1 parent
c666bc6039
commit
dfd4d34512
38 files changed
+37
-2413
No files matched your search
+22
-15
@@ -14,14 +14,21 @@ remote/ Teensy 4.1 firmware (PlatformIO env remote)
|
||||
shared/HexapodProtocol/ wire protocol, used by robot, remote and sim
|
||||
sim/ robot firmware -> hexapod_sim.dll (CMake + g++), headless smoke test
|
||||
Hexapod_Simulation_Unity/ Unity 6000.6 project that loads the DLL (Assets/HexapodSim/)
|
||||
LEGACY/ owner's older material for reference (remote/remote.HMI = old Nextion UI, 6 pages;
|
||||
remote/teensy/ = old remote sketch from https://mangavalk.com/Hexapod/remote.git @ 492dece;
|
||||
Hexapod_Teensy/ = old robot sketch: servo passthrough only, no IK - see "Old robot sketch" below;
|
||||
Hexapod_NEW/, HexapodRobot/ = older generations with their own IK, driving an external
|
||||
SSC-32-style servo controller - all three from https://mangavalk.com/Hexapod/Hexapod @ 7945005)
|
||||
scripts/ PlatformIO helper
|
||||
```
|
||||
|
||||
This folder is `2026-current/` inside the `hexapod-robot` repo. The older generations sit next to it
|
||||
(paths below are relative to this folder) and are the owner's reference material:
|
||||
|
||||
```
|
||||
../2019-teensy-nrf24/robot/ old robot sketch: servo passthrough only, no IK - see "Old robot sketch" below
|
||||
../2019-teensy-nrf24/remote/ old remote sketch
|
||||
../2019-teensy-nrf24/remote-nextion/ remote.HMI = old Nextion UI, 6 pages
|
||||
../2016-ssc32-processing-port/, older generations with their own IK, driving an external
|
||||
../2014-ik-core-task-queue/ SSC-32-style servo controller
|
||||
../README.md timeline of every generation since 2009
|
||||
```
|
||||
|
||||
PlatformIO, one `platformio.ini`, two environments:
|
||||
|
||||
| Env | Board | Sketch dir | Purpose |
|
||||
@@ -178,9 +185,8 @@ Remote stick-frame convention: logical X + = right, Y + = forward, twist +
|
||||
fit" model flipped the body as soon as it rolled (only one side
|
||||
counted as grounded); don't reintroduce it.
|
||||
- Robot forward = Unity −X, 1 Unity unit = 10 mm.
|
||||
- The Unity project was folded in from its own repo. Its history is in
|
||||
`D:\Claude\Hexapod_Simulation_Unity-history.bundle`. Its nested `.git`
|
||||
must be removed by the owner (deleting it was blocked for Claude).
|
||||
- The Unity project grew out of the 2018-2023 Unity simulation, which is in
|
||||
`../2018-unity-sim/` with its full history.
|
||||
|
||||
## Testing without the other board
|
||||
|
||||
@@ -294,7 +300,7 @@ Robot (`robot/README.md` has detail):
|
||||
push opposite to the commanded motion. The harness `z`/`c` keys were
|
||||
corrected to `z` = `yaw_rate` + (turn left). `sim_smoke` checks that
|
||||
+vx goes forward and +yaw_rate turns left.
|
||||
- **Old robot sketch (`LEGACY/Hexapod_Teensy/`)**: real hardware facts.
|
||||
- **Old robot sketch (`../2019-teensy-nrf24/robot/`)**: real hardware facts.
|
||||
It received 18 servo angles (0–180) over RF24Network (channel 90) from
|
||||
the old remote/Unity and wrote them with PWMServo. No IK, no gait.
|
||||
- **Board:** Teensy 3.6 (pins 36–39 and `SPI.setSCK(14)`, confirmed by
|
||||
@@ -322,15 +328,15 @@ Robot (`robot/README.md` has detail):
|
||||
- tibia servo = −tibia (right), 180 + tibia (left), so 90 = knee bent
|
||||
90°.
|
||||
- All of this is now in `Config.h` `SERVOS` (see "Servos" above).
|
||||
- **Older sketches (`LEGACY/Hexapod_NEW/`, `LEGACY/HexapodRobot/`, 2014–2016
|
||||
era)**: an earlier electronics generation. They did IK on the board and
|
||||
- **Older sketches (`../2016-ssc32-processing-port/`, `../2014-ik-core-task-queue/`,
|
||||
2014–2016 era)**: an earlier electronics generation. They did IK on the board and
|
||||
sent `#n Pxxxx … T0` text commands over `Serial1` to an external
|
||||
SSC-32-style servo controller (channels 0–9 and 16–24).
|
||||
- **Femur range:** it was already narrower there (600–2400 µs coxa/tibia,
|
||||
960–2100 µs femur over 0–180°), which corroborates the ≈6.7 µs/° femur
|
||||
in `SERVOS`.
|
||||
- **Links:** femur 10, tibia 15 (cm), with no coxa length in that IK.
|
||||
- **Hip layout comment in `Hexapod_NEW/HexapodClass.h`:** width 9.5 cm
|
||||
- **Hip layout comment in `../2016-ssc32-processing-port/HexapodClass.h`:** width 9.5 cm
|
||||
(front/rear) and 14 cm (middle), 10 cm front-to-middle-to-rear. The
|
||||
Unity model has 10 / 13 / 10. Whichever chassis is current, measure
|
||||
before trusting `LEG_MOUNT_*`.
|
||||
@@ -351,10 +357,10 @@ Remote (`remote/README.md` has detail):
|
||||
- `IMU_AXIS_FROM_CHIP` / `IMU_AXIS_SIGN` depend on how the MPU6050 is
|
||||
mounted in the handset.
|
||||
- The Nextion must have `bauds=115200` in Program.s, and the HMI must match
|
||||
`NEXTION.md`. The owner's old 6-page HMI is in `LEGACY/remote/remote.HMI`;
|
||||
`NEXTION.md`. The owner's old 6-page HMI is in `../2019-teensy-nrf24/remote-nextion/remote.HMI`;
|
||||
its component names aren't readable outside Nextion Editor. The compiled
|
||||
`.tft` is gitignored.
|
||||
- What the old remote sketch (`LEGACY/remote/teensy/`, last ran on a
|
||||
- What the old remote sketch (`../2019-teensy-nrf24/remote/`, last ran on a
|
||||
Teensy) tells us about the real hardware:
|
||||
- **Nextion on `Serial1` (pins 0/1)**, driven by the ITEAD Nextion
|
||||
library, whose `nexInit()` runs at 9600. `remote/Config.h` now uses
|
||||
@@ -394,7 +400,8 @@ Remote (`remote/README.md` has detail):
|
||||
first even then. Flag suspected robot bugs instead of fixing them. To
|
||||
try a robot fix, copy `robot/ shared/ sim/` to a scratch dir, patch the
|
||||
copy and run `sim_smoke` there.
|
||||
- `LEGACY/` is reference material from the owner. Don't modify it.
|
||||
- The older generations (`../20xx-*/`, `../original-frame/`) are reference
|
||||
material from the owner. Don't modify them.
|
||||
- Protocol changes go in `shared/HexapodProtocol/` only. Update the size
|
||||
`static_assert`, this file's contract table, and both READMEs.
|
||||
- Match the existing style: config constants at the top of `Config.h`
|
||||
|
||||
Reference in new issue
Block a user