Compare commits
2 Commits
67a9fc19ec
...
ef726b1853
Author | SHA1 | Date | |
---|---|---|---|
ef726b1853 | |||
23aa026e9f |
@ -2,6 +2,9 @@
|
||||
// TODO: Move these to config
|
||||
// Physical Pin numbers for GPIO
|
||||
const augerPin = 7; // Pin for controlling the relay for the pellet auger motor.
|
||||
const igniterPin = 13;
|
||||
const exhaustPin = 15;
|
||||
const pofPin = 16;
|
||||
|
||||
// Require the package for pulling version numbers
|
||||
const package = require('../package.json');
|
||||
@ -84,6 +87,80 @@ const functions = {
|
||||
});
|
||||
},
|
||||
},
|
||||
igniter: {
|
||||
// Gets called once the Igniter Pin has been setup by rpi-gpio
|
||||
ready(err) {
|
||||
if (err) throw err;
|
||||
console.log('Igniter GPIO Ready');
|
||||
return;
|
||||
},
|
||||
// Turns the Igniter on (Pin 7 high)
|
||||
on(gpio) {
|
||||
return new Promise((resolve) => {
|
||||
if (process.env.ONPI == 'true') {
|
||||
gpio.write(igniterPin, true, function (err) {
|
||||
if (err) throw err;
|
||||
resolve('Igniter turned on.');
|
||||
});
|
||||
} else {
|
||||
resolve('Simulated Igniter turned on.');
|
||||
}
|
||||
});
|
||||
|
||||
},
|
||||
// Turns the Igniter off (pin 7 low)
|
||||
off(gpio) {
|
||||
return new Promise((resolve) => {
|
||||
if (process.env.ONPI == 'true') {
|
||||
gpio.write(igniterPin, false, function (err) {
|
||||
if (err) throw err;
|
||||
resolve('Igniter turned off.');
|
||||
|
||||
});
|
||||
} else {
|
||||
resolve('Simulated Igniter turned off.');
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
},
|
||||
exhaust: {
|
||||
// Gets called once the Exhaust Pin has been setup by rpi-gpio
|
||||
ready(err) {
|
||||
if (err) throw err;
|
||||
console.log('Exhaust GPIO Ready');
|
||||
return;
|
||||
},
|
||||
// Turns the Exhaust on (Pin 7 high)
|
||||
on(gpio) {
|
||||
return new Promise((resolve) => {
|
||||
if (process.env.ONPI == 'true') {
|
||||
gpio.write(exhaustPin, true, function (err) {
|
||||
if (err) throw err;
|
||||
resolve('Exhaust turned on.');
|
||||
});
|
||||
} else {
|
||||
resolve('Simulated Exhaust turned on.');
|
||||
}
|
||||
});
|
||||
|
||||
},
|
||||
// Turns the Exhaust off (pin 7 low)
|
||||
off(gpio) {
|
||||
return new Promise((resolve) => {
|
||||
if (process.env.ONPI == 'true') {
|
||||
gpio.write(exhaustPin, false, function (err) {
|
||||
if (err) throw err;
|
||||
resolve('Exhaust turned off.');
|
||||
|
||||
});
|
||||
} else {
|
||||
resolve('Simulated Exhaust turned off.');
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
},
|
||||
commands: {
|
||||
// Prepare the stove for starting
|
||||
augerOn() { // FKA startup()
|
||||
@ -103,6 +180,36 @@ const functions = {
|
||||
return;
|
||||
}).catch(err => console.log(`[${(Date.now() - config.timestamps.procStart)/1000}] E: ${err}`));
|
||||
},
|
||||
igniterOn() {
|
||||
const enableIgniterQuery = "UPDATE status SET value = 1 WHERE key = 'igniter'";
|
||||
dbfn.run(enableIgniterQuery).then(res => {
|
||||
console.log(`[${(Date.now() - config.timestamps.procStart) / 1000}] I: Igniter enabled.`);
|
||||
return;
|
||||
}).catch(err => console.log(`[${(Date.now() - config.timestamps.procStart)/1000}] E: ${err}`));
|
||||
},
|
||||
igniterOff() {
|
||||
const disableIgniterQuery = "UPDATE status SET value = 0 WHERE key = 'igniter'";
|
||||
dbfn.run(disableIgniterQuery).then(res => {
|
||||
if (process.env.DEBUG) console.log(`[${(Date.now() - config.timestamps.procStart)/1000}] I: ${res.status}`);
|
||||
console.log(`[${(Date.now() - config.timestamps.procStart) / 1000}] I: Igniter disabled.`);
|
||||
return;
|
||||
}).catch(err => console.log(`[${(Date.now() - config.timestamps.procStart)/1000}] E: ${err}`));
|
||||
},
|
||||
exhaustOn() {
|
||||
const enableExhaustQuery = "UPDATE status SET value = 1 WHERE key = 'exhaust'";
|
||||
dbfn.run(enableExhaustQuery).then(res => {
|
||||
console.log(`[${(Date.now() - config.timestamps.procStart) / 1000}] I: Exhaust enabled.`);
|
||||
return;
|
||||
}).catch(err => console.log(`[${(Date.now() - config.timestamps.procStart)/1000}] E: ${err}`));
|
||||
},
|
||||
exhaustOff() {
|
||||
const disableExhaustQuery = "UPDATE status SET value = 0 WHERE key = 'exhaust'";
|
||||
dbfn.run(disableExhaustQuery).then(res => {
|
||||
if (process.env.DEBUG) console.log(`[${(Date.now() - config.timestamps.procStart)/1000}] I: ${res.status}`);
|
||||
console.log(`[${(Date.now() - config.timestamps.procStart) / 1000}] I: Exhaust disabled.`);
|
||||
return;
|
||||
}).catch(err => console.log(`[${(Date.now() - config.timestamps.procStart)/1000}] E: ${err}`));
|
||||
},
|
||||
// Pauses the script for the time defined in env variables
|
||||
pause() {
|
||||
return new Promise((resolve) => {
|
||||
|
@ -66,9 +66,9 @@
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<!-- <div class="text-center my-4">
|
||||
<div class="text-center my-4">
|
||||
<img src="./dancing_jesus.gif" class="img-fluid">
|
||||
</div> -->
|
||||
</div>
|
||||
<div class="controls-container">
|
||||
<form action="/" method="POST">
|
||||
<input class="btn btn-danger" type="submit" id="quit" value="Quit!!" name="quit">
|
||||
|
Loading…
Reference in New Issue
Block a user