Created helper functions

This commit is contained in:
Alex Alvarado
2022-05-17 12:06:04 +02:00
parent b6602533ea
commit b8aac04ef2

44
include/Helpers.hpp Normal file
View File

@ -0,0 +1,44 @@
/* Funciones Personalizadas YHP */
/**********************************************/
/* Genera un log en el puerto Serial */
void log(String s){
Serial.println(s);
}
/**********************************************/
/* Retorna IPAddress en formato "n.n.n.n" de IP a String */
String ipStr(const IPAddress &ip){
String sFn = "";
for (byte bFn = 0; bFn < 3; bFn++)
{
sFn += String((ip >> (8 * bFn)) & 0xFF) + ".";
}
sFn += String(((ip >> 8 * 3)) & 0xFF);
return sFn;
}
// De HEX->String
String hexStr(const unsigned long &h, const byte &l = 8){
String s;
s = String(h, HEX);
s.toUpperCase();
s = ("00000000" + s).substring(s.length() + 8 - l);
return s;
}
// Create a Unique ID from MAC address */
String idUnique(){
// Retorna los ultimos 4 Bytes del MAC rotados
char idunique[15];
uint64_t chipid = ESP.getEfuseMac();
uint16_t chip = (uint16_t)(chipid >> 32);
snprintf(idunique, 15, "%04X", chip);
return idunique;
}
/**********************************************/
// ID del Dispositivo para La Base de Datos
const String device_id = hexStr(ESP.getEfuseMac()) + "CE" + String(idUnique());
/* ESP32 utiliza funcion getEfuseMac() */
String deviceID(){
return "ESP32" + hexStr(ESP.getEfuseMac()) + String(idUnique());
}