[HN Gopher] Show HN: Micro-RLE <=264-byte compression for UART/M...
___________________________________________________________________
Show HN: Micro-RLE <=264-byte compression for UART/MCU logs, zero
RAM growth
I needed to stuff twice the telemetry through the same 115 kbaud
line on a Cortex-M0+ that only had 8 kB flash left. Micro-RLE is
the smallest drop-in I could come up with: 264 B of Thumb code, 36
B of state, no malloc, worst-case 14 cycles/byte and still lossless
for every 8-bit pattern. On the usual sensor streams (ADC, IMU,
GPS) it's 33-70 % smaller than raw output and boots in < 600 us, so
you can fire-and-forget from main() before the PLL even locks.
Repo is a single .c file and a 3-function API--replace the weak
emit() hook with your UART / DMA / ring-buffer and you're done.
Size proof: arm-none-eabi-size micro_rle.o text data bss 264 0 36
MIT licensed, link in the repo. Happy to hear where else this fits!
Author : CoreLathe
Score : 3 points
Date : 2025-11-01 19:04 UTC (3 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
___________________________________________________________________
(page generated 2025-11-01 23:01 UTC)