tdfischer
|
22d1b4d077
|
tasks: more Fract8 update
|
2026-02-28 16:54:44 +01:00 |
|
tdfischer
|
935f30d968
|
events: combine gravity and forwards fusion sensors into a shared motionframe
|
2026-02-28 16:52:00 +01:00 |
|
tdfischer
|
f2b2674158
|
tasks: render: switch to using the new figments DMA driver
|
2026-02-28 16:49:26 +01:00 |
|
tdfischer
|
319c812a61
|
graphics: update to use figments Fract8 type
|
2026-02-28 16:47:25 +01:00 |
|
tdfischer
|
95ebc7820a
|
logging: implement a way to set the logging levels at runtime
|
2026-02-28 16:43:25 +01:00 |
|
tdfischer
|
08a3c65346
|
animation: rewrite the apply() algorithm to use fewer timers and multiple targets at once
|
2026-02-02 19:43:43 +01:00 |
|
tdfischer
|
2aaa64374b
|
tasks: simulation: split out flash storage api bits into separate mod
|
2026-01-31 16:29:11 +01:00 |
|
tdfischer
|
75c544c461
|
cargo: config: remove --chip from espflash command
|
2026-01-27 16:55:54 +01:00 |
|
tdfischer
|
a0ece1696f
|
cargo: config: turn off frame pointers, but turn on stack protection
|
2026-01-27 16:55:37 +01:00 |
|
tdfischer
|
ecb06e1a56
|
ego: engine: warnings--
|
2026-01-27 16:53:54 +01:00 |
|
tdfischer
|
3425cd2339
|
partitions: shrink sim data partition back to fit into 8mb
|
2026-01-05 13:07:24 +01:00 |
|
tdfischer
|
ec1761f73e
|
build: support partition sizes in kb
|
2026-01-05 13:07:03 +01:00 |
|
tdfischer
|
f2ff1914b1
|
radio: rewrite the networking stack, and implement some BLE magic
|
2026-01-05 13:06:23 +01:00 |
|
tdfischer
|
3bf7ebc997
|
graphics: ssd1306: fix crash in dithering
|
2026-01-05 13:03:58 +01:00 |
|
tdfischer
|
bac9300b7e
|
tasks: render: commit only works with mut, duh
|
2026-01-05 13:03:38 +01:00 |
|
tdfischer
|
d01bda9dd5
|
tasks: ui: use embassy-futures instead of futures crate
|
2026-01-05 13:02:41 +01:00 |
|
tdfischer
|
36daf8d6ee
|
tasks: rendering: commit surfaces before drawing
|
2026-01-05 13:00:18 +01:00 |
|
tdfischer
|
6132efb7c4
|
main: remove the critical_section from the logger since it isn't needed
|
2026-01-05 12:59:00 +01:00 |
|
tdfischer
|
23043a42a2
|
logging: implement a way to set logging levels and categories by env variables
|
2026-01-03 14:50:18 +01:00 |
|
tdfischer
|
fa57c0ce81
|
events: use fract8 instead of f32 for sim progress percentage
|
2026-01-03 14:49:17 +01:00 |
|
tdfischer
|
a117b04c5f
|
graphics: oled_ui: update figments api
|
2026-01-03 14:48:52 +01:00 |
|
tdfischer
|
fe0e2bede2
|
tasks: motion: print out sim progress percentage
|
2026-01-03 14:48:23 +01:00 |
|
tdfischer
|
f4c379a3e8
|
graphics: ssd1306: reimplement dithering using an ordered dither map
|
2026-01-03 14:47:38 +01:00 |
|
tdfischer
|
b6029778e0
|
graphics: display: update figments api to drop pixel spaces
|
2026-01-03 14:47:12 +01:00 |
|
tdfischer
|
3d6f784683
|
partitions: go back to 8mb flash detection
|
2026-01-03 14:46:05 +01:00 |
|
tdfischer
|
38251303b7
|
build: add support for stream decimation when generating sim data
|
2026-01-03 14:45:37 +01:00 |
|
tdfischer
|
461f17071f
|
tasks: simulation: give even more accurate error reporting
|
2026-01-03 14:45:09 +01:00 |
|
tdfischer
|
4f8131b189
|
tasks: simulation: better handle certain errors
|
2026-01-02 15:56:40 +01:00 |
|
tdfischer
|
d2b10288a7
|
events: finally drop the whole bus garage idea
|
2025-12-27 19:55:22 +01:00 |
|
tdfischer
|
7e0889b624
|
src: build without --feature simulation
|
2025-12-25 11:56:34 +01:00 |
|
tdfischer
|
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
|
2025-12-24 17:08:53 +01:00 |
|
tdfischer
|
83e4614d10
|
build: move the int/stream type mapping into a simdata module shared by the build script
|
2025-12-24 09:59:12 +01:00 |
|
tdfischer
|
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
|
2025-12-24 09:44:01 +01:00 |
|
tdfischer
|
9059066206
|
ego: orientation: allow for a more generous definition of earth gravity
|
2025-12-24 09:42:57 +01:00 |
|
tdfischer
|
21fba09a4b
|
main: add a dual-core feature flag, to switch between configs while debugging deadlocks
|
2025-12-24 09:42:00 +01:00 |
|
tdfischer
|
cbab48c37f
|
main: be more verbose when we cant launch a sim data task
|
2025-12-24 09:19:16 +01:00 |
|
tdfischer
|
da60b6ddf5
|
graphics: display: clean up some of the display hardware status locking code
|
2025-12-24 09:18:50 +01:00 |
|
tdfischer
|
d8ffdab92b
|
tasks: render: add some extra pixels for buffer space for now
|
2025-12-24 09:17:33 +01:00 |
|
tdfischer
|
2d9d31092c
|
tasks: simulation: increase task pool size to 3, for annotations
|
2025-12-24 09:15:54 +01:00 |
|
tdfischer
|
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
|
2025-12-24 09:15:18 +01:00 |
|
tdfischer
|
7cc87b42c8
|
mpu: only emit hardware sensor states, not logical ones
|
2025-12-24 09:13:11 +01:00 |
|
tdfischer
|
2eebdc5837
|
main: use a noop mutex with i2c
|
2025-12-24 09:12:32 +01:00 |
|
tdfischer
|
046406291a
|
events: rewrite the eventing system to reduce mutex usage to just the measurement bus
|
2025-12-24 09:11:16 +01:00 |
|
tdfischer
|
36f232f43c
|
build: add annotations to event stream packages
|
2025-12-23 19:55:08 +01:00 |
|
tdfischer
|
af021676db
|
logging: log crate names, and hide non-renderbug messages
|
2025-12-23 19:54:25 +01:00 |
|
tdfischer
|
3f651718a4
|
tasks: motion: move the entire motion prediction engine into the second core, dedicating core 1 to hardware
|
2025-12-22 15:55:06 +01:00 |
|
tdfischer
|
73b037f0c2
|
cargo: add critical-section to deps
|
2025-12-22 15:37:02 +01:00 |
|
tdfischer
|
82d61a9df3
|
events: move the displaycontrols out of the bus garage and back into main
|
2025-12-22 15:22:14 +01:00 |
|
tdfischer
|
d1cfcb30e8
|
main: bark on watchdog logs
|
2025-12-22 14:59:51 +01:00 |
|
tdfischer
|
7c250da4d9
|
partitions: with 16mb flash size, we can increase sim data size substantially
|
2025-12-22 14:59:16 +01:00 |
|
tdfischer
|
d68df7c037
|
cargo: config: add -fforce-frame-pointers and set the esp-rtos tick rate to 50hz, and set flash size to 16mb
|
2025-12-22 14:58:57 +01:00 |
|
tdfischer
|
d9fd112ee0
|
debug: add some more trace-level logging to animation and safetyui bits
|
2025-12-22 14:57:25 +01:00 |
|
tdfischer
|
ea851f4b5a
|
tasks: simulation: restructure sim data storage to better support the next step of resampling data to fit the configured partition
|
2025-12-21 18:41:35 +01:00 |
|
tdfischer
|
83ecdb61b2
|
cargo: update to esp-hal 1.0, and use esp-radio for less crashes
|
2025-12-07 14:58:07 +01:00 |
|
tdfischer
|
b64678cff3
|
tasks: oled: update to new nullbufferpool syntax
|
2025-12-07 14:55:33 +01:00 |
|
tdfischer
|
727e96a539
|
graphics: ssd1306: move init steps to new asyncn method
|
2025-12-07 14:55:05 +01:00 |
|
tdfischer
|
6123844cd7
|
tasks: ui: update to new nullbufferpool signature
|
2025-12-07 14:53:26 +01:00 |
|
tdfischer
|
531c31d190
|
main: clean up use statements
|
2025-12-07 13:17:44 +01:00 |
|
tdfischer
|
5a403809e9
|
main: use StaticCell::init_with instead of init
|
2025-12-07 13:17:25 +01:00 |
|
tdfischer
|
7471cc1fbe
|
cargo: remove oled from default features
|
2025-12-07 13:16:55 +01:00 |
|
tdfischer
|
88f1d3f8be
|
cargo: add missing rtt dep
|
2025-12-07 13:16:34 +01:00 |
|
tdfischer
|
4235b54959
|
wifi: rewrite wifi task
|
2025-12-07 13:14:07 +01:00 |
|
tdfischer
|
20cc634714
|
logging: implement rtt logging output
|
2025-12-07 13:07:56 +01:00 |
|
tdfischer
|
da7511aec7
|
main: configure hardware watchdogs to be petted faster than they expire
|
2025-12-07 13:03:30 +01:00 |
|
tdfischer
|
7666123809
|
cargo: set a default-run
|
2025-12-07 12:59:31 +01:00 |
|
tdfischer
|
84d6789aa3
|
logging: refactor max level config
|
2025-12-07 12:58:34 +01:00 |
|
tdfischer
|
bcceb868c0
|
graphics: ssd: add Debug to SsdPixel
|
2025-12-07 12:57:55 +01:00 |
|
tdfischer
|
8123960db0
|
cargo: config: set wifi code to Deutschland
|
2025-12-07 12:57:06 +01:00 |
|
tdfischer
|
caf8556e54
|
build: always build assets, since the UI drawing is separate from the hardware now
|
2025-12-07 12:56:38 +01:00 |
|
tdfischer
|
972ecbbdc2
|
tasks: mpu: emit gravity and forward sensor statuses
|
2025-12-07 12:55:23 +01:00 |
|
tdfischer
|
49c36c8aa8
|
tasks: oled_ui: tweak icon displays again
|
2025-12-07 12:54:54 +01:00 |
|
tdfischer
|
b98ca91f24
|
tasks: gps: emit sensor statuses during init
|
2025-12-07 12:53:29 +01:00 |
|
tdfischer
|
567cc0d6e5
|
tasks: simulation: refactor the simulation tasks to common types that can simulate any sensor
|
2025-12-06 19:22:52 +01:00 |
|
tdfischer
|
761dbb8951
|
cargo: refer to local rmp build for builddeps
|
2025-11-23 21:33:54 +01:00 |
|
tdfischer
|
9c37cb58d1
|
graphics: ssd1306: refactor
|
2025-11-09 17:09:27 +01:00 |
|
tdfischer
|
092885f163
|
events: rewrite how sensor statuses are reported, and implement some oled UI icons for it
|
2025-11-08 12:04:22 +01:00 |
|
tdfischer
|
a36fe3d1ac
|
partitions: increase sim data size
|
2025-11-05 12:46:52 +01:00 |
|
tdfischer
|
ee7c6fd068
|
cargo: add missing embedded-storage deps
|
2025-11-05 12:46:38 +01:00 |
|
tdfischer
|
41f69833e5
|
tasks: simulation: move sim data into a separate partition for flashing
|
2025-11-05 11:56:10 +01:00 |
|
tdfischer
|
4776227793
|
clean up imports and reorganize the ssd bits into a graphics mod
|
2025-10-26 11:14:28 +01:00 |
|
tdfischer
|
27e92edef0
|
oled: split out the ssd1306 driver into its own module, and reimplement the oled design with separate rendering and drawing tasks
|
2025-10-25 17:51:03 +02:00 |
|
tdfischer
|
db912e0085
|
cargo: enable embedded-graphics support in figments
|
2025-10-25 10:30:47 +02:00 |
|
tdfischer
|
8783441814
|
render: rewrite the render loop to use a time-based frame index, allowing for future fps scaling based on energy mode
|
2025-10-25 10:30:01 +02:00 |
|
tdfischer
|
2dcdca0675
|
oled: rewrite the oled UI to have animations, and support a version of sleeping where the display is blank, at least
|
2025-10-17 20:28:55 +02:00 |
|
tdfischer
|
25a7dc7e18
|
animation: write a const Animation::new()
|
2025-10-17 20:28:17 +02:00 |
|
tdfischer
|
36826fbedc
|
main: warnings++
|
2025-10-17 18:12:40 +02:00 |
|
tdfischer
|
088dde4450
|
cargo: clean up dependencies and improve build times
|
2025-10-17 18:06:24 +02:00 |
|
tdfischer
|
baa85612b7
|
warnings--
|
2025-10-17 14:43:58 +02:00 |
|
tdfischer
|
9f17c6a8ef
|
mpu: attempt to avoid recalibration after a basic reboot, if we were calibrated prior to the reboot
|
2025-10-17 14:40:26 +02:00 |
|
tdfischer
|
a97a28bf9f
|
ui: split out safety ui into its own dedicated set of layers
|
2025-10-17 14:40:07 +02:00 |
|
tdfischer
|
818f8af49a
|
tasks: write an oled information driver
|
2025-10-17 14:39:26 +02:00 |
|
tdfischer
|
eb9f949e4e
|
display: make DisplayControls cloneable in a multi-thread context
|
2025-10-17 14:38:49 +02:00 |
|
tdfischer
|
d957615d4e
|
events: rewrite some event buses to use multi-consumer pubsub instead of single-consumer channels
|
2025-10-17 14:37:23 +02:00 |
|
tdfischer
|
aa5c86b4a7
|
logging: fix deadlocks with a proper semaphore
|
2025-10-17 14:34:32 +02:00 |
|
tdfischer
|
f9a04a8c69
|
motion: docs++
|
2025-10-16 23:54:39 +02:00 |
|
tdfischer
|
a0ebe3535b
|
wifi: build++
|
2025-10-16 23:53:50 +02:00 |
|
tdfischer
|
f04878160c
|
build: add some pixmaps for the oled UI, and generated rust code at build time
|
2025-10-16 14:52:31 +02:00 |
|
tdfischer
|
8280f38185
|
bump a lot of big changes I dont want to break down into individual commits
|
2025-10-11 16:34:09 +02:00 |
|
tdfischer
|
0e9e0c1b13
|
idle: implement an idle framework module
|
2025-10-11 16:32:49 +02:00 |
|
tdfischer
|
9a8f0b31ab
|
animation: implement an animation module
|
2025-10-11 16:32:21 +02:00 |
|