A Real-Time OS built for Keyboard using CircuitPython.
- module/keyboard: Circuit Python Keyboard(usb & ble)
-
Fn + Q: connection via right usb type-c
-
Fn + W: connection via upper usb type-c
-
Fn + E: connection via bluetooth
-
Fn + BackSpace: erase saved bluetooth info(use when connection error)
-
Fn + TAB: switch rgb lighting mode
-
Fn + UP_ARROW: light++
-
Fn + DOWN_ARROW: light--
-
Fn + Home: PageUp
-
Fn + End: PageDown
-
Fn + Esc: PrtSc
-
Fn + 1-10,-+: F1-12
- Fix Bluetooth(hardward issue)
- Add Basic RGB colors
- 6-key sequential(via upper usb type-c)
- Update PCB adaptation
- Disable BLE
- Middle Term Report
- Final Goal: Basic Keyboard + Sleep Mode + At Least One Modular Module (Camera, Screen, Numpad, etc.).
- Connection via USB or BLE.
- Basic RGB lighting
- Basic key mapping
- Auto-sleep (low power mode)
- Low-latency waking
- Camera
- Screen
- Numpad
- Knobs
- Motor
- Add independent camera code
- Set the CH9329 as the default connection.
- When using the CH9329 connection, if more than six keys are pressed simultaneously, the additional (beyond six) keys will be released in the order they were pressed.
- wpa2 enterprise support: zephyrproject-rtos/zephyr#78921
- Foot Pads: Completed √
- Li Battery: Completed √
- Upper-side USB port: Completed √
- USB HUB: Testing
- Dry Battery: Designing
- The voltage of the dry battery boost system is low.
- When powered by USB, the battery pin voltage of the IP5407 should not be left floating.
- There is a conflict between the two USB ports.
- Use IP5407 power circuit(works fine).
- Add USB Type A for external power supply.
- Use SX1308 power circuit(significant error)
- Place the battery interface on the top
- Thickness of the main control board
- Front height, foot support
- Check key position coordinates
- Use ETA9741 power circuit
- Replace single-channel AND gate circuit
- Automatic charge-discharge switching
- Battery switch MOS control
- Physical battery switch position
- MCU main control board
- Key alignment
- PCB shape
- RGB input signal interruption (replace 470K resistor with 500Ω and add 3.3v-5v boost circuit) √
- Battery charging anomaly (seems fine, recheck; prone to failure?)
- Charging circuit capacitor optimization
- Charging indicator light arrangement optimization √
- Replace charging interface with a surface mount √
- Reduce component variety
- USB to TTL chip √
- USB Type-C pin GND reversed (Done, to be checked) √
- Consider moving USB Type-C upwards
- RGB LED pin assignment error (replaced backing in the next design)
- Power supply short circuit (replaced battery chip in the next design)
- Add Prototype Picture
- Migrate to MicroPython
- circuitpython-ch9329: https://github.com/74th/circuitpython-ch9329
- HelloWord-Keyboard: https://github.com/peng-zhihui/HelloWord-Keyboard
- nRF52840-2.4GKeyboard: https://github.com/BrianLChen/nRF52840-2.4GKeyboard