mirror of
https://gitlab.waag.org/make/fablab/interns/2025/sam.git
synced 2025-08-03 11:54:58 +00:00
updated code to send all data
This commit is contained in:
@@ -7,6 +7,7 @@ int normalizePot(int pin, int minValue);
|
|||||||
int mapPot(int normalizedValue);
|
int mapPot(int normalizedValue);
|
||||||
int analogReadMultiPlexer(int addressA, int addressB, int addressC, int addressD, int pin);
|
int analogReadMultiPlexer(int addressA, int addressB, int addressC, int addressD, int pin);
|
||||||
void espNow();
|
void espNow();
|
||||||
|
void readAllMultiPlexer();
|
||||||
|
|
||||||
const int MAXPWMVALUE = 1000;
|
const int MAXPWMVALUE = 1000;
|
||||||
const int MINPWMVALUE = 2000;
|
const int MINPWMVALUE = 2000;
|
||||||
@@ -20,7 +21,7 @@ typedef struct struct_message
|
|||||||
int PWMCH3;
|
int PWMCH3;
|
||||||
int PWMCH4;
|
int PWMCH4;
|
||||||
} struct_message;
|
} struct_message;
|
||||||
struct_message myData; // declare the struct as myData
|
struct_message JoystickData; // declare the struct as JoystickData
|
||||||
|
|
||||||
esp_now_peer_info_t peerInfo; // create a class object of the ESPNow class
|
esp_now_peer_info_t peerInfo; // create a class object of the ESPNow class
|
||||||
|
|
||||||
@@ -35,23 +36,19 @@ void setup()
|
|||||||
pinMode(D8, OUTPUT);
|
pinMode(D8, OUTPUT);
|
||||||
pinMode(D9, OUTPUT);
|
pinMode(D9, OUTPUT);
|
||||||
pinMode(D0, INPUT);
|
pinMode(D0, INPUT);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void loop()
|
void loop()
|
||||||
{
|
{
|
||||||
Serial.print("X:" + String(myData.PWMCH2));
|
readAllMultiPlexer();
|
||||||
Serial.println(" Y:" + String(myData.PWMCH1));
|
|
||||||
|
|
||||||
|
|
||||||
// Set values to send
|
// Set values to send
|
||||||
myData.PWMCH1 = mapPot(analogReadMultiPlexer(0, 0, 0, 0, A0));
|
JoystickData.PWMCH1 = mapPot(analogReadMultiPlexer(0, 0, 0, 0, A0)); //Right joystick Y
|
||||||
myData.PWMCH2 = mapPot(analogReadMultiPlexer(1, 0, 0, 0, A0)); // test values
|
JoystickData.PWMCH2 = mapPot(analogReadMultiPlexer(1, 0, 0, 0, A0)); // Right joystick X
|
||||||
myData.PWMCH3 = 1000;
|
JoystickData.PWMCH3 = mapPot(analogReadMultiPlexer(0, 0, 0, 1, A0)); // left joystick Y
|
||||||
myData.PWMCH4 = 1000;
|
JoystickData.PWMCH4 = mapPot(analogReadMultiPlexer(1, 0, 0, 1, A0)); // left joystick X
|
||||||
|
|
||||||
// Send message via ESP-NOW
|
// Send message via ESP-NOW
|
||||||
esp_err_t result = esp_now_send(broadcastAddress, (uint8_t *)&myData, sizeof(myData));
|
esp_err_t result = esp_now_send(broadcastAddress, (uint8_t *)&JoystickData, sizeof(JoystickData));
|
||||||
if (result == ESP_OK)
|
if (result == ESP_OK)
|
||||||
{
|
{
|
||||||
// Serial.println("Sent with success");
|
// Serial.println("Sent with success");
|
||||||
@@ -60,7 +57,7 @@ void loop()
|
|||||||
{
|
{
|
||||||
// Serial.println("Error sending the data");
|
// Serial.println("Error sending the data");
|
||||||
}
|
}
|
||||||
delay(10); //delay to avoid hammering the radio and to save power/heat
|
delay(10); // delay to avoid hammering the radio and to save power/heat
|
||||||
}
|
}
|
||||||
|
|
||||||
int mapPot(int normalizedValue)
|
int mapPot(int normalizedValue)
|
||||||
@@ -92,7 +89,8 @@ int analogReadMultiPlexer(int addressA, int addressB, int addressC, int addressD
|
|||||||
return analogRead(pin);
|
return analogRead(pin);
|
||||||
}
|
}
|
||||||
|
|
||||||
void espNow(){ // Set device as a Wi-Fi Station
|
void espNow()
|
||||||
|
{ // Set device as a Wi-Fi Station
|
||||||
WiFi.mode(WIFI_STA);
|
WiFi.mode(WIFI_STA);
|
||||||
// Init ESP-NOW
|
// Init ESP-NOW
|
||||||
if (esp_now_init() != ESP_OK)
|
if (esp_now_init() != ESP_OK)
|
||||||
@@ -109,4 +107,42 @@ void espNow(){ // Set device as a Wi-Fi Station
|
|||||||
{
|
{
|
||||||
Serial.println("Failed to add peer");
|
Serial.println("Failed to add peer");
|
||||||
return;
|
return;
|
||||||
}}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void readAllMultiPlexer()
|
||||||
|
{
|
||||||
|
// we counting in binary
|
||||||
|
Serial.print("0,0,0,0: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(0, 0, 0, 0, A0));
|
||||||
|
Serial.print("1,0,0,0: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(1, 0, 0, 0, A0));
|
||||||
|
Serial.print("0,1,0,0: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(0, 1, 0, 0, A0));
|
||||||
|
Serial.print("1,1,0,0: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(1, 1, 0, 0, A0));
|
||||||
|
Serial.print("0,0,1,0: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(0, 0, 1, 0, A0));
|
||||||
|
Serial.print("1,0,1,0: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(1, 0, 1, 0, A0));
|
||||||
|
Serial.print("0,1,1,0: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(0, 1, 1, 0, A0));
|
||||||
|
Serial.print("1,1,1,0: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(1, 1, 1, 0, A0));
|
||||||
|
Serial.print("0,0,0,1: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(0, 0, 0, 1, A0));
|
||||||
|
Serial.print("1,0,0,1: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(1, 0, 0, 1, A0));
|
||||||
|
Serial.print("0,1,0,1: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(0, 1, 0, 1, A0));
|
||||||
|
Serial.print("1,1,0,1: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(1, 1, 0, 1, A0));
|
||||||
|
Serial.print("0,0,1,1: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(0, 0, 1, 1, A0));
|
||||||
|
Serial.print("1,0,1,1: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(1, 0, 1, 1, A0));
|
||||||
|
Serial.print("0,1,1,1: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(0, 1, 1, 1, A0));
|
||||||
|
Serial.print("1,1,1,1: ");
|
||||||
|
Serial.println(analogReadMultiPlexer(1, 1, 1, 1, A0));
|
||||||
|
}
|
Reference in New Issue
Block a user