init commit

This commit is contained in:
mk
2025-10-15 22:05:55 -03:00
commit 16cd528e5a
2 changed files with 109 additions and 0 deletions

42
mc-serial/mc-serial.ino Normal file
View File

@@ -0,0 +1,42 @@
#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);
}

67
mc-wifi/mc-wifi.ino Normal file
View File

@@ -0,0 +1,67 @@
#include <WiFi.h>
#define UV_SIGNAL_READ 34
#define ssid "YOUR_WIFI_NAME_HERE"
#define pass "YOUR_WIFI_PASSWORD_HERE"
#define host "YOUR_COMPUTER_IP_HERE" // Example: 192.168.1.2
#define port 64222 // NO NEED TO CHANGE
WiFiClient client;
// -- 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);
}
}
WiFi.begin(ssid, pass);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.print("Connected to WiFi");
Serial.print("Connecting to mGBA...");
if (!client.connect(host, port)) {
Serial.println("Connection to server failed");
}
Serial.print("Connected to mGBA...");
}
void loop() {
int value = analogRead(UV_SIGNAL_READ);
//Serial.println(value); // Print the value to Serial Monitor
value = convertToLevel(value);
client.print(value);
delay(500); // Wait for half a second
}