Skip to content

Commit bcd8482

Browse files
author
Stewest
committed
Styelint and fix tempoerature
1 parent c320b9b commit bcd8482

File tree

4 files changed

+107
-62
lines changed

4 files changed

+107
-62
lines changed

j5ardi/.vscode/settings.json

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"eslint.codeAction.showDocumentation": {
3+
"enable": true
4+
},
5+
"eslint.packageManager": "yarn"
6+
}
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,32 @@
1-
import React, { useEffect, useState } from "react";
2-
import socketIOClient from "socket.io-client";
1+
import React, { useEffect, useState } from 'react';
2+
import socketIOClient from 'socket.io-client';
33

44
require('dotenv').config();
55

66
export default function ClientComponent() {
7-
const [light, setLight] = useState("");
8-
const [led, setLed] = useState("");
9-
const [temp, setTemp] = useState("");
10-
const [changedLED, toggleLED] = useState("");
7+
const [light, setLight] = useState('');
8+
const [led, setLed] = useState('');
9+
const [temp, setTemp] = useState('');
10+
const [changedLED, toggleLED] = useState('');
1111

1212
const ENDPOINT = process.env.REACT_APP_ENDPOINT;
1313

1414
useEffect(() => {
1515
const socket = socketIOClient(ENDPOINT);
1616

17-
socket.on("FromLight", (data) => {
17+
socket.on('FromLight', (data) => {
1818
setLight(data);
1919
});
2020

21-
socket.on("FromLed", (data) => {
21+
socket.on('FromLed', (data) => {
2222
setLed(data);
2323
});
2424

25-
socket.on("FromTemp", (data) => {
25+
socket.on('FromTemp', (data) => {
2626
setTemp(data);
2727
});
2828

29-
socket.emit("handleLED", changedLED);
30-
29+
socket.emit('handleLED', changedLED);
3130
}, [ENDPOINT, changedLED]);
3231

3332
let lightVar = 'OFF';
@@ -36,10 +35,11 @@ export default function ClientComponent() {
3635
let ledStatus = false;
3736
let temperatureC;
3837
let temperatureF;
38+
let temperatureK;
3939

4040
if (light.item === 'light') {
4141
lightVar = light.msg;
42-
lightNumb = 100 - (parseFloat(lightVar / 10.24).toFixed(0));
42+
lightNumb = 100 - parseFloat(lightVar / 10.24).toFixed(0);
4343
luminosity = lightNumb;
4444
}
4545

@@ -51,33 +51,54 @@ export default function ClientComponent() {
5151
ledStatus = led.msg;
5252
}
5353

54-
if (temp.c || temp.f) {
55-
temperatureC = temp.c;
56-
temperatureF = parseFloat((temp.c * 9 / 5) + 32).toFixed(1);
54+
if (temp.c || temp.f || temp.k) {
55+
temperatureC = parseFloat((temp.c / 23).toFixed(1));
56+
//temperatureF = parseFloat((temp.f / 23).toFixed(1));
57+
temperatureK = parseFloat((temperatureC + 273.15).toFixed(1));
58+
temperatureF = parseFloat((temperatureC * 9) / 5 + 32).toFixed(1);
5759
}
5860

5961
function handleLED() {
60-
toggleLED(prevState => !prevState);
62+
toggleLED((prevState) => !prevState);
6163
}
6264

6365
return (
6466
<div className="grid">
6567
<div className="item light">
6668
<span>Light: {lightNumb}</span>
67-
<div className="light-fill" style={divStyle}>&nbsp;</div>
69+
<div className="light-fill" style={divStyle}>
70+
&nbsp;
71+
</div>
6872
<div className="light-bottom">&nbsp;</div>
6973
</div>
7074

7175
<div className="item led">
72-
LEDs: {ledStatus ? 'ON':'OFF'}
73-
{ledStatus ? <div className="led-red is-on"></div> : <div className="led-red"></div> }
74-
{ledStatus ? <div className="led-green is-on"></div> : <div className="led-green"></div> }
75-
{ledStatus ? <div className="led-blue is-on"></div> : <div className="led-blue"></div>}
76-
<button className="toggle-led" onClick={handleLED}>Toggle LED</button>
76+
LEDs: {ledStatus ? 'ON' : 'OFF'}
77+
{ledStatus ? (
78+
<div className="led-red is-on"></div>
79+
) : (
80+
<div className="led-red"></div>
81+
)}
82+
{ledStatus ? (
83+
<div className="led-green is-on"></div>
84+
) : (
85+
<div className="led-green"></div>
86+
)}
87+
{ledStatus ? (
88+
<div className="led-blue is-on"></div>
89+
) : (
90+
<div className="led-blue"></div>
91+
)}
92+
<button className="toggle-led" onClick={handleLED}>
93+
Toggle LED
94+
</button>
7795
</div>
7896

79-
<div className="item temp"><h3>TEMP:</h3><br />
80-
{temperatureC} 'C / {temperatureF} 'F</div>
97+
<div className="item temp">
98+
<h3>TEMP:</h3>
99+
<br />
100+
{temperatureC} 'C / {temperatureF} 'F / {temperatureK} 'K
101+
</div>
81102
</div>
82103
);
83104
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"editor.codeActionsOnSave": {
3+
"source.fixAll.eslint": false
4+
},
5+
}

j5ardi/socket-io-server/app.js

+51-38
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
const express = require("express");
2-
const http = require("http");
3-
const socketIo = require("socket.io");
1+
const express = require('express');
2+
const http = require('http');
3+
const socketIo = require('socket.io');
44

55
require('dotenv').config();
66
const port = process.env['PORT'];
77
const local = process.env['CORSLOCAL'];
88

9-
const index = require("./routes/index");
9+
const index = require('./routes/index');
1010
const app = express();
1111

1212
const events = require('events');
@@ -19,34 +19,34 @@ const io = socketIo(server, {
1919
cors: {
2020
// You may need to change this in .ENV if the client starts on a different port.
2121
origin: local,
22-
methods: ["GET", "POST"]
22+
methods: ['GET', 'POST'],
2323
},
24-
maxHttpBufferSize: 1e8
24+
maxHttpBufferSize: 1e8,
2525
});
2626

27-
const five = require("johnny-five");
27+
const five = require('johnny-five');
2828
const board = new five.Board();
2929

3030
let interval;
3131

3232
// Init Socket.io.
33-
io.on("connection", (socket) => {
34-
console.log("New client connected");
33+
io.on('connection', (socket) => {
34+
console.log('New client connected');
3535
if (interval) {
3636
clearInterval(interval);
3737
}
3838

3939
interval = setInterval(() => getApiAndEmit(socket), 1000);
4040

41-
socket.on("handleLED", (arg) => {
42-
console.log("toggleLED", arg);
41+
socket.on('handleLED', (arg) => {
42+
console.log('toggleLED', arg);
4343

4444
// Fire the 'toggleLED' event.
4545
eventEmitter.emit('toggleLED');
4646
});
4747

48-
socket.on("disconnect", () => {
49-
console.log("Client disconnected");
48+
socket.on('disconnect', () => {
49+
console.log('Client disconnected');
5050
clearInterval(interval);
5151
socket.off();
5252
});
@@ -59,29 +59,33 @@ global.tempStatus = {};
5959

6060
function setLight(item, msg) {
6161
global.lightStatus = {
62-
item, msg
62+
item,
63+
msg,
6364
};
64-
};
65+
}
6566

6667
function getLight() {
6768
return global.lightStatus;
6869
}
6970

7071
function setLED(item, msg) {
7172
global.ledStatus = {
72-
item, msg
73+
item,
74+
msg,
7375
};
74-
};
76+
}
7577

7678
function getLED() {
7779
return global.ledStatus;
7880
}
7981

80-
function setTEMP(c, f) {
82+
function setTEMP(c, f, k) {
8183
global.tempStatus = {
82-
c, f
84+
c,
85+
f,
86+
k,
8387
};
84-
};
88+
}
8589

8690
function getTEMP() {
8791
return global.tempStatus;
@@ -93,32 +97,40 @@ const getApiAndEmit = (socket) => {
9397
const temp = getTEMP();
9498

9599
// Emitting a new message. Will be consumed by the client
96-
socket.emit("FromLight", light);
97-
socket.emit("FromLed", led);
98-
socket.emit("FromTemp", temp);
100+
socket.emit('FromLight', light);
101+
socket.emit('FromLed', led);
102+
socket.emit('FromTemp', temp);
99103
};
100104

101105
server.listen(port, () => console.log(`Listening on port ${port}`));
102106

103107
// Arduino Johnny 5.
104-
board.on("ready", function () {
108+
board.on('ready', function () {
105109
// I've put 3 separate LEDs on Digital pins 3 Blue, 5 Green, 6 Red.
106110
// And a rgb LED, controlled by 9, 10 , 11.
107111
const rgb = new five.Led.RGB([9, 10, 11]);
108112

109113
// Create a new `photoresistor` hardware instance on Analog 2.
110114
const photoresistor = new five.Sensor({
111-
pin: "A2",
112-
freq: 5000
115+
pin: 'A2',
116+
freq: 5000,
113117
});
114118

115119
// "data" is the current reading from the photoresistor.
116-
photoresistor.on("data", () => {
117-
setLight('light', photoresistor.value)
120+
photoresistor.on('data', () => {
121+
setLight('light', photoresistor.value);
118122
});
119123

120124
let index = 0;
121-
const rainbow = ["FF0000", "FF7F00", "FFFF00", "00FF00", "0000FF", "4B0082", "8F00FF"];
125+
const rainbow = [
126+
'FF0000',
127+
'FF7F00',
128+
'FFFF00',
129+
'00FF00',
130+
'0000FF',
131+
'4B0082',
132+
'8F00FF',
133+
];
122134
// Raibow RGA LED
123135
const rgbOn = new five.Leds([12]);
124136
// Array of the single LEDs.
@@ -141,7 +153,7 @@ board.on("ready", function () {
141153
rgbOn.off();
142154
}, 5000);
143155
console.log('Ended Rainbow');
144-
}
156+
};
145157

146158
/**
147159
* @param {*} colour
@@ -153,9 +165,9 @@ board.on("ready", function () {
153165

154166
setTimeout(function () {
155167
colour.stop().off();
156-
setLED('led', false)
168+
setLED('led', false);
157169
}, 5000);
158-
}
170+
};
159171

160172
// Turn on Rainbow at start.
161173
rainbox();
@@ -167,16 +179,17 @@ board.on("ready", function () {
167179
eventEmitter.on('toggleLED', pulseLed);
168180

169181
const thermometer = new five.Thermometer({
170-
controller: "LM35",
171-
pin: "A5"
182+
controller: 'ANALOG',
183+
pin: 'A5',
184+
freq: 2000,
172185
});
173186

174-
thermometer.on("change", () => {
175-
const {celsius, fahrenheit} = thermometer;
176-
setTEMP(celsius / 10, fahrenheit / 10);
187+
thermometer.on('change', () => {
188+
const { celsius, fahrenheit, kelvin } = thermometer;
189+
setTEMP(celsius, fahrenheit, kelvin);
177190
});
178191

179-
board.on("exit", () => {
192+
board.on('exit', () => {
180193
// Turn off the rgb LED.
181194
rgbOn.off();
182195
// Turn off each led in the array of individual leds.

0 commit comments

Comments
 (0)