How clockworkpi/uconsole works
uConsole is a handheld-computer hardware and software support repository: it provides OS-image release information, keyboard firmware and flashing tools, hardware-specific patches and scripts, and 4G-extension resources. The main user workflow is selecting an OS image, downloading it, and flashing it to the device. The keyboard workflow is firmware source to supplied firmware and a documented flashing script. Keyboard source excerpts show interfaces and state types, but not the implementations that connect scanning, input handling, and USB HID output; those links are therefore omitted. Several README capabilities are documented without corresponding source in the sampled files.
Main entry points: flash.sh Keyboard flash script · README.md Image releases · maple_upload Keyboard upload utility · 4G 4G firmware packages
Components 19
OS and platform
- Image releases
README.md - Platform patches
Code/patch - CM4 patch guidance
Code/patch/cm4/20230630/README.md - A06 patch guidance
Code/patch/a06/20230630/README.md
Keyboard firmware
- Keyboard firmware source
Code/uconsole_keyboard - Keyboard firmware binary
Bin/uconsole_keyboard_flash/uconsole_keyboard.ino.bin - Keyboard flash script
Bin/uconsole_keyboard_flash/flash.sh - Keyboard upload utility
Bin/uconsole_keyboard_flash/maple_upload
4G extension
- 4G usage guidance
wiki/How-to-use-the-4G-extension.md - 4G firmware packages
Bin/4G
Hardware utilities
- A06 Gearbox
README.md - Audio jack GPIO helper
Code/scripts/audio_3.5_patch.py
Other components
- uConsole user
- Image download host
- OS image flasher
- uConsole device
- Keyboard hardware
- 4G extension
- Device GPIO
Connections 17
- uConsole user → Image releases: selects release
- Image releases → Image download host: provides download details
- uConsole user → Image download host: downloads image
- uConsole user → OS image flasher: flashes image
- OS image flasher → uConsole device: writes image
- uConsole user → CM4 patch guidance: consults guidance
- uConsole user → A06 patch guidance: consults guidance
- Keyboard firmware source → Keyboard firmware binary: build artifact
- uConsole user → Keyboard flash script: runs script
- Keyboard flash script → Keyboard upload utility: invokes uploader
- Keyboard flash script → Keyboard firmware binary: flashes firmware
- Keyboard upload utility → Keyboard hardware: uploads firmware
- uConsole user → 4G usage guidance: consults guidance
- uConsole user → 4G firmware packages: obtains firmware
- 4G firmware packages → 4G extension: upgrades
- uConsole user → A06 Gearbox: sets CPU gear
- Audio jack GPIO helper → Device GPIO: reads and controls