📡 Adds broadcasting data by ws
This commit is contained in:
@@ -47,6 +47,8 @@ class Spot {
|
|||||||
|
|
||||||
uint8_t cpu_temperature();
|
uint8_t cpu_temperature();
|
||||||
|
|
||||||
|
esp_err_t broadcast_data();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
esp_err_t _initialize_camera();
|
esp_err_t _initialize_camera();
|
||||||
esp_err_t _initialize_captive_portal();
|
esp_err_t _initialize_captive_portal();
|
||||||
@@ -68,6 +70,8 @@ class Spot {
|
|||||||
MPU6050 _mpu;
|
MPU6050 _mpu;
|
||||||
NewPing _leftUss;
|
NewPing _leftUss;
|
||||||
NewPing _rightUss;
|
NewPing _rightUss;
|
||||||
|
|
||||||
|
unsigned long _last_broadcast{0};
|
||||||
};
|
};
|
||||||
|
|
||||||
void display_ip_and_ssid(Adafruit_SSD1306* display, String ip, const char* ssid);
|
void display_ip_and_ssid(Adafruit_SSD1306* display, String ip, const char* ssid);
|
||||||
|
|||||||
@@ -33,6 +33,8 @@ void Spot::handle(){
|
|||||||
if(USE_CAPTIVE_PORTAL) _dnsServer.processNextRequest();
|
if(USE_CAPTIVE_PORTAL) _dnsServer.processNextRequest();
|
||||||
ArduinoOTA.handle();
|
ArduinoOTA.handle();
|
||||||
_ws.cleanupClients();
|
_ws.cleanupClients();
|
||||||
|
|
||||||
|
broadcast_data();
|
||||||
}
|
}
|
||||||
|
|
||||||
esp_err_t Spot::initialize_wifi(){
|
esp_err_t Spot::initialize_wifi(){
|
||||||
@@ -51,6 +53,34 @@ uint8_t Spot::cpu_temperature(){
|
|||||||
return (temprature_sens_read() - 32) / 1.8;
|
return (temprature_sens_read() - 32) / 1.8;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
esp_err_t Spot::broadcast_data(){
|
||||||
|
if(millis() - _last_broadcast < 50) return ESP_OK;
|
||||||
|
|
||||||
|
size_t numContent = 13;
|
||||||
|
float content[numContent];
|
||||||
|
content[0] = WiFi.RSSI();
|
||||||
|
content[1] = _mpu.getTemp();
|
||||||
|
content[2] = _mpu.getAccX();
|
||||||
|
content[3] = _mpu.getAccY();
|
||||||
|
content[4] = _mpu.getAccZ();
|
||||||
|
content[5] = _mpu.getAngleX();
|
||||||
|
content[6] = _mpu.getAngleY();
|
||||||
|
content[7] = _mpu.getAngleZ();
|
||||||
|
content[8] = cpu_temperature();
|
||||||
|
content[9] = _leftUss.ping_cm();
|
||||||
|
content[10] = _rightUss.ping_cm();
|
||||||
|
content[11] = ESP.getFreeHeap();
|
||||||
|
content[12] = ESP.getFreePsram();
|
||||||
|
|
||||||
|
uint8_t* buf = (uint8_t*) &content;
|
||||||
|
size_t buf_len = sizeof(buf);
|
||||||
|
|
||||||
|
_ws.binaryAll(buf, buf_len * numContent);
|
||||||
|
_last_broadcast = millis();
|
||||||
|
|
||||||
|
return ESP_OK;
|
||||||
|
}
|
||||||
|
|
||||||
esp_err_t Spot::_initialize_camera(){
|
esp_err_t Spot::_initialize_camera(){
|
||||||
camera_config_t camera_config;
|
camera_config_t camera_config;
|
||||||
camera_config.ledc_channel = LEDC_CHANNEL_0;
|
camera_config.ledc_channel = LEDC_CHANNEL_0;
|
||||||
|
|||||||
Reference in New Issue
Block a user