75 Commits
Author SHA1 Message Date
mangavalkandClaude Opus 5.5 cb1e9234c6 2019: add the May 2019 printed robot parts (STL)
Fusion 360 STL exports of the body, legs, hinges, foot, servo horn and
test legs into robot-parts/, and an early remote part into remote-case/.
Found in an old Hexapod folder; the remote files that came with them were
already in the repo.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 14:00:54 +01:00
mangavalk df54f0866d FireFly: add wisFORlive.pdf
PDF version of the IK derivation. It was in the Hexapod-Archief repo from its first commit (2014) until the 2016 cleanup removed it, so it was only left in that repo's history.
2026-10-25 18:53:59 +01:00
mangavalk 557f633897 Owner's reorganisation: frame into 2009-fpga, media regrouped, old math versions removed
- original-frame/ moves into 2009-fpga/original-frame/ (the FPGA version introduced the frame).
- Media regrouped by the owner: the two 2011-07-01 PNGs and MOV02256-02259 to FireFly, SNC00198.jpg to the FPGA version.
- Removed from the current version (still in the history): docs/math wisFORlive.docx, wisFORlive3.docx, wisFORlive4.docx and 'z axis rotation.url'.
- READMEs, 2026-current/CLAUDE.md and the root timeline updated to match.
2026-10-25 18:50:08 +01:00
mangavalk 3d879ad803 robot/: point the old-sketch references to 2019-teensy-nrf24/Hexapod_Teensy
Comments in Config.h and the README referred to LEGACY/, which is folded into the generation folders. Also 'from the repo root' -> 'from the 2026-current folder'. Comment and documentation changes only; approved by the owner.
2026-10-25 17:47:05 +01:00
mangavalk 1b3102296b Add READMEs for the repo and every generation, root CLAUDE.md and .gitattributes
The root README has the timeline of all generations since 2009. Each generation folder explains its hardware and what is in it. .gitattributes turns off line-ending conversion so all files stay as they were.
2026-10-25 17:33:11 +01:00
mangavalk be287b066e Give the 2014, 2016 and 2019 robot sketches their own sketch folder
The Arduino IDE needs the folder name to match the .ino: HexapodRobot/, Hexapod_NEW/ and Hexapod_Teensy/. References in 2026-current/CLAUDE.md updated.
2026-10-25 17:31:44 +01:00
mangavalk b3dd2e5540 Remove build output and editor files from the current version
Visual Studio build output (.obj, .pdb, .tlog, .sdf, .suo, ipch) of the 2012 IK visualiser and Unity's .vs, Logs and UserSettings of the 2018 simulation. They stay in the history. The built 'Hexapod app.exe' (Debug) is kept. Also drops the per-folder .gitattributes of the Processing sketch (the repo root now defines how files are stored) and the 2016 README of the old Hexapod repo (its only content was a GitLab link).
2026-10-25 17:31:09 +01:00
mangavalk dfd4d34512 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).
2026-10-25 17:30:35 +01:00
mangavalk c666bc6039 Current robot: Fusion 360 designs
Body bottom, bottom and mid leg, servo horn (v5 and v6), Hitec HS-485HB servo model and the remote case (v4 and v40), with their preview images and exports. From D:\Fusion 360 export.
2026-10-25 17:28:46 +01:00
mangavalk 0b2d361716 FireFly: other versions of documents found on the share
Files from Electronics\Hexapod whose content differs from the archive copies. They keep their original file name; a date is added where the name would clash.
2026-10-25 17:28:45 +01:00
mangavalk a5372b902d FireFly (2011-2012): photos and videos
Everything created after 2 Nov 2011 20:44:07, incl. the 'Hexapod 29-11-11' film and media.jpg. From Electronics\Hexapod\media, Verwerkte media and media.jpg.
2026-10-25 17:27:04 +01:00
mangavalk 6c54a0caf2 FPGA version (2009-2011): photos and videos
Everything created on or before 2 Nov 2011 20:44:07, incl. the 'hexapod film 18-11-09'. From Electronics\Hexapod\media and Verwerkte media.
2026-10-25 17:26:36 +01:00
mangavalk 62ddaafd80 FireFly: documents, hardware notes and tools
Math (IK, rotation), planning, research papers, concept images, the Arduino Mega + SSC-32 notes and the two 2011 Windows programs. From Hexapod-Archief documentation/ (files only; its history stays in the archived repo).
2026-10-25 17:26:28 +01:00
mangavalk 204fccba0c Original frame: DXF/DWG designs used by every version from 2009 to 2023
From Hexapod-Archief documentation/design.
2026-10-25 17:26:27 +01:00
mangavalk 883d44f807 Teensy 2019: nRF24L01 test sending a data struct
From the Arduino sketchbook (was GettingStarted_HandlingData).
2019-05-25 20:07:45 +02:00
mangavalk 6fda86ebf2 Teensy 2019: nRF24L01 ping test with the robot's radio pins (CE 39, CSN 15, SCK 14)
From the Arduino sketchbook (was nrf24-GettingStarted-test).
2019-05-25 16:17:27 +02:00
mangavalk d68fb0507e Teensy 2019: MPU6050 accelerometer test
From the Arduino sketchbook (was mpu6050-test).
2019-05-16 21:46:37 +02:00
mangavalk 2373167785 Teensy 2019: read SSC-32 style servo commands, first step to replacing the SSC-32
From the Arduino sketchbook.
2019-05-12 18:30:56 +02:00
mangavalk 413f52c008 FireFly library: variant kept in the 2014 GitLab archive
GPS include disabled, out-of-reach flag instead of the 7-segment error. Exact date unknown; dated at the archive's first commit (Feb 2014).
2014-02-17 11:44:17 +01:00
mangavalk 6e50819e01 FireFly 2012: behaviour rewrite now uses the hexapod library
From Electronics\Hexapod\Arduino sketches 2011-2012\FireFly. Data.h, Def.h and SerD.h moved into the library.
2012-07-23 17:56:33 +02:00
mangavalk 304367a769 FireFly 2012: the robot code as an Arduino library 'hexapod' (v3.1): IK, SSC-32, IR, ultrasonic, GPS, 7-segment
From Electronics\Hexapod\Arduino library 2012.
2012-07-23 17:52:23 +02:00
mangavalk f0b272a1d3 FireFly 2012: start of a behaviour-based rewrite (unfinished, does not compile)
From 'FireFly 19.rar'.
2012-07-19 20:51:25 +02:00
mangavalk 0911543c03 FireFly 2012 v3: later version of May 2012
From Electronics\Hexapod\Arduino sketches 2011-2012\hexapodV3 (backup 2012-07-09).
2012-05-29 18:10:16 +02:00
mangavalk f690f307c1 FireFly 2012 v3: restructured into Data/Converter/IK/Servos classes, IR remote, ultrasonic radar head
From 'hexapodV3 28-april-2012-Backup.rar'. Oud/ is the 2011 code it was based on.
2012-04-28 16:42:59 +02:00
mangavalk 2e063fc0d9 FireFly 2012: handheld remote with graphic LCD, IR receiver and Wii Nunchuk
From the Arduino sketchbook (Electronics\Arduino\Hexapod\hexapod_remote_glcd, was GLCD).
2012-03-31 15:38:55 +02:00
mangavalk 8e66e26bb9 FireFly 2011: tuned leg positions, walk sequence and IK
From 'hexapod V2 29-12-11.rar' (main file was hexapod.pde).
2011-12-02 22:03:05 +01:00
mangavalk fe472bfce9 FireFly 2011: Arduino Mega + SSC-32, Wii Nunchuk, preset walking sequences
From Electronics\Hexapod\Arduino sketches 2011-2012\hexapod_oud (banner 'Version 3.0').
2011-10-09 15:56:03 +02:00
mangavalk 160b6ec36a Import Hexapod (2014-2022) with full history 2026-10-25 17:24:12 +01:00
mangavalk 29573971bb Import remote (2019) with full history 2026-10-25 17:23:49 +01:00
mangavalk 7638d594df Import Hexapod-processing (2014) with full history 2026-10-25 17:23:49 +01:00
mangavalk a22ce93ab2 Import Hexapod-App (2012) with full history 2026-10-25 17:23:48 +01:00
mangavalk aa35df1575 Import Hexapod_Simulation_Unity (2018-2023) with full history 2026-10-25 17:23:48 +01:00
mangavalkandClaude Opus 5.5 09f7424714 LEGACY: older hexapod sketches (Hexapod_NEW, HexapodRobot)
From https://mangavalk.com/Hexapod/Hexapod @ 7945005 (its Hexapod_Teensy
is identical to the copy already in LEGACY). Earlier electronics
generation: on-board IK driving an external SSC-32-style servo
controller. Notes on what still applies are in CLAUDE.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 01:17:46 +02:00
mangavalk 3e28a0aec6 update 2026-10-25 00:43:37 +02:00
mangavalk f67a12ce88 Cast abs() arguments to long long in InverseKinemetics
Recovered from the uncommitted working copy in the 'Projecten nov 2016' backup.
2026-10-25 00:31:21 +02:00
mangavalk 902b4501aa Add README and .gitattributes 2026-10-24 23:50:19 +02:00
mangavalkandClaude Opus 5.5 5ff85c4eb8 Robot: Teensy 3.6 with the old robot's servo wiring and calibration
- LEGACY/Hexapod_Teensy/: old robot sketch (reference only).
- platformio.ini: robot env targets teensy36 (owner-confirmed board).
- Config.h: per-servo SERVOS table (pin, pulse at 0 deg, signed
  us/deg, pulse limits) built from the old sketch's pins, ranges, trims
  and the old Unity servo directions. Rear-left/front-left coxa offsets
  set to 0: the owner re-horns those two servos (the old +-90 left them
  at the end of travel; the sim showed them clamping).
