//========================================================== // JOYSTIC //========================================================== // LIBRARY #include "joystic.h" // JOYSTIC PIN DEFINITION #define X_AXIS_PIN 32 // ADC1_CH4 (Valid) #define Y_AXIS_PIN 33 // ADC1_CH5 (Valid) #define SWITCH_PIN 34 // Changed from 25 (now ADC1_CH6) // DATA STRUCTURE struct JoysticData { uint8_t X; uint8_t Y; bool B; }; // JOYSTIC OBJECT Joystic JY; // JOYSTIC DATA JoysticData JD; //========================================================== // ESPNOW //========================================================== // LIBRARY #include #include // THIS REMOTE MAC ADDRESS // 88:13:BF:04:24:7C // THE RECEIVER MAC ADDRESS // 1C:69:20:E9:13:EC // REPLACE WITH YOUR RECEIVER MAC ADDRESS - 1C:69:20:E9:13:EC uint8_t receiverMacAddress[] = {0x1C, 0x69, 0x20, 0xE9, 0x13, 0xEC}; // 1C:69:20:E9:13:EC // CALLBACK WHEN DATA IS SENT void OnDataSent(const uint8_t *mac_addr, esp_now_send_status_t status) { Serial.print("\r\nLast Packet Send Status:\t "); Serial.println(status); Serial.println(status == ESP_NOW_SEND_SUCCESS ? "Message sent" : "Message failed"); } // SEND DATA void SendData(JoysticData &JD) { esp_err_t result = esp_now_send(receiverMacAddress, (uint8_t *) &JD, sizeof(JD)); if (result == ESP_OK) { Serial.println("Sent with success"); } else { Serial.println("Error sending the data"); } } // Starting WiFi ESP NOW void StartWireless() { // WiFi Station Mode WiFi.mode(WIFI_MODE_STA); // Init ESP-NOW if (esp_now_init() != ESP_OK) { Serial.println("Error initializing ESP-NOW"); return; } else { Serial.println("Succes: Initialized ESP-NOW"); } esp_now_register_send_cb(OnDataSent); // Register peer esp_now_peer_info_t peerInfo; memcpy(peerInfo.peer_addr, receiverMacAddress, 6); peerInfo.channel = 0; peerInfo.encrypt = false; // Add peer if (esp_now_add_peer(&peerInfo) != ESP_OK) { Serial.println("Failed to add peer"); return; } else { Serial.println("Succes: Added peer"); } } //==========================================================