Обнаружил интересное. Гер Бенчофф в 2014 году знатно упоролся и написал библиотеку... реализующую программный uart ....через аудиовыход ...на js
У меня нет слов. Если это работает и сейчас, то это будет гениально.
Да, скорость не превышает 9600, да выбор языков разработки и сред резко сужается, да, существуют ограничения на автопроигрывание и прослушивание, но при этом появляется хоть какая то свобода использования старых китайских смартфонов в робототехнике.
подробности: http://forum.espruino.com/conversations/257732/
upd
Итак...
1. фича входит в espruino ide. Для своих целей можно попытаться выдернуть файл
https://www.espruino.com/ide/EspruinoTools/core/serial_web_audio.js и разобраться как оно работает.
2. Есть нескромное подозрение что при некоторой удаче эта эмуляция uart будет корректно работать с программной реализацией uart под названием picoUart