mirror of
https://github.com/arduino/Arduino.git
synced 2024-12-01 12:24:14 +01:00
Merge branch 'ide-1.5.x' into ide-1.5.x-preproc
This commit is contained in:
commit
22dfa98202
@ -14,7 +14,8 @@ public class SystemProfilerParser {
|
||||
private static final String VID = "vid";
|
||||
private static final String PID = "pid";
|
||||
private static final String SERIAL_NUMBER = "serial_number";
|
||||
private static final String DEV_TTY = "/dev/tty.";
|
||||
private static final String DEV_TTY_USBSERIAL = "/dev/tty.usbserial-";
|
||||
private static final String DEV_CU_USBSERIAL = "/dev/cu.usbserial-";
|
||||
private static final String DEV_TTY_USBMODEM = "/dev/tty.usbmodem";
|
||||
private static final String DEV_CU_USBMODEM = "/dev/cu.usbmodem";
|
||||
|
||||
@ -34,7 +35,11 @@ public class SystemProfilerParser {
|
||||
BufferedReader reader = new BufferedReader(new StringReader(output));
|
||||
|
||||
String devicePrefix;
|
||||
if (serial.startsWith(DEV_TTY)) {
|
||||
if (serial.startsWith(DEV_TTY_USBSERIAL)) {
|
||||
devicePrefix = DEV_TTY_USBSERIAL;
|
||||
} else if (serial.startsWith(DEV_CU_USBSERIAL)) {
|
||||
devicePrefix = DEV_CU_USBSERIAL;
|
||||
} else if (serial.startsWith(DEV_TTY_USBMODEM)) {
|
||||
devicePrefix = DEV_TTY_USBMODEM;
|
||||
} else {
|
||||
devicePrefix = DEV_CU_USBMODEM;
|
||||
@ -50,19 +55,24 @@ public class SystemProfilerParser {
|
||||
|
||||
if ((matcher = serialNumberRegex.matcher(line)).matches()) {
|
||||
device.put(SERIAL_NUMBER, matcher.group(1));
|
||||
} else if ((matcher = locationRegex.matcher(line)).matches()) {
|
||||
String devicePath = devicePrefix;
|
||||
String suffix = matcher.group(1).substring(2, 6);
|
||||
try {
|
||||
devicePath = devicePath + (Integer.parseInt(suffix) + 1);
|
||||
} catch (NumberFormatException e) {
|
||||
devicePath = devicePath + suffix + "1";
|
||||
if ((serial.startsWith(DEV_TTY_USBSERIAL) || serial.startsWith(DEV_CU_USBSERIAL))) {
|
||||
String devicePath = devicePrefix + matcher.group(1);
|
||||
device.put(DEVICE_PATH, devicePath);
|
||||
}
|
||||
} else if ((serial.startsWith(DEV_TTY_USBMODEM) || serial.startsWith(DEV_CU_USBMODEM)) && (matcher = locationRegex.matcher(line)).matches()) {
|
||||
String suffix = matcher.group(1).substring(2, 6).replaceAll("0", "");
|
||||
String devicePath = devicePrefix + suffix + "1";
|
||||
device.put(DEVICE_PATH, devicePath);
|
||||
} else if ((matcher = pidRegex.matcher(line)).matches()) {
|
||||
device.put(PID, matcher.group(1));
|
||||
String pid = matcher.group(1);
|
||||
if (pid.indexOf(" ") > 0)
|
||||
pid = pid.substring(0, pid.indexOf(" ")); // Remove any text after the hex number
|
||||
device.put(PID, pid);
|
||||
} else if ((matcher = vidRegex.matcher(line)).matches()) {
|
||||
device.put(VID, matcher.group(1));
|
||||
String vid = matcher.group(1);
|
||||
if (vid.indexOf(" ") > 0)
|
||||
vid = vid.substring(0, vid.indexOf(" ")); // Remove any text after the hex number
|
||||
device.put(VID, vid);
|
||||
} else if (line.equals("")) {
|
||||
if (device.containsKey(DEVICE_PATH) && device.get(DEVICE_PATH).equals(serial)) {
|
||||
return (device.get(VID) + "_" + device.get(PID)).toUpperCase();
|
||||
|
@ -38,5 +38,12 @@ public class SystemProfilerParserTest {
|
||||
|
||||
assertEquals("0X2341_0X8041", new SystemProfilerParser().extractVIDAndPID(output, "/dev/cu.usbmodem1421"));
|
||||
assertEquals("0X2341_0X8041", new SystemProfilerParser().extractVIDAndPID(output, "/dev/tty.usbmodem1421"));
|
||||
|
||||
output = TestHelper.inputStreamToString(SystemProfilerParserTest.class.getResourceAsStream("system_profiler_output7.txt"));
|
||||
|
||||
assertEquals("0X2341_0X8036", new SystemProfilerParser().extractVIDAndPID(output, "/dev/cu.usbmodem24131"));
|
||||
assertEquals("0X2341_0X8036", new SystemProfilerParser().extractVIDAndPID(output, "/dev/tty.usbmodem24131"));
|
||||
assertEquals("0X0403_0X6015", new SystemProfilerParser().extractVIDAndPID(output, "/dev/cu.usbserial-DN0031EV"));
|
||||
assertEquals("0X0403_0X6015", new SystemProfilerParser().extractVIDAndPID(output, "/dev/tty.usbserial-DN0031EV"));
|
||||
}
|
||||
}
|
||||
|
151
app/test/processing/app/macosx/system_profiler_output7.txt
Normal file
151
app/test/processing/app/macosx/system_profiler_output7.txt
Normal file
@ -0,0 +1,151 @@
|
||||
USB:
|
||||
|
||||
USB Hi-Speed Bus:
|
||||
|
||||
Host Controller Location: Built-in USB
|
||||
Host Controller Driver: AppleUSBEHCI
|
||||
PCI Device ID: 0x0d9d
|
||||
PCI Revision ID: 0x00a2
|
||||
PCI Vendor ID: 0x10de
|
||||
Bus Number: 0x26
|
||||
|
||||
Internal Memory Card Reader:
|
||||
|
||||
Product ID: 0x8403
|
||||
Vendor ID: 0x05ac (Apple Inc.)
|
||||
Version: 98,33
|
||||
Serial Number: 9833
|
||||
Speed: Up to 480 Mb/sec
|
||||
Manufacturer: Apple
|
||||
Location ID: 0x26100000 / 2
|
||||
Current Available (mA): 500
|
||||
Current Required (mA): 500
|
||||
|
||||
USB Hi-Speed Bus:
|
||||
|
||||
Host Controller Location: Built-in USB
|
||||
Host Controller Driver: AppleUSBEHCI
|
||||
PCI Device ID: 0x0d9d
|
||||
PCI Revision ID: 0x00a2
|
||||
PCI Vendor ID: 0x10de
|
||||
Bus Number: 0x24
|
||||
|
||||
USB 2.0 Hub:
|
||||
|
||||
Product ID: 0x0101
|
||||
Vendor ID: 0x1a40 (TERMINUS TECHNOLOGY INC.)
|
||||
Version: 1,11
|
||||
Speed: Up to 480 Mb/sec
|
||||
Location ID: 0x24100000 / 3
|
||||
Current Available (mA): 500
|
||||
Current Required (mA): 100
|
||||
|
||||
FT230X Basic UART:
|
||||
|
||||
Product ID: 0x6015
|
||||
Vendor ID: 0x0403 (Future Technology Devices International Limited)
|
||||
Version: 10,00
|
||||
Serial Number: DN0031EV
|
||||
Speed: Up to 12 Mb/sec
|
||||
Manufacturer: FTDI
|
||||
Location ID: 0x24120000 / 7
|
||||
Current Available (mA): 500
|
||||
Current Required (mA): 90
|
||||
|
||||
Arduino Leonardo:
|
||||
|
||||
Product ID: 0x8036
|
||||
Vendor ID: 0x2341
|
||||
Version: 1,00
|
||||
Speed: Up to 12 Mb/sec
|
||||
Manufacturer: Arduino LLC
|
||||
Location ID: 0x24130000 / 6
|
||||
Current Available (mA): 500
|
||||
Current Required (mA): 500
|
||||
|
||||
USB Receiver:
|
||||
|
||||
Product ID: 0xc521
|
||||
Vendor ID: 0x046d (Logitech Inc.)
|
||||
Version: 57,01
|
||||
Speed: Up to 1.5 Mb/sec
|
||||
Manufacturer: Logitech
|
||||
Location ID: 0x24140000 / 5
|
||||
Current Available (mA): 500
|
||||
Current Required (mA): 98
|
||||
|
||||
Built-in iSight:
|
||||
|
||||
Product ID: 0x8507
|
||||
Vendor ID: 0x05ac (Apple Inc.)
|
||||
Version: 4,35
|
||||
Serial Number: 8JA9E1A6TDCLNL00
|
||||
Speed: Up to 480 Mb/sec
|
||||
Manufacturer: Apple Inc.
|
||||
Location ID: 0x24600000 / 2
|
||||
Current Available (mA): 500
|
||||
Current Required (mA): 500
|
||||
|
||||
USB Bus:
|
||||
|
||||
Host Controller Location: Built-in USB
|
||||
Host Controller Driver: AppleUSBOHCI
|
||||
PCI Device ID: 0x0d9c
|
||||
PCI Revision ID: 0x00a1
|
||||
PCI Vendor ID: 0x10de
|
||||
Bus Number: 0x06
|
||||
|
||||
BRCM2046 Hub:
|
||||
|
||||
Product ID: 0x4500
|
||||
Vendor ID: 0x0a5c (Broadcom Corp.)
|
||||
Version: 1,00
|
||||
Speed: Up to 12 Mb/sec
|
||||
Manufacturer: Apple Inc.
|
||||
Location ID: 0x06600000 / 4
|
||||
Current Available (mA): 500
|
||||
Current Required (mA): 0
|
||||
|
||||
Bluetooth USB Host Controller:
|
||||
|
||||
Product ID: 0x8213
|
||||
Vendor ID: 0x05ac (Apple Inc.)
|
||||
Version: 2,06
|
||||
Serial Number: C8BCC8B0B471
|
||||
Speed: Up to 12 Mb/sec
|
||||
Manufacturer: Apple Inc.
|
||||
Location ID: 0x06610000 / 5
|
||||
Current Available (mA): 500
|
||||
Current Required (mA): 0
|
||||
|
||||
IR Receiver:
|
||||
|
||||
Product ID: 0x8242
|
||||
Vendor ID: 0x05ac (Apple Inc.)
|
||||
Version: 0,16
|
||||
Speed: Up to 1.5 Mb/sec
|
||||
Manufacturer: Apple Computer, Inc.
|
||||
Location ID: 0x06500000 / 3
|
||||
Current Available (mA): 500
|
||||
Current Required (mA): 100
|
||||
|
||||
Apple Internal Keyboard / Trackpad:
|
||||
|
||||
Product ID: 0x0237
|
||||
Vendor ID: 0x05ac (Apple Inc.)
|
||||
Version: 0,90
|
||||
Speed: Up to 12 Mb/sec
|
||||
Manufacturer: Apple Inc.
|
||||
Location ID: 0x06300000 / 2
|
||||
Current Available (mA): 500
|
||||
Current Required (mA): 40
|
||||
|
||||
USB Bus:
|
||||
|
||||
Host Controller Location: Built-in USB
|
||||
Host Controller Driver: AppleUSBOHCI
|
||||
PCI Device ID: 0x0d9c
|
||||
PCI Revision ID: 0x00a1
|
||||
PCI Vendor ID: 0x10de
|
||||
Bus Number: 0x04
|
||||
|
@ -41,8 +41,12 @@ yun.build.extra_flags={build.usb_flags}
|
||||
##############################################################
|
||||
|
||||
uno.name=Arduino Uno
|
||||
|
||||
uno.vid.0=0x2341
|
||||
uno.pid.0=0x0043
|
||||
uno.vid.1=0x2341
|
||||
uno.pid.1=0x0001
|
||||
|
||||
uno.upload.tool=avrdude
|
||||
uno.upload.protocol=arduino
|
||||
uno.upload.maximum_size=32256
|
||||
|
Loading…
Reference in New Issue
Block a user