For as capable as smartphone hardware is, the software running on them can be especially restrictive and cumbersome. Unlike a single-board computer with GPIO running a standard Linux operating system and some intuitive programming language like Python, smartphones are generally walled gardens where programming major overhead, and if a custom program can be run on them at all the user still has to figure out how to interface hardware with a USB-C port. To skip past all of this, [nicolas.ma] built an audio modem that can send keyboard input to a computer with nothing more than a browser.
The “keyboard” starts off in a browser running on a standard smartphone. A user can input text into the browser, which then gets converted into a series of audible audio pulses that can be sent to the keyboard. The keyboard itself listens to those pulses, decodes them, and then sends the text through to the computer as a standard USB device thanks to an Arduino Micro at the center. Arduino Micros are excellent choices for keyboard controllers because they have a built-in USB chip.
The protocol used here is designed and built by [nicolas.ma] as well. The words allow for variable length, with the device determining message length, and a word-ending scheme that automatically sends the message to memory when it’s detected that the message is finished. There’s also integrity checking and the ability to check on the link’s state. From hardware to software it’s an impressive build, and for anyone wondering what this might be used for [nicolas.ma] has already built a password manager from it.

In 1966 the first acoustic modem was invented. This one is very similar, but it does not take advantage of the ability to use higher audio frequencies, and we also cannot see its range.
In 1966 the first acoustic modem was invented. This one is very similar, but it does not take advantage of the ability to use higher audio frequencies, and we also cannot see its range.
Old acoustic couplers did not use very high audio frequencies – just 1070Hz to 2225Hz (Bell 103 compatible couplers – 300bps). They were extremely rudimentary in every aspect.
This project is using a simple OOK modulation over open air – call it cheap if you want, but hey, ingenuity moves the world.
Dial up might be a stretch but I don’t see why you couldn’t have something akin to a zx spectrum tape storage.
I password.manager i dont known if i like my password being transfer using audio which can be recorded or is the a encryption key
Well I have a suspicion you’d badly mistype it so it’ll be okay
Lol
Reminds me of google tone sending web urls between computers
really struggling to understand the use case. you’re at a site where you’re allowed to plug a usb device into the PC, but you’re not allowed to install software on the PC, and you aren’t allowed to install software on the phone, and you hate bluetooth, and you hate existing usb portable keyboards more than you hate phone keyboards?
Leave one plugged into each widget and have some protocol to select which one you’re talking to and you don’t have to walk around the lab or server room with a spare keyboard that you plug and unplug ad nauseum.. also everyone can spy on everything you do
but i just use connectbot for that :)
RE: “…A user can input text into the browser, which then gets converted into a series of audible audio pulses …” Zenith Clicker Remote reinvented : ]
Still, clever hack out of the corporate walled gardens all budget cell phones had became. I actually had somewhat cheaper thought of just faking the hardware and adding my own things I need around it, and I’ve seen prototypes in action done by someone else smarter than me, so it is definitely doable.