Ошибки узла последовательного порта на Beaglebone (ARM)

Я пытаюсь запустить библиотеку Node Arduino [https://github.com/rwldrn/johnny-five] на Beaglebone под управлением Ubuntu 12.04. Однако, когда я пытаюсь запустить пример программы (servo.js или любую другую), консоль выдает:

/home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/node_modules/bindings/bindings.js:91
  throw err
        ^
Error: Could not locate the bindings file. Tried:
 → /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/build/serialport.node
 → /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/build/Debug/serialport.node
 → /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/build/Release/serialport.node
 → /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/out/Debug/serialport.node
 → /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/Debug/serialport.node
 → /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/out/Release/serialport.node
 → /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/Release/serialport.node
 → /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/build/default/serialport.node
 → /home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/compiled/0.8.15/linux/arm/serialport.node
    at bindings (/home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/node_modules/bindings/bindings.js:88:9)
    at Object.<anonymous> (/home/rov/node_modules/johnny-five/node_modules/firmata/node_modules/serialport/serialport.js:7:44)
    at Module._compile (module.js:449:26)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:362:17)
    at require (module.js:378:17)
    at Object.<anonymous> (/home/rov/node_modules/johnny-five/node_modules/firmata/lib/firmata.js:9:18)
    at Module._compile (module.js:449:26)

Я попытался установить последовательный порт через npm (npm install serialport), но все равно получаю ту же ошибку. Как установить последовательный порт, чтобы его можно было распознать в файле servo.js?


person Chromey    schedule 23.04.2013    source источник


Ответы (1)


serialport является зависимостью от johnny-five и firmata, но поскольку firmata сама по себе является зависимостью от johnny-five, я полагаю, что firmata будет ссылаться на serialport из модулей johnny-five/node_modules.

Также обратите внимание, что для serialport требуется Python 2.x.

Если npm правильно установил johnny-five, он должен был встроить serialport.node в johnny-five/node_modules/serialport/build/Release — вы видите это там?

Если нет, попробуйте это в новом каталоге

  • $ git clone https://github.com/rwldrn/johnny-five
  • $ cd johnny-five
  • $ npm install

Удается ли это? Замените /home/rov/node_modules/johnny-five клонированным репозиторием, который вы только что создали.

person Andrew    schedule 02.07.2013