Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save chefguevara/4e1ddfaec97b15a59f66a249b970394c to your computer and use it in GitHub Desktop.
Save chefguevara/4e1ddfaec97b15a59f66a249b970394c to your computer and use it in GitHub Desktop.
Johnny-five multiple remote boards
let EtherPort = require('etherport');
let five = require('johnny-five');
let boardsConfig = [
{ id: 'NodeMCU', port: new EtherPort(3030), timeout: 30000 }, //WiFiFirmata
{ id: 'EtherShield', port: new EtherPort(3031), timeout: 30000 } //EthernetFirmata
];
let boards = new five.Boards(boardsConfig);
boards.on('ready', function() {
let potentiometer = new five.Sensor({
pin: 'A0',
freq: 250
});
let red = new five.Led({
pin: 5,
board: this.byId('EtherShield')
}),
yellow = new five.Led({
pin: 6,
board: this.byId('EtherShield')
}),
green = new five.Led({
pin: 7,
board: this.byId('EtherShield')
}),
leds = new five.Leds([red, yellow, green]);
leds.off();
potentiometer.on('change', function() {
leds.off();
if (this.value < 11) {
green.on();
}
if (this.value > 10 && this.value < 61) {
yellow.on();
}
if (this.value > 60 && this.value < 200) {
red.on();
}
if (this.value > 201) {
leds.strobe(100);
}
});
boards.repl.inject({
pot: potentiometer,
red,
yellow,
green,
leds
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment