Compare commits
2 Commits
67a9fc19ec
...
ef726b1853
Author | SHA1 | Date | |
---|---|---|---|
ef726b1853 | |||
23aa026e9f |
@ -2,6 +2,9 @@
|
|||||||
// TODO: Move these to config
|
// TODO: Move these to config
|
||||||
// Physical Pin numbers for GPIO
|
// Physical Pin numbers for GPIO
|
||||||
const augerPin = 7; // Pin for controlling the relay for the pellet auger motor.
|
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
|
// Require the package for pulling version numbers
|
||||||
const package = require('../package.json');
|
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: {
|
commands: {
|
||||||
// Prepare the stove for starting
|
// Prepare the stove for starting
|
||||||
augerOn() { // FKA startup()
|
augerOn() { // FKA startup()
|
||||||
@ -103,6 +180,36 @@ const functions = {
|
|||||||
return;
|
return;
|
||||||
}).catch(err => console.log(`[${(Date.now() - config.timestamps.procStart)/1000}] E: ${err}`));
|
}).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
|
// Pauses the script for the time defined in env variables
|
||||||
pause() {
|
pause() {
|
||||||
return new Promise((resolve) => {
|
return new Promise((resolve) => {
|
||||||
|
@ -66,9 +66,9 @@
|
|||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<!-- <div class="text-center my-4">
|
<div class="text-center my-4">
|
||||||
<img src="./dancing_jesus.gif" class="img-fluid">
|
<img src="./dancing_jesus.gif" class="img-fluid">
|
||||||
</div> -->
|
</div>
|
||||||
<div class="controls-container">
|
<div class="controls-container">
|
||||||
<form action="/" method="POST">
|
<form action="/" method="POST">
|
||||||
<input class="btn btn-danger" type="submit" id="quit" value="Quit!!" name="quit">
|
<input class="btn btn-danger" type="submit" id="quit" value="Quit!!" name="quit">
|
||||||
|
Loading…
Reference in New Issue
Block a user