From 0312f126963c05e18f939fcfb5dcb8583ab9bed8 Mon Sep 17 00:00:00 2001 From: Ron Evans Date: Tue, 28 Jan 2020 23:31:35 +0100 Subject: [PATCH] machine/usb: set the vid and pid to valid values supplied by Adafruit and Arduino for boards that support USB CDC Signed-off-by: Ron Evans --- src/machine/board_arduino_nano33.go | 11 +++++++++++ src/machine/board_circuitplay_express.go | 11 +++++++++++ src/machine/board_feather-m0.go | 11 +++++++++++ src/machine/board_feather-m4.go | 11 +++++++++++ src/machine/board_itsybitsy-m0.go | 11 +++++++++++ src/machine/board_itsybitsy-m4.go | 11 +++++++++++ src/machine/board_metro-m4-airlift.go | 11 +++++++++++ src/machine/board_pybadge.go | 11 +++++++++++ src/machine/board_pyportal.go | 11 +++++++++++ src/machine/board_trinket.go | 11 +++++++++++ src/machine/usb.go | 7 +------ 11 files changed, 111 insertions(+), 6 deletions(-) diff --git a/src/machine/board_arduino_nano33.go b/src/machine/board_arduino_nano33.go index f23b1bcfb..4bbba984f 100644 --- a/src/machine/board_arduino_nano33.go +++ b/src/machine/board_arduino_nano33.go @@ -90,3 +90,14 @@ const ( I2S_SD_PIN Pin = PA08 I2S_WS_PIN = NoPin // TODO: figure out what this is on Arduino Nano 33. ) + +// USB CDC identifiers +const ( + usb_STRING_PRODUCT = "Arduino NANO 33 IoT" + usb_STRING_MANUFACTURER = "Arduino" +) + +var ( + usb_VID uint16 = 0x2341 + usb_PID uint16 = 0x8057 +) diff --git a/src/machine/board_circuitplay_express.go b/src/machine/board_circuitplay_express.go index 0f0c08466..3da61d870 100644 --- a/src/machine/board_circuitplay_express.go +++ b/src/machine/board_circuitplay_express.go @@ -88,3 +88,14 @@ const ( I2S_SD_PIN = PA08 I2S_WS_PIN = NoPin // no WS, instead uses SCK to sync ) + +// USB CDC identifiers +const ( + usb_STRING_PRODUCT = "Circuit Playground Express" + usb_STRING_MANUFACTURER = "Adafruit" +) + +var ( + usb_VID uint16 = 0x239A + usb_PID uint16 = 0x8018 +) diff --git a/src/machine/board_feather-m0.go b/src/machine/board_feather-m0.go index f5fa76a18..13186887f 100644 --- a/src/machine/board_feather-m0.go +++ b/src/machine/board_feather-m0.go @@ -102,3 +102,14 @@ const ( I2S_SD_PIN = PA08 I2S_WS_PIN = NoPin // TODO: figure out what this is on Feather M0. ) + +// USB CDC identifiers +const ( + usb_STRING_PRODUCT = "Feather M0 Express" + usb_STRING_MANUFACTURER = "Adafruit" +) + +var ( + usb_VID uint16 = 0x239A + usb_PID uint16 = 0x801B +) diff --git a/src/machine/board_feather-m4.go b/src/machine/board_feather-m4.go index 53ad0faee..8007162ad 100644 --- a/src/machine/board_feather-m4.go +++ b/src/machine/board_feather-m4.go @@ -87,3 +87,14 @@ var ( SERCOM: 1, } ) + +// USB CDC identifiers +const ( + usb_STRING_PRODUCT = "Adafruit Feather M4" + usb_STRING_MANUFACTURER = "Adafruit LLC" +) + +var ( + usb_VID uint16 = 0x239A + usb_PID uint16 = 0x8022 +) diff --git a/src/machine/board_itsybitsy-m0.go b/src/machine/board_itsybitsy-m0.go index ed4f9fa7b..9d917e7ab 100644 --- a/src/machine/board_itsybitsy-m0.go +++ b/src/machine/board_itsybitsy-m0.go @@ -123,3 +123,14 @@ const ( var ( I2S0 = I2S{Bus: sam.I2S} ) + +// USB CDC identifiers +const ( + usb_STRING_PRODUCT = "ItsyBitsy M0 Express" + usb_STRING_MANUFACTURER = "Adafruit" +) + +var ( + usb_VID uint16 = 0x239A + usb_PID uint16 = 0x800F +) diff --git a/src/machine/board_itsybitsy-m4.go b/src/machine/board_itsybitsy-m4.go index 13612f522..e4f67d9d1 100644 --- a/src/machine/board_itsybitsy-m4.go +++ b/src/machine/board_itsybitsy-m4.go @@ -89,3 +89,14 @@ var ( SERCOM: 1, } ) + +// USB CDC identifiers +const ( + usb_STRING_PRODUCT = "Adafruit ItsyBitsy M4" + usb_STRING_MANUFACTURER = "Adafruit LLC" +) + +var ( + usb_VID uint16 = 0x239A + usb_PID uint16 = 0x802B +) diff --git a/src/machine/board_metro-m4-airlift.go b/src/machine/board_metro-m4-airlift.go index 49373214f..49560b99e 100644 --- a/src/machine/board_metro-m4-airlift.go +++ b/src/machine/board_metro-m4-airlift.go @@ -116,3 +116,14 @@ var ( SERCOM: 1, } ) + +// USB CDC identifiers +const ( + usb_STRING_PRODUCT = "Adafruit Metro M4 Airlift Lite" + usb_STRING_MANUFACTURER = "Adafruit LLC" +) + +var ( + usb_VID uint16 = 0x239A + usb_PID uint16 = 0x8037 +) diff --git a/src/machine/board_pybadge.go b/src/machine/board_pybadge.go index 2d7ab9ad9..d8a496a36 100644 --- a/src/machine/board_pybadge.go +++ b/src/machine/board_pybadge.go @@ -133,3 +133,14 @@ var ( SERCOM: 4, } ) + +// USB CDC identifiers +const ( + usb_STRING_PRODUCT = "Adafruit pyBadge M4" + usb_STRING_MANUFACTURER = "Adafruit LLC" +) + +var ( + usb_VID uint16 = 0x239A + usb_PID uint16 = 0x8033 +) diff --git a/src/machine/board_pyportal.go b/src/machine/board_pyportal.go index 6b48f0d3f..5258cf166 100644 --- a/src/machine/board_pyportal.go +++ b/src/machine/board_pyportal.go @@ -143,3 +143,14 @@ var ( } NINA_SPI = SPI0 ) + +// USB CDC identifiers +const ( + usb_STRING_PRODUCT = "Adafruit PyPortal M4" + usb_STRING_MANUFACTURER = "Adafruit LLC" +) + +var ( + usb_VID uint16 = 0x239A + usb_PID uint16 = 0x8035 +) diff --git a/src/machine/board_trinket.go b/src/machine/board_trinket.go index b9f2d6864..7381b5c13 100644 --- a/src/machine/board_trinket.go +++ b/src/machine/board_trinket.go @@ -93,3 +93,14 @@ const ( I2S_SD_PIN = PA08 I2S_WS_PIN = NoPin // TODO: figure out what this is on Trinket M0. ) + +// USB CDC identifiers +const ( + usb_STRING_PRODUCT = "Trinket M0" + usb_STRING_MANUFACTURER = "Adafruit" +) + +var ( + usb_VID uint16 = 0x239A + usb_PID uint16 = 0x801E +) diff --git a/src/machine/usb.go b/src/machine/usb.go index 345b55f59..979662f1c 100644 --- a/src/machine/usb.go +++ b/src/machine/usb.go @@ -395,12 +395,7 @@ func strToUTF16LEDescriptor(in string) []byte { var ( // TODO: allow setting these - usb_STRING_LANGUAGE = [2]uint16{(3 << 8) | (2 + 2), 0x0409} // English - usb_STRING_PRODUCT = "Arduino Zero" - usb_STRING_MANUFACTURER = "Arduino" - - usb_VID uint16 = 0x2341 - usb_PID uint16 = 0x004d + usb_STRING_LANGUAGE = [2]uint16{(3 << 8) | (2 + 2), 0x0409} // English ) const (