Laan Tungir
|
0ea3e60391
|
v0.1.7 - Teensy 4.1 OTP SD pad: complete implementation with UI pad selection
Solution D: 4 KB chunk cap, dropped boot-time checksum verify (can't scale
to 900 GB), increased transport frame + req/resp buffers to 8 KB.
test_otp_sd.py: 10/10 pass (ASCII + binary round-trips, offset advance,
2 KB large plaintext, tamper detection).
Phase 6: ui_pick_pad() LVGL pad-selection screen with chksum prefix + size
display, Skip button, 30s timeout. otp_pad_sd_list_pads() scans /pads and
returns chksums + sizes. Wired into the non-debug boot flow in signer.ino
(DEBUG_AUTO_GENERATE=0 path). DEBUG_AUTO_GENERATE=1 stays headless with
auto-bind_first.
README: added comprehensive memory management section documenting the
FlexRAM architecture, custom linker script, .rodata-to-FLASH move,
build-time stack gauge, and current memory layout.
|
2026-07-30 18:20:30 -04:00 |
|
Laan Tungir
|
ac2e6347a2
|
v0.1.6 - Teensy 4.1 SD-card OTP pad: real implementation working on hardware
- otppad_embedded: bit-compatible port of libotppad (2386/2386 host tests pass)
- otp_pad_sd: SdFat-direct SD card pad reader (FAT-only, ASCII armor + binary .otp)
- pad_gen.ino: TRNG-sourced 1 MB pad generator using i.MX RT1062 TRNG registers
- Linker script: moved .rodata from DTCM to FLASH (EXCLUDE_FILE ed25519),
reclaiming 124 KB DTCM, free stack 5.9 KB -> 130.9 KB
- check_stack.sh: build-time FlexRAM stack gauge, wired into build_signer.sh
- test_otp_sd.py: 8/9 hardware tests pass (ASCII + binary round-trips,
offset advance, tamper detection; 10 KB plaintext times out on perf)
- test_classical.py: 16/16 pass with new memory layout (ed25519 OK)
- Memory evaluation document: plans/teensy41_memory_evaluation.md
|
2026-07-30 17:10:50 -04:00 |
|