feat: merged both code bases into a single project, with a define changing pre-defined configuration, removed signal to in-game level mapping, moved to lua server
This commit is contained in:
@@ -1,42 +0,0 @@
|
|||||||
#define UV_SIGNAL_READ 34 // PUT_YOUR_SIGNAL_GPIO_HERE
|
|
||||||
|
|
||||||
// -- lv0 lv1 lv2 lv3 lv4 lv5 lv6 lv7 lv8
|
|
||||||
int uvLevelValues[] = {0x00,0x04,0x0B,0x14,0x1F,0x2F,0x4D,0x77,0x8C};
|
|
||||||
int uvSignalToLevel[] =
|
|
||||||
{
|
|
||||||
//Less than lv1 is 0
|
|
||||||
100,// lv1
|
|
||||||
250,// lv2
|
|
||||||
350,// lv3
|
|
||||||
500,// lv4
|
|
||||||
550,// lv5
|
|
||||||
650,// lv6
|
|
||||||
800,// lv7
|
|
||||||
900,// or higher lv8
|
|
||||||
};
|
|
||||||
|
|
||||||
int convertToLevel(int signalRead){
|
|
||||||
for(int i = 0; i < sizeof(uvSignalToLevel)/sizeof(int) ; i++){
|
|
||||||
if(signalRead < uvSignalToLevel[i]){
|
|
||||||
return uvLevelValues[i];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return uvLevelValues[(sizeof(uvSignalToLevel)/sizeof(int))-1];
|
|
||||||
}
|
|
||||||
|
|
||||||
void setup() {
|
|
||||||
Serial.begin(9600);
|
|
||||||
if(sizeof(uvSignalToLevel)!=sizeof(uvLevelValues)-sizeof(int)){
|
|
||||||
while(true){
|
|
||||||
Serial.print("Level size mismatch!");
|
|
||||||
delay(1000);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void loop() {
|
|
||||||
int value = analogRead(UV_SIGNAL_READ);
|
|
||||||
value = convertToLevel(value);
|
|
||||||
Serial.println(value);
|
|
||||||
delay(500);
|
|
||||||
}
|
|
||||||
@@ -1,50 +1,37 @@
|
|||||||
|
// This is a comment
|
||||||
|
// add 2 slashs in front of a line to comment it
|
||||||
|
// if you want to use wifi mode, leave #define WIFI 1 uncomented, else comment it
|
||||||
|
|
||||||
|
#define WIFI // Wifi mode ON
|
||||||
|
|
||||||
|
// Example of WIFI off
|
||||||
|
//#define WIFI
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef WIFI
|
||||||
#include <WiFi.h>
|
#include <WiFi.h>
|
||||||
|
#endif //WIFI
|
||||||
|
|
||||||
#define UV_SIGNAL_READ 34
|
#define UV_SIGNAL_READ 34
|
||||||
|
|
||||||
#define ssid "YOUR_WIFI_NAME_HERE"
|
#ifdef WIFI
|
||||||
#define pass "YOUR_WIFI_PASSWORD_HERE"
|
#define WiFi_SSID "WIFI_NAME_HERE" // WiFi name
|
||||||
|
#define WiFi_PASS "WIFI_PASSWORD_HERE" // WiFi password
|
||||||
|
|
||||||
#define host "YOUR_COMPUTER_IP_HERE" // Example: 192.168.1.2
|
#define HOST "YOUR_PC_IP_HERE" // Example: 192.168.1.2
|
||||||
#define port 64222 // NO NEED TO CHANGE
|
#define PORT 64222 // NO NEED TO CHANGE
|
||||||
|
|
||||||
WiFiClient client;
|
WiFiClient client;
|
||||||
|
#endif //WIFI uvValue = analogRead(uvSensorPin);
|
||||||
|
|
||||||
|
|
||||||
// -- lv0 lv1 lv2 lv3 lv4 lv5 lv6 lv7 lv8
|
|
||||||
int uvLevelValues[] = {0x00,0x04,0x0B,0x14,0x1F,0x2F,0x4D,0x77,0x8C};
|
|
||||||
int uvSignalToLevel[] =
|
|
||||||
{
|
|
||||||
//Less than lv1 is 0
|
|
||||||
100,// lv1
|
|
||||||
250,// lv2
|
|
||||||
350,// lv3
|
|
||||||
500,// lv4
|
|
||||||
550,// lv5
|
|
||||||
650,// lv6
|
|
||||||
800,// lv7
|
|
||||||
900,// or higher lv8
|
|
||||||
};
|
|
||||||
|
|
||||||
int convertToLevel(int signalRead){
|
|
||||||
for(int i = 0; i < sizeof(uvSignalToLevel)/sizeof(int) ; i++){
|
|
||||||
if(signalRead < uvSignalToLevel[i]){
|
|
||||||
return uvLevelValues[i];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return uvLevelValues[(sizeof(uvSignalToLevel)/sizeof(int))-1];
|
|
||||||
}
|
|
||||||
|
|
||||||
void setup() {
|
void setup() {
|
||||||
Serial.begin(9600); // Start serial communication
|
Serial.begin(9600); // Start serial communication
|
||||||
if(sizeof(uvSignalToLevel)!=sizeof(uvLevelValues)-sizeof(int)){
|
pinMode(UV_SIGNAL_READ,INPUT);
|
||||||
while(true){
|
|
||||||
Serial.print("Level size mismatch!");
|
|
||||||
delay(1000);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
WiFi.begin(ssid, pass);
|
#ifdef WIFI
|
||||||
|
WiFi.begin(WiFi_SSID, WiFi_PASS);
|
||||||
while (WiFi.status() != WL_CONNECTED) {
|
while (WiFi.status() != WL_CONNECTED) {
|
||||||
delay(500);
|
delay(500);
|
||||||
Serial.print(".");
|
Serial.print(".");
|
||||||
@@ -52,16 +39,39 @@ void setup() {
|
|||||||
Serial.print("Connected to WiFi");
|
Serial.print("Connected to WiFi");
|
||||||
Serial.print("Connecting to mGBA...");
|
Serial.print("Connecting to mGBA...");
|
||||||
|
|
||||||
if (!client.connect(host, port)) {
|
if (!client.connect(HOST, PORT)) {
|
||||||
Serial.println("Connection to server failed");
|
Serial.println("Connection to server failed");
|
||||||
}
|
}
|
||||||
Serial.print("Connected to mGBA...");
|
Serial.print("Connected to mGBA...");
|
||||||
|
#endif //WIFI
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void loop() {
|
void loop() {
|
||||||
int value = analogRead(UV_SIGNAL_READ);
|
int value = analogRead(UV_SIGNAL_READ);
|
||||||
//Serial.println(value); // Print the value to Serial Monitor
|
|
||||||
value = convertToLevel(value);
|
#ifdef WIFI
|
||||||
|
// Connection lost, attempting to reconnect.
|
||||||
|
if (WiFi.status() != WL_CONNECTED) {
|
||||||
|
Serial.print("WiFi lost connection. Reconnecting...");
|
||||||
|
WiFi.disconnect();
|
||||||
|
WiFi.begin(WiFi_SSID, WiFi_PASS);
|
||||||
|
while (WiFi.status() != WL_CONNECTED){
|
||||||
|
Serial.print('.');
|
||||||
|
}
|
||||||
|
Serial.println("Reconnected to WiFi");
|
||||||
|
}
|
||||||
|
if(!client.connected()){
|
||||||
|
Serial.print("Lost Connection to lua server, reconnecting...");
|
||||||
|
while(!client.connect(HOST, PORT)){
|
||||||
|
Serial.print(".");
|
||||||
|
delay(500);
|
||||||
|
}
|
||||||
|
Serial.println("Reconnected to lua server");
|
||||||
|
}
|
||||||
client.print(value);
|
client.print(value);
|
||||||
|
#endif //WIFI
|
||||||
|
|
||||||
|
Serial.println(value);
|
||||||
delay(500); // Wait for half a second
|
delay(500); // Wait for half a second
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user