Hi - first off, this project is fantastic. A 28.9M-param model generating stories fully offline on an $8 ESP32-S3 is genuinely impressive work.
I've built the firmware successfully against esp32 core 3.3.10 with the custom partitions.csv, and regenerated vocab.h from the TinyStories pipeline in this repo (vocab size 25353; the hardcoded prompt token IDs {433, 447, 259, 405} in esp32_llm.ino match, so the tokenizer side reproduces exactly). The sketch compiles and flashes fine - but without the trained weights the device stops at "model partition not found" / "bad model magic", since model.bin (~14.9 MB 4-bit export) isn't included in the repo and I couldn't find it in any release or on Hugging Face.
Would you be willing to publish the trained model.bin - either as a GitHub release attached to this repo or as a Hugging Face upload? Even the exact checkpoint from your demo video would be great. Failing that, could you share the exact training hyperparameters/config used for that run (steps, LR schedule, batch size, hardware/time), so results can be reproduced faithfully with the scripts in the repo?
For context: I run FluxBench (https://fluxbench.ai), a browser hardware workbench that now cloud-compiles this firmware end-to-end as a public gallery demo ("$8 AI Machine - 28.9M LLM on ESP32-S3"), with credit and links back to this repo. If you publish the weights, I'd love to include flashing instructions (esptool write_flash 0x110000 model.bin) so anyone can go from your repo to a talking board in minutes.
Thanks for considering it - and for open-sourcing this at all.
Hi - first off, this project is fantastic. A 28.9M-param model generating stories fully offline on an $8 ESP32-S3 is genuinely impressive work.
I've built the firmware successfully against esp32 core 3.3.10 with the custom partitions.csv, and regenerated vocab.h from the TinyStories pipeline in this repo (vocab size 25353; the hardcoded prompt token IDs {433, 447, 259, 405} in esp32_llm.ino match, so the tokenizer side reproduces exactly). The sketch compiles and flashes fine - but without the trained weights the device stops at "model partition not found" / "bad model magic", since model.bin (~14.9 MB 4-bit export) isn't included in the repo and I couldn't find it in any release or on Hugging Face.
Would you be willing to publish the trained model.bin - either as a GitHub release attached to this repo or as a Hugging Face upload? Even the exact checkpoint from your demo video would be great. Failing that, could you share the exact training hyperparameters/config used for that run (steps, LR schedule, batch size, hardware/time), so results can be reproduced faithfully with the scripts in the repo?
For context: I run FluxBench (https://fluxbench.ai), a browser hardware workbench that now cloud-compiles this firmware end-to-end as a public gallery demo ("$8 AI Machine - 28.9M LLM on ESP32-S3"), with credit and links back to this repo. If you publish the weights, I'd love to include flashing instructions (esptool write_flash 0x110000 model.bin) so anyone can go from your repo to a talking board in minutes.
Thanks for considering it - and for open-sourcing this at all.