3-servo
This app allows you to control a servo motor
Setting up the hardware
I used an arduino mega for this example, but any of the boards supported by johnny-five should work.
Connect a servo motor directly to pin 10
Setting up the code
To run, first clone the repo and npm install the example directory
git clone https://github.com/sofroniewn/electron-johnny-five-examples
cd electron-johnny-five-examples/3-servo
npm install
Unfortunately the serial port may not work right away and might need to be rebuilt
./node_modules/.bin/electron-rebuild
At this point if you try to starting the app with
npm start
You may get an error if the path to serialport.node
is wrong
Uncaught Error: Cannot find module '/Users/sofroniewn/github/electron-johnny-five-examples/1-led/node_modules/johnny-five/node_modules/serialport/build/Release/node-v47-darwin-x64/serialport.node'
This can easily be fixed by
mv ./node_modules/johnny-five/node_modules/serialport/build/Release/electron-v0.36-darwin-x64/ ./node_modules/johnny-five/node_modules/serialport/build/Release/node-v47-darwin-x64/
You're now ready to run the app!
For more information about that error and using electron with johnny-five and node-serialport in general, check out this super helpful blog post by @noopkat
Running the app
After setting up the hardware and the code you are now ready to run the app with
npm start
Once the board has been found and the green status light in the top right has turned on, you should be able to control the servo by typing an angle into the input box in the top left corner. This servo has a range of 45° to 135°.
Congrats! Check out the next example 4-potentiometer