Commit graph

112 commits

Author SHA1 Message Date
0140e363ce WIP 2025-05-26 06:44:41 -04:00
bfa551c9e2 firmware: Improve naming of CRC module and structs. 2025-05-26 06:23:09 -04:00
71775c72d6 firmware: Convert host interface back to BufferedUart. 2025-05-25 16:10:39 -04:00
b266e7f926 firmware: Use array instead of Vec for UART receive buffer. 2025-05-25 15:45:17 -04:00
fbcc854496 firmware: More reorg of 'uart' utilities.
* Move 'uart' module to 'io'.

* Convert 'io::framed_rx' to a generic implementation.
2025-05-25 15:10:26 -04:00
8703c3c4b8 firmware: Convert uart::read_exact_with_timeouts to a generic function.
The function now works using any source object which implements
embedded_io_async::Read and embedded_io::ReadReady.
2025-05-25 13:22:21 -04:00
f6d3cae478 firmware: Generate documentation for non-public items. 2025-05-25 13:14:07 -04:00
bf85e0a070 firmware: Ensure that the UART DMA buffer is not 'empty'. 2025-05-25 08:42:06 -04:00
6280a66b8c firmware: More improvements in UART receive functions. 2025-05-25 08:13:43 -04:00
0d8987ac62 firmware: Update dependencies. 2025-05-25 07:19:07 -04:00
304a0490a3 firmware: Switch to opt-level 'z'. 2025-05-25 07:16:48 -04:00
ca344decca firmware: UART reception rewrite
* Rewrite UART utility function for receiving bytes with timeouts

* Improve structure of FramedUartRx module

* Convert host interface UART back to DMA with ring-buffer on receive
  path
2025-05-24 19:21:48 -04:00
85d299362f firmware: Use correct range expressions in UART reading code. 2025-05-20 06:34:28 -04:00
c88b4ca1f8 firmware: Increased logging in host rx_task. 2025-05-19 11:32:07 -04:00
a8b6838cd9 firmware: Simplify imports of protobuf namespaces. 2025-05-19 06:17:54 -04:00
62f1b83d2b firmware: Update dependencies. 2025-05-18 14:57:22 -04:00
93394c54c7 firmware: Add target-message sending, and echo response. 2025-05-18 14:50:17 -04:00
a25eec962d firmware: Move generated protobuf code to top of library crate. 2025-05-18 11:15:31 -04:00
1d6f28752c firmware: Decode host messages. 2025-05-18 10:46:21 -04:00
c472fccaf7 prototest: Update for restructured protobuf. 2025-05-18 09:39:03 -04:00
a396b88ef9 firmware: Update for restructured protobuf. 2025-05-18 09:38:53 -04:00
221fe6af4e proto: Restructure into host/target messages. 2025-05-18 09:38:33 -04:00
55d0dace03 firmware: Complete refactoring of framed UART receiver. 2025-05-18 07:00:55 -04:00
305ec83621 firmware: Update dependencies. 2025-05-18 06:14:20 -04:00
bccf6456c5 firmware: Experiment with copy_within(). 2025-05-17 06:34:43 -04:00
b1e119b498 firmware: Refactor UART read loop code into its own module. 2025-05-14 20:50:45 -04:00
60e7f25bc9 firmware: Move read_with_timeouts to the library. 2025-05-14 17:22:24 -04:00
b936b690d4 firmware: Update Embassy crates. 2025-05-14 17:10:59 -04:00
506800168a firmware: Use proper mutex for static CRC engine. 2025-05-10 06:05:31 -04:00
656abf4d66 firmware: Convert HeatPump and Thermostat UARTs to buffered mode. 2025-05-09 15:37:31 -04:00
06d0ed8dd1 firmware: Update dependencies. 2025-05-07 16:32:40 -04:00
31b748afe6 firmware: Remove 'Interface' structs from tasks. 2025-05-07 15:58:35 -04:00
6b2fa490ea firmware: Add explicit configuration for rustfmt. 2025-05-07 15:41:48 -04:00
7e161dd316 firmware: Enable Clippy 'pedantic' and 'cargo' lints. 2025-05-07 15:30:02 -04:00
bf52654a9c firmware: Improve UART read handling. 2025-05-03 14:09:21 -04:00
3821403c6e firmware: Improve host_interface RX loop. 2025-05-03 08:45:06 -04:00
b6c61248b5 firmware: Minor cleanups. 2025-05-03 08:04:22 -04:00
314a0aeea5 firmware: Improve spawning of tasks. 2025-05-03 07:06:33 -04:00
523f157acf firmware: More work on the host_interface receive loop. 2025-04-30 16:50:35 -04:00
13092644a5 firmware: Improve initial host_interface rx loop. 2025-04-28 17:19:07 -04:00
47e050e7c0 firmware: Update Embassy dependencies. 2025-04-28 17:18:39 -04:00
641bea184c firmware: Begin building host_interface RX loop.
* Switch to BufferedUart (no longer using DMA).

* Add StaticCells for various buffers to keep them off the stack.
2025-04-28 09:43:25 -04:00
68ecdddaba firmware: Enable optimization for 'dev' profile. 2025-04-28 09:40:31 -04:00
276b17fc47 firmware: Use static memory.x file. 2025-04-27 20:35:33 -04:00
1cdceb2f9f prototest: Update to new proto definitions. 2025-04-27 08:18:14 -04:00
46cb843124 proto: Make data field in 'echo' messages non-optional. 2025-04-27 08:17:58 -04:00
be10ae8f04 prototest: Move protobuf queues to global variables. 2025-04-27 08:16:32 -04:00
a13cc1dd4c prototest: Improve InvalidMessageError. 2025-04-26 17:52:28 -04:00
aaed213a50 prototest: Use try/else where appropriate. 2025-04-26 17:52:04 -04:00
e378d854f6 firmware: Conditionally include some imports. 2025-04-26 17:23:00 -04:00