- ServoDriver: 18 servos on hardware PWM (50 Hz, 16-bit); the Teensy 3.6
  Servo library stops at 12.
- Radio on CE 39 / CSN 15 with SPI SCK on pin 14.
- sim: analogWrite/PWM shims, pulses decoded through SERVOS (API v6).
- Docs: CLAUDE.md, READMEs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 15:53:55 +02:00
mangavalkandClaude Opus 5.5 a961fa721b Remote: match the old remote's hardware; old remote code in LEGACY
- LEGACY/remote/teensy/: old remote sketch from
  https://mangavalk.com/Hexapod/remote.git @ 492dece (reference only).
- remote/Config.h: sticks on A0-A5, Nextion on Serial1 (0/1), as in the
  old sketch; MPU6050 moved to Wire2 (25/24) since A4/A5 are Wire's pins.
- NextionUI: controls on a vscope-global "control" page added to the
  old HMI; keeps the old t1 status texts; the old page-1 b2 button (and
  serial 'U') enter Nextion upload passthrough, following the PC's baud.
- Docs: NEXTION.md, remote README wiring, CLAUDE.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 15:29:21 +02:00
mangavalk 81fa7f1429 Update files 2026-10-01 15:09:00 +02:00
mangavalkandClaude Opus 5.5 935526eab5 Firmware simulation, Unity project, and sim-verified robot fixes
Simulation
- sim/: the unchanged robot firmware compiled into hexapod_sim.dll
  against PC stand-ins (Arduino, Servo, Wire + register-level MPU6050,
  RF24 with matching-config radio), a kinematic body model (support
  plane + planted-foot odometry) that also drives the simulated IMU,
  and a headless smoke test (sim_smoke). build.ps1 builds and tests.
