Compare commits

..
7 Commits
Author SHA1 Message Date
smayzy a2adcf7afd add M0 and M1 pin and change serial pins 2026-05-18 16:53:31 +02:00
smayzy 446757cf88 initialyse string 2026-05-17 19:20:21 +02:00
smayzy b7fde78367 add small delay 2026-05-16 21:26:53 +02:00
smayzy d9f7332824 set for hall sensor 2026-05-14 12:32:12 +02:00
smayzy ed049c234b add fake data option to receiving end 2026-05-03 17:38:30 +02:00
smayzy f0805dd48a add receiver 2026-05-03 17:20:12 +02:00
smayzy 2e06a62e2a add lora passthrough for uart stream 2026-05-03 17:15:41 +02:00
2 changed files with 75 additions and 5 deletions
+22 -4
View File
@@ -1,25 +1,43 @@
#include <SoftwareSerial.h>
const float TENSION_SCALE = 15.701;
const float CURRENT_SCALE = 27.322;
const float CURRENT_SCALE = 31.25;
const float ADC_TO_VOLT = 5.0 / 1023.0;
SoftwareSerial lora(8, 9); // RX, TX
SoftwareSerial lora(10, 9); // RX, TX
float tens = 0;
float amp = 0;
String line = "";
void setup() {
lora.begin(9600);
Serial.begin(115200);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
digitalWrite(11, LOW); // M1
digitalWrite(12, LOW); // M0
}
void loop() {
tens = (analogRead(A1) * ADC_TO_VOLT * TENSION_SCALE);
amp = (analogRead(A0) * ADC_TO_VOLT * CURRENT_SCALE);
amp = analogRead(A2);
if (amp < 505) amp = 505;
amp = (amp - 505) * ADC_TO_VOLT * CURRENT_SCALE;
Serial.print(tens);
Serial.print(",");
Serial.println(amp);
lora.println();
while (Serial.available()) {
char c = Serial.read();
if (c == '\n') {
lora.println(line);
line = "";
} else {
line += c;
}
}
delay(100);
}
+52
View File
@@ -0,0 +1,52 @@
#include <SoftwareSerial.h>
SoftwareSerial lora(10, 9); // RX, TX
bool test_with_fake = false;
String line = "";
void setup() {
Serial.begin(115200);
lora.begin(9600);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
digitalWrite(11, LOW); // M1
digitalWrite(12, LOW); // M0
}
void loop() {
if (!test_with_fake) {
while (lora.available()) {
char c = lora.read();
if (c == '\n') {
Serial.println(line);
line = "";
} else {
line += c;
}
}
} else {
while (1) {
int speed = random(0, 51);
int rpm = random(0, 3000);
int power = random(0, 1500);
float eff = random(0, 1000) / 10.0;
int bat = random(0, 100);
float tens = random(360, 550) / 10.0;
float amp = random(0, 300) / 10.0;
int warn = random(0, 7);
Serial.print(speed); Serial.print(',');
Serial.print(rpm); Serial.print(',');
Serial.print(power); Serial.print(',');
Serial.print(eff, 1); Serial.print(',');
Serial.print(bat); Serial.print(',');
Serial.print(tens, 1); Serial.print(',');
Serial.print(amp, 1); Serial.print(',');
Serial.println(warn);
delay(50);
}
}
}