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>
|
||||
#endif //WIFI
|
||||
|
||||
#define UV_SIGNAL_READ 34
|
||||
|
||||
#define ssid "YOUR_WIFI_NAME_HERE"
|
||||
#define pass "YOUR_WIFI_PASSWORD_HERE"
|
||||
#ifdef WIFI
|
||||
#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 port 64222 // NO NEED TO CHANGE
|
||||
#define HOST "YOUR_PC_IP_HERE" // Example: 192.168.1.2
|
||||
#define PORT 64222 // NO NEED TO CHANGE
|
||||
|
||||
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() {
|
||||
Serial.begin(9600); // Start serial communication
|
||||
if(sizeof(uvSignalToLevel)!=sizeof(uvLevelValues)-sizeof(int)){
|
||||
while(true){
|
||||
Serial.print("Level size mismatch!");
|
||||
delay(1000);
|
||||
}
|
||||
}
|
||||
pinMode(UV_SIGNAL_READ,INPUT);
|
||||
|
||||
WiFi.begin(ssid, pass);
|
||||
#ifdef WIFI
|
||||
WiFi.begin(WiFi_SSID, WiFi_PASS);
|
||||
while (WiFi.status() != WL_CONNECTED) {
|
||||
delay(500);
|
||||
Serial.print(".");
|
||||
@@ -52,16 +39,39 @@ void setup() {
|
||||
Serial.print("Connected to WiFi");
|
||||
Serial.print("Connecting to mGBA...");
|
||||
|
||||
if (!client.connect(host, port)) {
|
||||
if (!client.connect(HOST, PORT)) {
|
||||
Serial.println("Connection to server failed");
|
||||
}
|
||||
Serial.print("Connected to mGBA...");
|
||||
#endif //WIFI
|
||||
|
||||
}
|
||||
|
||||
void loop() {
|
||||
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);
|
||||
#endif //WIFI
|
||||
|
||||
Serial.println(value);
|
||||
delay(500); // Wait for half a second
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user