- Hexapod_Simulation_Unity/ folded in (history kept in a bundle
  outside the repo). Assets/HexapodSim loads the DLL, drives the
  existing leg rig, and offers joystick / keyboard / robot-serial
  input plus a test panel.

Robot (all found or confirmed in the simulation)
- Config.h geometry taken from the Unity model.
- IK femur elevation sign, gait stance direction, body pose
  rotation direction, yaw lever arm.
- Stance feet integrated from the current command; gait restarts at
  mid-stance; heading integrates the applied turn rate, only while
  walking.
- Leg clearance and reach checks (Limits::feetFeasible); walk command
  and body pose scaled as a whole, pose scale rate-limited, planted
  feet guarded so the body never snaps or legs collide.
- Robot-gyro self-leveling as an integrator.
- Heading mode: steering relative to the body; S walks backward.
- Standing height from the remote (STANCE_HEIGHT_RANGE_MM).

Protocol v3 (reflash both boards)
- CmdPacket gains body_height (22 bytes).

Remote
- Height slider (Nextion hHeight/nHeight, serial [ ]).
- Fixed unspecified I2C read order in RemoteIMU.

LEGACY/: owner's old Nextion HMI and remote hardware assets.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 00:37:12 +02:00
mangavalkandClaude Opus 5.5 91dac16fca Draft: shared protocol, remote firmware, project docs
Not yet verified on hardware.

- shared/HexapodProtocol: CmdPacket (now 20 bytes, adds remote_roll /
  remote_pitch), FLAG_* bits and radio settings as the single protocol
  definition; static payload size = sizeof(CmdPacket) on both radios.
- robot: use the shared protocol; vx = forward (harness w/x <-> q/e);
  InputMapper adds remote tilt on top of the right stick when
  FLAG_REMOTE_GYRO is set, and robot.ino no longer zeroes stick
  roll/pitch when it's off.
- remote (Teensy 4.1): Sticks (calibration, EEPROM), RemoteIMU,
  RemoteState (interlocks, link-loss disarm, smoothing), PacketBuilder,
  RadioLink, NextionUI, SerialConsole.
- CLAUDE.md, README.md, remote/README.md, remote/NEXTION.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 18:14:00 +02:00
mangavalkandClaude Opus 5.5 ad77b06c36 Initial import: robot firmware + PlatformIO two-env scaffold
Robot-side firmware (Teensy 4.0) imported unchanged as extracted.
platformio.ini defines [env:robot] (teensy40) and [env:remote]
(teensy41); scripts/select_src_dir.py points each env at its own
sketch folder so robot/ and remote/ stay Arduino-style sketches.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 15:36:37 +02:00
mangavalk 772e4c34ed upgrade to new unity version 2023-04-10 15:11:41 +02:00
mangavalk 43e60d535a updated walk and controller input to joystick 2022-12-04 23:11:05 +01:00
mangavalk 4be4615a10 Updated to new design 2019-06-10 15:20:47 +02:00
mangavalk 6706350811 wireless working 2019-05-26 22:58:04 +02:00
mangavalk 1217fcec34 wip wireless
payload max 32byte problem
2019-05-26 22:29:00 +02:00
mangavalk 4ec5020ef7 First version including eeprom 2019-05-25 23:36:25 +02:00
mangavalk 4bbd5c1828 Initial commit 2019-05-25 21:32:46 +00:00
mangavalk e1e06ee2cb better walk control 2019-05-19 15:54:46 +02:00