Commit Graph

5 Commits

Author SHA1 Message Date
Allen Hill 5208e083f3 Redesign (simplify) top-level avclan interface to use expected/nullable unique_ptr
- Peripheral::read/send now return `expected<unique_ptr<Frame>, Error>`
for a unified success/error interface.
- Peripheral::route returns `expected<unique_ptr<Frame>, Error>` to
distinguish intent: (intentional) non-response vs unable to respond
- Other functions with optional message semantics (handle,poll,react)
return a unique_ptr whose ownership-state indicates response intent
(i.e. send new message)

Bundled necessary changes:
- Switch Frame allocation from global to local (enabled via member
  function new/delete)
- Add new header-library tl::expected to shim avr-libstdcpp

Unrelated: Defensive `continue` added after `route`, to reduce Bus
activity check latency

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 14:47:47 -07:00
Allen Hill 0b0c9335f9 Decouple hardware specific code from generic, agnostic code 2026-06-23 17:29:52 -07:00
Allen Hill a9ea586ed4 Setup and bugfix programming with avrdude 2023-09-10 16:05:44 -04:00
Allen Hill eb93931522 Only download Microchip pack if avr-libc doesnt support ATtiny3216 2023-08-22 11:59:41 -04:00
Allen Hill 522fb41290 Switch to CMake 2023-08-21 20:06:30 -04:00