in 2015 I came across Microscheme, a subset of Scheme which runs on Arduino devices: https://ryansuchocki.github.io/microscheme/
I gave a shot at writing a keyboard firmware for it, but debugging on the device was just too tedious since the only output available was the blink patterns of a single LED.
but last week I took another look at it and realized I could run all the code on my laptop if I wrote a test harness in Racket; that way I'd get prints and stack traces working.