question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

blink1 path empty when connected to some hubs

See original GitHub issue

I recently upgraded to 0.5.2 and my blink1 is no longer found on the HUB its plugged into. It works when plugged directly into the computer as the path for the device is found. blink1control2 finds, and is able to control the blink1 just fine on said HUB. I can provide any other technical details if asked. Thanks 😃

`➜ src node test-blink1.js blink(1) devices found: [ { vendorId: 10168, productId: 493, path: ‘’, serialNumber: ‘200065C4’, manufacturer: ‘ThingM’, product: ‘blink(1) mk2’, release: 2, interface: -1 } ]

/Users/dan/work/slack-notifier/node_modules/node-hid/nodehid.js:28 this._raw = new (Function.prototype.bind.apply(binding.HID, ^

Error: cannot open device with vendor id 0x27b8 and product id 0x1ed at Error (native) at new HID (/Users/dan/work/slack-notifier/node_modules/node-hid/nodehid.js:28:14) at Object.<anonymous> (/Users/dan/work/slack-notifier/node_modules/node-hid/src/test-blink1.js:21:17) at Module._compile (module.js:570:32) at Object.Module._extensions…js (module.js:579:10) at Module.load (module.js:487:32) at tryModuleLoad (module.js:446:12) at Function.Module._load (module.js:438:3) at Module.runMain (module.js:604:10) at run (bootstrap_node.js:394:7) `

Issue Analytics

  • State:open
  • Created 7 years ago
  • Comments:8 (4 by maintainers)

github_iconTop GitHub Comments

1reaction
todbotcommented, Nov 23, 2016

Looks like you have 4 hubs in between the host and the blink(1) (Some are built-in or if you have a >4 port USB hub, that can actually count as two). This is close to the maximum of 5 hubs. (for @todbot: also see this by pluggable).

From looking at commit https://github.com/signal11/hidapi/commit/59a076705b1bc5316fb4513fc28033b662a23675, hidapi is using the OS X standard IORegistryEntryGetPath() and passing the recommended io_string_t type for path. And io_string_t is defined as 512 characters long.

On my system, when I daisychain hubs, I can only get up to 3 external hubs (If I try any more I get “AppleUSBHostPort::setPortLocation: Hub count exceeded” errors in dmesg) and the resulting path is 460 characters long. I’m not sure of the naming of the elements in IORegistryEntryGetPath but it seems like it could get longer than 512. So this almost seems like it could be a bug in Mac OS X.

As a workaround, I would say reduce the number of USB hubs used with hidapi / node-hid projects. This isn’t a really node-hid issue but rather a hidapi one. I think we should open up an issue there. I’m still doing some tests to see if I can characterize it a bit more before I open up a hidapi issue.

I’ll leave this issue open for now as a reminder to me.

0reactions
gzphreakcommented, Nov 23, 2016

Indeed. It would appear that one of the hubs I have has two built into it.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Blink1 - NoskeWiki - Andrew Noske
The blink(1) is USB device with a bright multicolored LED which can be programmed to flash different colors for different inputs.
Read more >
Easylon USB Interface User Manual - Gesytec
The USB Interface module can be connected to the LONWORKS network either using the RJ45 jack or the 3 pin screw plug socket....
Read more >
Maintenance and Service Guide HP ZBook 14u G6 Mobile ...
This guide describes features that are common to most models. Some features may not be available on your computer. Not all features are...
Read more >
The OpenOCD debugging plug-in - Eclipse Embedded CDT
Missing or wrong openocd_path. The most common failure to start a debug session is a missing or incorrec OpenOCD path. Without it, the...
Read more >
FANUC Robot series R-30iB Mate + Mate Plus Maintenance ...
connecting, operating and programming FANUC products and/or systems. Such ... nearby, make certain that their escape path is not obstructed.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found