Over the last year or so, we’ve seen an explosion in the popularity of cyberdecks — those highly portable and occasionally wearable computers that would make William Gibson proud. A lot of the cyberdecks we see are based on NUCs or the Raspberry Pi and are essentially post-apocalyptic DIY laptops. But what if you want to play with microcontrollers on the go? Do you really need traditional computing power?
If you build [kmatch98]’s adorable cyberDÛCK, the answer is no. This duck can edit and run CircuitPython files anywhere without a separate computer, as long as you have some kind of USB keyboard. It has a text editor for writing Python scripts the regular way as well as a REPL for running commands on the fly.
One of the biggest hurdles in portable microcontrollering is getting HID access so you can communicate with a keyboard. Flip open cyberDÛCK and you’ll find two ItsyBitsy M4s — one being used as the USB host, and the other controls the display and is meant to be programmed. To get the keyboard input across, [kmatch98] adapted a MicroPython editor to take input from UART. Waddle past the break to check out the sprite demo, and stick around to see [kmatch98] discuss the duck in detail.
We understand if you can’t wait to make one of these yourself. In the meantime, did you know you can code CircuitPython directly from your phone?
Spider Duck!
Spider Duck!
Does whatever a spider Duck does!
Can he swing from a web?No he can’t
He’s a Duck
Lookout!
He is the spider Duck!!
You could so easily have replaced ‘spider’ with ‘cyber’… I almost think you meant to but you got too carried away with the song.
https://marvel.fandom.com/wiki/Howard_the_Duck_(Unknown_Reality)
Go to link and scroll down a bit and behold spider-duck
I do see a possible way to add keyboard-like utility to this project without having to carry some sort of external keyboard.
That being a chording keyboard, like in this article https://hackaday.com/2015/11/29/strike-a-chord-with-this-pocket-keyboard/ , granted you’d have to learn a new way of typing but this sort of keyboard could be added to the CyberDUCK project as either an external shell/caddy and or firmly integrated by building the buttons into the present project case with very little bulk added.
In fact if the builder so wanted they could probably add a small trackball-like device for mouse support
I would consider one of those (slightly larger than) credit card sized Bluetooth keyboards.
Thanks for the comment, I would love to be able to use a Bluetooth keyboard with this project. If you figure out how add a Bluetooth keyboard as an input in CircuitPython, please send me a note. I’ve submitted an issue with the Bluetooth low energy library requesting an example (see here https://github.com/adafruit/Adafruit_CircuitPython_BLE) so maybe that will be another avenue to help get it working.