6e1f5423f9
simulation: rewrite the simulation data processing to share a lot of the same code on both the build script and the chip, allowing for more general data streaming possibilities
Victoria Fischer2025-12-24 17:08:53 +01:00
83e4614d10
build: move the int/stream type mapping into a simdata module shared by the build script
Victoria Fischer2025-12-24 09:59:12 +01:00
2630c97609
ego: orientation: account for sensor bias when determining what 'forwards' is, and let forwards be more flexible if our detection finds it needs changed
Victoria Fischer2025-12-24 09:44:01 +01:00
9059066206
ego: orientation: allow for a more generous definition of earth gravity
Victoria Fischer2025-12-24 09:42:57 +01:00
21fba09a4b
main: add a dual-core feature flag, to switch between configs while debugging deadlocks
Victoria Fischer2025-12-24 09:42:00 +01:00
cbab48c37f
main: be more verbose when we cant launch a sim data task
Victoria Fischer2025-12-24 09:19:16 +01:00
da60b6ddf5
graphics: display: clean up some of the display hardware status locking code
Victoria Fischer2025-12-24 09:18:50 +01:00
d8ffdab92b
tasks: render: add some extra pixels for buffer space for now
Victoria Fischer2025-12-24 09:17:33 +01:00
2d9d31092c
tasks: simulation: increase task pool size to 3, for annotations
Victoria Fischer2025-12-24 09:15:54 +01:00
81df3e2973
tasks: mpu: remove the whole calibration step, as this is now handled inside the motion engine. maybe in the future we rewrite again to utilize the full DMP FIFO system on the IMU chip
Victoria Fischer2025-12-24 09:15:18 +01:00
7cc87b42c8
mpu: only emit hardware sensor states, not logical ones
Victoria Fischer2025-12-24 09:13:11 +01:00
af021676db
logging: log crate names, and hide non-renderbug messages
Victoria Fischer2025-12-23 19:54:25 +01:00
3f651718a4
tasks: motion: move the entire motion prediction engine into the second core, dedicating core 1 to hardware
Victoria Fischer2025-12-22 15:55:06 +01:00
7c250da4d9
partitions: with 16mb flash size, we can increase sim data size substantially
Victoria Fischer2025-12-22 14:59:16 +01:00
d68df7c037
cargo: config: add -fforce-frame-pointers and set the esp-rtos tick rate to 50hz, and set flash size to 16mb
Victoria Fischer2025-12-22 14:58:57 +01:00
d9fd112ee0
debug: add some more trace-level logging to animation and safetyui bits
Victoria Fischer2025-12-22 14:57:25 +01:00
ea851f4b5a
tasks: simulation: restructure sim data storage to better support the next step of resampling data to fit the configured partition
Victoria Fischer2025-12-21 18:41:35 +01:00
83ecdb61b2
cargo: update to esp-hal 1.0, and use esp-radio for less crashes
Victoria Fischer2025-12-07 14:58:07 +01:00
41f69833e5
tasks: simulation: move sim data into a separate partition for flashing
Victoria Fischer2025-11-05 11:56:10 +01:00
4776227793
clean up imports and reorganize the ssd bits into a graphics mod
Victoria Fischer2025-10-26 11:14:28 +01:00
27e92edef0
oled: split out the ssd1306 driver into its own module, and reimplement the oled design with separate rendering and drawing tasks
Victoria Fischer2025-10-25 17:51:03 +02:00
db912e0085
cargo: enable embedded-graphics support in figments
Victoria Fischer2025-10-25 10:30:47 +02:00
8783441814
render: rewrite the render loop to use a time-based frame index, allowing for future fps scaling based on energy mode
Victoria Fischer2025-10-25 10:30:01 +02:00
2dcdca0675
oled: rewrite the oled UI to have animations, and support a version of sleeping where the display is blank, at least
Victoria Fischer2025-10-17 20:28:55 +02:00
9f17c6a8ef
mpu: attempt to avoid recalibration after a basic reboot, if we were calibrated prior to the reboot
Victoria Fischer2025-10-17 14:40:26 +02:00
a97a28bf9f
ui: split out safety ui into its own dedicated set of layers
Victoria Fischer2025-10-17 14:40:07 +02:00
eb9f949e4e
display: make DisplayControls cloneable in a multi-thread context
Victoria Fischer2025-10-17 14:38:49 +02:00
d957615d4e
events: rewrite some event buses to use multi-consumer pubsub instead of single-consumer channels
Victoria Fischer2025-10-17 14:37:23 +02:00