mirror of
https://github.com/IoTManagerProject/IoTManager.git
synced 2026-03-26 22:22:16 +03:00
Bus scanner added
This commit is contained in:
4
include/Bus.h
Normal file
4
include/Bus.h
Normal file
@@ -0,0 +1,4 @@
|
||||
#pragma once
|
||||
#include <Arduino.h>
|
||||
void busInit();
|
||||
String i2c_scan();
|
||||
38
src/Bus.cpp
Normal file
38
src/Bus.cpp
Normal file
@@ -0,0 +1,38 @@
|
||||
#include "Bus.h"
|
||||
#include "Class/NotAsinc.h"
|
||||
#include "Global.h"
|
||||
|
||||
void busInit() {
|
||||
myNotAsincActions->add(
|
||||
do_BUSSCAN, [&](void*) {
|
||||
String tmp = i2c_scan();
|
||||
if (tmp == "error") {
|
||||
tmp = i2c_scan();
|
||||
Serial.println(tmp);
|
||||
jsonWriteStr(configLiveJson, "i2c", tmp);
|
||||
} else {
|
||||
Serial.println(tmp);
|
||||
jsonWriteStr(configLiveJson, "i2c", tmp);
|
||||
}
|
||||
},
|
||||
nullptr);
|
||||
}
|
||||
|
||||
String i2c_scan() {
|
||||
String out;
|
||||
byte count = 0;
|
||||
Wire.begin();
|
||||
for (byte i = 8; i < 120; i++) {
|
||||
Wire.beginTransmission(i);
|
||||
if (Wire.endTransmission() == 0) {
|
||||
count++;
|
||||
out += String(count) + ". 0x" + String(i, HEX) + "; ";
|
||||
delay(1);
|
||||
}
|
||||
}
|
||||
if (count == 0) {
|
||||
return "error";
|
||||
} else {
|
||||
return out;
|
||||
}
|
||||
}
|
||||
@@ -109,7 +109,6 @@ void web_init() {
|
||||
// request->send(200);
|
||||
//}
|
||||
|
||||
|
||||
//==============================wifi settings=============================================
|
||||
if (request->hasArg("routerssid")) {
|
||||
jsonWriteStr(configSetupJson, "routerssid", request->getParam("routerssid")->value());
|
||||
@@ -230,7 +229,7 @@ void web_init() {
|
||||
|
||||
//==============================utilities settings=============================================
|
||||
if (request->hasArg("i2c")) {
|
||||
|
||||
myNotAsincActions->make(do_BUSSCAN);
|
||||
request->redirect("/?set.utilities");
|
||||
}
|
||||
});
|
||||
@@ -285,7 +284,6 @@ void web_init() {
|
||||
*/
|
||||
server.on("/upgrade", HTTP_GET, [](AsyncWebServerRequest* request) {
|
||||
myNotAsincActions->make(do_UPGRADE);
|
||||
;
|
||||
request->send(200, "text/html");
|
||||
});
|
||||
}
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
#include "Utils\WebUtils.h"
|
||||
#include "items/ButtonInClass.h"
|
||||
#include "RemoteOrdersUdp.h"
|
||||
#include "Bus.h"
|
||||
|
||||
void not_async_actions();
|
||||
|
||||
@@ -74,6 +75,9 @@ void setup() {
|
||||
SerialPrint("I","UDP","Udp Init");
|
||||
asyncUdpInit();
|
||||
|
||||
SerialPrint("I","Bus","Bus Init");
|
||||
busInit();
|
||||
|
||||
#ifdef SSDP_EN
|
||||
SerialPrint("I","SSDP","Ssdp Init");
|
||||
SsdpInit();
|
||||
|
||||
Reference in New Issue
Block a user