continued to break out keys and pins
This commit is contained in:
33
boot.py
33
boot.py
@@ -1,13 +1,30 @@
|
||||
import busio
|
||||
import digitalio
|
||||
import usb_hid
|
||||
from hardware import io_extenders_pinout, pinout
|
||||
from adafruit_mcp230xx.mcp23017 import MCP23017
|
||||
import storage
|
||||
import usb_cdc
|
||||
|
||||
io_extender_index, pin_number = pinout[0]
|
||||
address, scl, sda = io_extenders_pinout[io_extender_index]
|
||||
io_extender = MCP23017(busio.I2C(scl, sda), address)
|
||||
pin = io_extender.get_pin(pin_number)
|
||||
pin.direction = digitalio.Direction.INPUT
|
||||
pin.pull = digitalio.Pull.UP
|
||||
|
||||
if pin.value:
|
||||
storage.disable_usb_drive()
|
||||
usb_cdc.disable()
|
||||
|
||||
bitmap_keyboard = usb_hid.Device(
|
||||
report_descriptor = (
|
||||
b'\x05\x01\t\x06\xa1\x01\x85\x04u\x01\x95\x08\x05\x07\x19\xe0)\xe7\x15\x00%\x01\x81\x02\x95\x05u\x01\x05\x08\x19\x01)\x05\x91\x02\x95\x01u\x03\x91\x03\x95xu\x01\x15\x00%\x01\x05\x07\x19\x00)w\x81\x02\xc0'),
|
||||
report_ids = (4,),
|
||||
in_report_lengths = (16,),
|
||||
out_report_lengths = (1,),
|
||||
usage_page = 0x1,
|
||||
usage = 0x6,
|
||||
report_descriptor=(
|
||||
b'\x05\x01\t\x06\xa1\x01\x85\x04u\x01\x95\x08\x05\x07\x19\xe0)\xe7\x15\x00%\x01\x81\x02\x95\x05u\x01\x05\x08\x19\x01)\x05\x91\x02\x95\x01u\x03\x91\x03\x95xu\x01\x15\x00%\x01\x05\x07\x19\x00)w\x81\x02\xc0'),
|
||||
report_ids=(4,),
|
||||
in_report_lengths=(16,),
|
||||
out_report_lengths=(1,),
|
||||
usage_page=0x1,
|
||||
usage=0x6,
|
||||
)
|
||||
print(bitmap_keyboard)
|
||||
devices = [
|
||||
@@ -16,4 +33,4 @@ devices = [
|
||||
usb_hid.Device.MOUSE,
|
||||
]
|
||||
usb_hid.enable(devices)
|
||||
print("enabled HID with custom keyboard device")
|
||||
print("enabled HID with custom keyboard device")
|
||||
|
||||
Reference in New Issue
Block a user