Skip to content

Instantly share code, notes, and snippets.

@ravikp7
Created June 3, 2018 17:01
Show Gist options
  • Save ravikp7/a5c0914d270dc3f6e0d03c591e3ad9a6 to your computer and use it in GitHub Desktop.
Save ravikp7/a5c0914d270dc3f6e0d03c591e3ad9a6 to your computer and use it in GitHub Desktop.
node-usb BeagleBone
const usb = require('usb');
const device = usb.findByIds(0x1d6b, 0x0104);
device.open();
for (let i = 0; i < 7; i++) {
let devInt = device.interface(i);
if (devInt.isKernelDriverActive()) devInt.detachKernelDriver();
devInt.claim();
}
device.interfaces.forEach((interfac) => {
console.log(interfac);
});
const usb = require('usb');
const device = usb.findByIds(0x1d6b, 0x0104);
device.open();
for (let i = 0; i < 7; i++) {
let devInt = device.interface(i);
if (devInt.isKernelDriverActive()) devInt.detachKernelDriver();
devInt.claim();
}
device.interfaces.forEach((interfac) => {
try {
console.log(interfac.endpoints[0].address);
}
catch (e) {
console.log(e);
}
});
130
129
132
TypeError: Cannot read property 'address' of undefined
at device.interfaces.forEach (/home/ravi/node-beagle-boot/main.js:426:39)
at Array.forEach (<anonymous>)
at Object.<anonymous> (/home/ravi/node-beagle-boot/main.js:424:19)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
134
133
135
[ InEndpoint {
device:
Device {
busNumber: 1,
deviceAddress: 8,
deviceDescriptor: [Object],
portNumbers: [Array],
interfaces: [Array],
_configDescriptor: [Object] },
descriptor:
{ bLength: 7,
bDescriptorType: 5,
bEndpointAddress: 130,
bmAttributes: 3,
wMaxPacketSize: 8,
bInterval: 9,
bRefresh: 0,
bSynchAddress: 0,
extra: <Buffer > },
address: 130,
transferType: 3 } ]
[ InEndpoint {
device:
Device {
busNumber: 1,
deviceAddress: 8,
deviceDescriptor: [Object],
portNumbers: [Array],
interfaces: [Array],
_configDescriptor: [Object] },
descriptor:
{ bLength: 7,
bDescriptorType: 5,
bEndpointAddress: 129,
bmAttributes: 2,
wMaxPacketSize: 512,
bInterval: 0,
bRefresh: 0,
bSynchAddress: 0,
extra: <Buffer > },
address: 129,
transferType: 2 },
OutEndpoint {
device:
Device {
busNumber: 1,
deviceAddress: 8,
deviceDescriptor: [Object],
portNumbers: [Array],
interfaces: [Array],
_configDescriptor: [Object] },
descriptor:
{ bLength: 7,
bDescriptorType: 5,
bEndpointAddress: 1,
bmAttributes: 2,
wMaxPacketSize: 512,
bInterval: 0,
bRefresh: 0,
bSynchAddress: 0,
extra: <Buffer 08 0b 02 02 02 06 00 0c> },
address: 1,
transferType: 2 } ]
[ InEndpoint {
device:
Device {
busNumber: 1,
deviceAddress: 8,
deviceDescriptor: [Object],
portNumbers: [Array],
interfaces: [Array],
_configDescriptor: [Object] },
descriptor:
{ bLength: 7,
bDescriptorType: 5,
bEndpointAddress: 132,
bmAttributes: 3,
wMaxPacketSize: 16,
bInterval: 9,
bRefresh: 0,
bSynchAddress: 0,
extra: <Buffer > },
address: 132,
transferType: 3 } ]
[]
[ InEndpoint {
device:
Device {
busNumber: 1,
deviceAddress: 8,
deviceDescriptor: [Object],
portNumbers: [Array],
interfaces: [Array],
_configDescriptor: [Object] },
descriptor:
{ bLength: 7,
bDescriptorType: 5,
bEndpointAddress: 134,
bmAttributes: 3,
wMaxPacketSize: 10,
bInterval: 9,
bRefresh: 0,
bSynchAddress: 0,
extra: <Buffer > },
address: 134,
transferType: 3 } ]
[ InEndpoint {
device:
Device {
busNumber: 1,
deviceAddress: 8,
deviceDescriptor: [Object],
portNumbers: [Array],
interfaces: [Array],
_configDescriptor: [Object] },
descriptor:
{ bLength: 7,
bDescriptorType: 5,
bEndpointAddress: 133,
bmAttributes: 2,
wMaxPacketSize: 512,
bInterval: 0,
bRefresh: 0,
bSynchAddress: 0,
extra: <Buffer > },
address: 133,
transferType: 2 },
OutEndpoint {
device:
Device {
busNumber: 1,
deviceAddress: 8,
deviceDescriptor: [Object],
portNumbers: [Array],
interfaces: [Array],
_configDescriptor: [Object] },
descriptor:
{ bLength: 7,
bDescriptorType: 5,
bEndpointAddress: 3,
bmAttributes: 2,
wMaxPacketSize: 512,
bInterval: 0,
bRefresh: 0,
bSynchAddress: 0,
extra: <Buffer > },
address: 3,
transferType: 2 } ]
[ InEndpoint {
device:
Device {
busNumber: 1,
deviceAddress: 8,
deviceDescriptor: [Object],
portNumbers: [Array],
interfaces: [Array],
_configDescriptor: [Object] },
descriptor:
{ bLength: 7,
bDescriptorType: 5,
bEndpointAddress: 135,
bmAttributes: 2,
wMaxPacketSize: 512,
bInterval: 0,
bRefresh: 0,
bSynchAddress: 0,
extra: <Buffer > },
address: 135,
transferType: 2 },
OutEndpoint {
device:
Device {
busNumber: 1,
deviceAddress: 8,
deviceDescriptor: [Object],
portNumbers: [Array],
interfaces: [Array],
_configDescriptor: [Object] },
descriptor:
{ bLength: 7,
bDescriptorType: 5,
bEndpointAddress: 4,
bmAttributes: 2,
wMaxPacketSize: 512,
bInterval: 1,
bRefresh: 0,
bSynchAddress: 0,
extra: <Buffer > },
address: 4,
transferType: 2 } ]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment