2021-02-08 11:08:15 +01:00

58 lines
2.3 KiB
C

#include <stdint.h>
#include <stdbool.h>
#include <config.h>
#include <eeprom.h>
#include <logger.h>
t_configBlock defaultConfigBlock = {
.configMagic = CONFIG_MAGIC,
.deviceName = "MainsCnt",
.macAddress = { 0x00, 0xA0, 0x57, 0x05, 0x3E, 0x0F },
.ntpServer = "0.de.pool.ntp.org",
.deviceId = "MainsCnt01",
.sharedSecret = "sharedSecretGanzGeheim",
.location = "Essen, DE",
.filler = { 0 }
};
t_configBlock mainConfigBlock;
t_configBlock* getConfig() {
return &mainConfigBlock;
}
void configInit() {
coloredMsg(LOG_BLUE, "cfg ci Reading configuration block from eeprom");
eepromReadConfigBlock(&mainConfigBlock);
if (mainConfigBlock.configMagic != CONFIG_MAGIC) {
coloredMsg(LOG_BLUE, "cfg ci Invalid configuration block read from eeprom");
eepromWriteConfigBlock(&defaultConfigBlock);
coloredMsg(LOG_BLUE, "cfg ci Default configuration block written to eeprom");
coloredMsg(LOG_BLUE, "cfg ci Reading configuration block from eeprom again");
eepromReadConfigBlock(&mainConfigBlock);
}
coloredMsg(LOG_BLUE, "cfg ci configMagic: %lx", mainConfigBlock.configMagic);
coloredMsg(LOG_BLUE, "cfg ci deviceName: %s", mainConfigBlock.deviceName);
coloredMsg(LOG_BLUE, "cfg ci MAC address: %02x:%02x:%02x:%02x:%02x:%02x", mainConfigBlock.macAddress[0],
mainConfigBlock.macAddress[1],
mainConfigBlock.macAddress[2],
mainConfigBlock.macAddress[3],
mainConfigBlock.macAddress[4],
mainConfigBlock.macAddress[5]);
coloredMsg(LOG_BLUE, "cfg ci ntp server: %s", mainConfigBlock.ntpServer);
coloredMsg(LOG_BLUE, "cfg ci deviceId: %s", mainConfigBlock.deviceId);
coloredMsg(LOG_BLUE, "cfg ci sharedSecret: %s", mainConfigBlock.sharedSecret);
coloredMsg(LOG_BLUE, "cfg ci location: %s", mainConfigBlock.location);
}