mirror of
https://github.com/openshwprojects/OpenBK7231T_App.git
synced 2026-02-05 16:45:49 +00:00
led driver i2c write is now a common function, misc clearup changes, also removed newline chars from function that doesnt need them (they are ignored anyway), p1
This commit is contained in:
@ -456,7 +456,7 @@ commandResult_t CMD_ClearAllHandlers(const void *context, const char *cmd, const
|
||||
c++;
|
||||
}
|
||||
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_CMD, "Fried %i handlers\n", c);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_CMD, "Fried %i handlers", c);
|
||||
g_eventHandlers = 0;
|
||||
|
||||
return CMD_RES_OK;
|
||||
|
||||
@ -187,7 +187,7 @@ float led_lerpSpeedUnitsPerSecond = 200.f;
|
||||
float led_current_value_brightness = 0;
|
||||
float led_current_value_cold_or_warm = 0;
|
||||
|
||||
void led_Save_finalRGBCW(float* finalRGBCW) {
|
||||
void LED_I2CDriver_WriteRGBCW(float* finalRGBCW) {
|
||||
#ifdef ENABLE_DRIVER_LED
|
||||
if (DRV_IsRunning("SM2135")) {
|
||||
SM2135_Write(finalRGBCW);
|
||||
@ -294,7 +294,7 @@ void LED_RunQuickColorLerp(int deltaMS) {
|
||||
}
|
||||
}
|
||||
|
||||
led_Save_finalRGBCW(led_rawLerpCurrent);
|
||||
LED_I2CDriver_WriteRGBCW(led_rawLerpCurrent);
|
||||
}
|
||||
|
||||
|
||||
@ -329,7 +329,7 @@ float led_gamma_correction (int color, float iVal) { // apply LED gamma and RGB
|
||||
|
||||
if (led_gamma_enable_channel_messages &&
|
||||
(((g_lightMode == Light_RGB) && (color < 3)) || ((g_lightMode != Light_RGB) && (color >= 3)))) {
|
||||
addLogAdv (LOG_INFO, LOG_FEATURE_CMD, "channel %i set to %.2f%%\r\n", color, oVal / 2.55);
|
||||
addLogAdv (LOG_INFO, LOG_FEATURE_CMD, "channel %i set to %.2f%%", color, oVal / 2.55);
|
||||
}
|
||||
if (oVal > 255.0f) {
|
||||
oVal = 255.0f;
|
||||
@ -470,7 +470,7 @@ void apply_smart_light() {
|
||||
}
|
||||
}
|
||||
if(CFG_HasFlag(OBK_FLAG_LED_SMOOTH_TRANSITIONS) == false) {
|
||||
led_Save_finalRGBCW(finalColors);
|
||||
LED_I2CDriver_WriteRGBCW(finalColors);
|
||||
}
|
||||
|
||||
if(CFG_HasFlag(OBK_FLAG_LED_REMEMBERLASTSTATE)) {
|
||||
@ -487,9 +487,9 @@ void apply_smart_light() {
|
||||
|
||||
void led_gamma_list (void) { // list RGB gamma settings
|
||||
led_gamma_enable_channel_messages = 1;
|
||||
addLogAdv (LOG_INFO, LOG_FEATURE_CFG, "RGB cal %f %f %f\r\n",
|
||||
addLogAdv (LOG_INFO, LOG_FEATURE_CFG, "RGB cal %f %f %f",
|
||||
g_cfg.led_corr.rgb_cal[0], g_cfg.led_corr.rgb_cal[1], g_cfg.led_corr.rgb_cal[2]);
|
||||
addLogAdv (LOG_INFO, LOG_FEATURE_CFG, "LED gamma %.2f brtMinRGB %.2f%% brtMinCW %.2f%%\r\n",
|
||||
addLogAdv (LOG_INFO, LOG_FEATURE_CFG, "LED gamma %.2f brtMinRGB %.2f%% brtMinCW %.2f%%",
|
||||
g_cfg.led_corr.led_gamma, g_cfg.led_corr.rgb_bright_min, g_cfg.led_corr.cw_bright_min);
|
||||
}
|
||||
|
||||
@ -568,7 +568,7 @@ commandResult_t led_gamma_control (const void *context, const char *cmd, const c
|
||||
|
||||
} else {
|
||||
addLogAdv (LOG_INFO, LOG_FEATURE_CFG,
|
||||
"%s sub-command NOT recognized - Use: cal [f f f], gamma <f>, brtMinRGB <f>, brtMinCW <f>, list\r\n", cmd);
|
||||
"%s sub-command NOT recognized - Use: cal [f f f], gamma <f>, brtMinRGB <f>, brtMinCW <f>, list", cmd);
|
||||
}
|
||||
|
||||
return CMD_RES_OK;
|
||||
|
||||
@ -41,7 +41,7 @@ void RepeatingEvents_CancelRepeatingEvents(int userID)
|
||||
if(ev->userID == userID) {
|
||||
// mark as finished
|
||||
ev->times = EVENT_CANCELED_TIMES;
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_CMD,"Event with id %i and cmd %s has been canceled\n",ev->userID,ev->command);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_CMD,"Event with id %i and cmd %s has been canceled",ev->userID,ev->command);
|
||||
}
|
||||
}
|
||||
|
||||
@ -67,12 +67,12 @@ void RepeatingEvents_AddRepeatingEvent(const char *command, int secondsInterval,
|
||||
// create new
|
||||
ev = malloc(sizeof(repeatingEvent_t));
|
||||
if(ev == 0) {
|
||||
addLogAdv(LOG_ERROR, LOG_FEATURE_CMD,"RepeatingEvents_OnEverySecond: failed to malloc new event\n");
|
||||
addLogAdv(LOG_ERROR, LOG_FEATURE_CMD,"RepeatingEvents_OnEverySecond: failed to malloc new event");
|
||||
return;
|
||||
}
|
||||
cmd_copy = strdup(command);
|
||||
if(cmd_copy == 0) {
|
||||
addLogAdv(LOG_ERROR, LOG_FEATURE_CMD,"RepeatingEvents_OnEverySecond: failed to malloc command text copy\n");
|
||||
addLogAdv(LOG_ERROR, LOG_FEATURE_CMD,"RepeatingEvents_OnEverySecond: failed to malloc command text copy");
|
||||
free(ev);
|
||||
return;
|
||||
}
|
||||
@ -133,7 +133,7 @@ void RepeatingEvents_OnEverySecond() {
|
||||
c_checked++;
|
||||
// debug only check
|
||||
if(cur == cur->next) {
|
||||
addLogAdv(LOG_ERROR, LOG_FEATURE_CMD,"RepeatingEvents_OnEverySecond: single linked list was broken?\n");
|
||||
addLogAdv(LOG_ERROR, LOG_FEATURE_CMD,"RepeatingEvents_OnEverySecond: single linked list was broken?");
|
||||
cur->next = 0;
|
||||
return;
|
||||
}
|
||||
@ -186,7 +186,7 @@ commandResult_t RepeatingEvents_Cmd_AddRepeatingEvent(const void *context, const
|
||||
cmdToRepeat = Tokenizer_GetArgFrom(2);
|
||||
}
|
||||
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_CMD,"addRepeatingEvent: interval %i, repeats %i, command [%s]\n",interval,times,cmdToRepeat);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_CMD,"addRepeatingEvent: interval %i, repeats %i, command [%s]",interval,times,cmdToRepeat);
|
||||
|
||||
RepeatingEvents_AddRepeatingEvent(cmdToRepeat,interval, times, userID);
|
||||
|
||||
@ -205,7 +205,7 @@ commandResult_t RepeatingEvents_Cmd_ClearRepeatingEvents(const void *context, co
|
||||
free(rem);
|
||||
c++;
|
||||
}
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_CMD, "Fried %i rep. events\n", c);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_CMD, "Fried %i rep. events", c);
|
||||
g_repeatingEvents = 0;
|
||||
return CMD_RES_OK;
|
||||
}
|
||||
@ -223,7 +223,7 @@ commandResult_t RepeatingEvents_Cmd_CancelRepeatingEvent(const void *context, co
|
||||
}
|
||||
userID = Tokenizer_GetArgInteger(0);
|
||||
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_CMD,"cancelRepeatingEvent: will cancel events with id %i\n",userID);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_CMD,"cancelRepeatingEvent: will cancel events with id %i",userID);
|
||||
|
||||
RepeatingEvents_CancelRepeatingEvents(userID);
|
||||
|
||||
|
||||
@ -19,20 +19,20 @@ int DGR_Parse(const byte *data, int len, dgrDevice_t *dev, struct sockaddr *addr
|
||||
MSG_BeginReading(&msg,data,len);
|
||||
|
||||
if(MSG_CheckAndSkip(&msg,TASMOTA_DEVICEGROUPS_HEADER,strlen(TASMOTA_DEVICEGROUPS_HEADER))==0) {
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_Parse: data chunk with len %i had bad header\n",len);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_Parse: data chunk with len %i had bad header",len);
|
||||
return 1;
|
||||
}
|
||||
if(MSG_ReadString(&msg,groupName,sizeof(groupName)) <= 0) {
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_Parse: data chunk with len %i failed to read group name\n",len);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_Parse: data chunk with len %i failed to read group name",len);
|
||||
return 1;
|
||||
}
|
||||
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_Parse: grp name %s len %d\n", groupName, strlen(groupName));
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_Parse: grp name %s len %d", groupName, strlen(groupName));
|
||||
|
||||
if(dev != 0) {
|
||||
// right now, only single group support
|
||||
if(strcmp(dev->gr.groupName,groupName)) {
|
||||
addLogAdv(LOG_EXTRADEBUG, LOG_FEATURE_DGR,"DGR ignoring message from group %s - device is in %s\n",groupName,dev->gr.groupName);
|
||||
addLogAdv(LOG_EXTRADEBUG, LOG_FEATURE_DGR,"DGR ignoring message from group %s - device is in %s",groupName,dev->gr.groupName);
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
@ -45,22 +45,22 @@ int DGR_Parse(const byte *data, int len, dgrDevice_t *dev, struct sockaddr *addr
|
||||
}
|
||||
|
||||
if(dev->cbs.checkSequence(sequence)) {
|
||||
addLogAdv(LOG_EXTRADEBUG, LOG_FEATURE_DGR,"DGR ignoring message from duplicate or older sequence %i\n",sequence);
|
||||
addLogAdv(LOG_EXTRADEBUG, LOG_FEATURE_DGR,"DGR ignoring message from duplicate or older sequence %i",sequence);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_Parse: [%s] seq 0x%04X, flags 0x%02X\n",inet_ntoa(((struct sockaddr_in *)addr)->sin_addr),sequence, flags);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_Parse: [%s] seq 0x%04X, flags 0x%02X",inet_ntoa(((struct sockaddr_in *)addr)->sin_addr),sequence, flags);
|
||||
|
||||
while(MSG_EOF(&msg)==0) {
|
||||
type = MSG_ReadByte(&msg);
|
||||
addLogAdv(LOG_DEBUG, LOG_FEATURE_DGR,"Next section - %i\n",type);
|
||||
addLogAdv(LOG_DEBUG, LOG_FEATURE_DGR,"Next section - %i",type);
|
||||
if(type == DGR_ITEM_EOL) {
|
||||
bGotEOL = 1;
|
||||
} else if(type < DGR_ITEM_MAX_8BIT) {
|
||||
vals = MSG_ReadByte(&msg);
|
||||
if(type == DGR_ITEM_BRI_POWER_ON) {
|
||||
addLogAdv(LOG_DEBUG, LOG_FEATURE_DGR,"DGR_ITEM_BRI_POWER_ON: %i\n",vals);
|
||||
addLogAdv(LOG_DEBUG, LOG_FEATURE_DGR,"DGR_ITEM_BRI_POWER_ON: %i",vals);
|
||||
// FORWARD TO PROCESSING BY API
|
||||
if(dev) {
|
||||
if(DGR_IsItemInMask(type, dev->gr.devGroupShare_In)) {
|
||||
@ -68,7 +68,7 @@ int DGR_Parse(const byte *data, int len, dgrDevice_t *dev, struct sockaddr *addr
|
||||
}
|
||||
}
|
||||
} else if(type == DGR_ITEM_LIGHT_BRI) {
|
||||
addLogAdv(LOG_DEBUG, LOG_FEATURE_DGR,"DGR_ITEM_LIGHT_BRI: %i\n",vals);
|
||||
addLogAdv(LOG_DEBUG, LOG_FEATURE_DGR,"DGR_ITEM_LIGHT_BRI: %i",vals);
|
||||
// FORWARD TO PROCESSING BY API
|
||||
if(dev) {
|
||||
if(DGR_IsItemInMask(type, dev->gr.devGroupShare_In)) {
|
||||
@ -77,7 +77,7 @@ int DGR_Parse(const byte *data, int len, dgrDevice_t *dev, struct sockaddr *addr
|
||||
}
|
||||
}
|
||||
else if (type == DGR_ITEM_LIGHT_FIXED_COLOR) {
|
||||
addLogAdv(LOG_DEBUG, LOG_FEATURE_DGR, "DGR_ITEM_LIGHT_FIXED_COLOR: %i\n", vals);
|
||||
addLogAdv(LOG_DEBUG, LOG_FEATURE_DGR, "DGR_ITEM_LIGHT_FIXED_COLOR: %i", vals);
|
||||
// FORWARD TO PROCESSING BY API
|
||||
if (dev) {
|
||||
if (DGR_IsItemInMask(type, dev->gr.devGroupShare_In)) {
|
||||
@ -120,7 +120,7 @@ int DGR_Parse(const byte *data, int len, dgrDevice_t *dev, struct sockaddr *addr
|
||||
// Gives sLen 4
|
||||
if(type == DGR_ITEM_COMMAND) {
|
||||
const char *cmd = MSG_GetStringPointerAtCurrentPosition(&msg);
|
||||
addLogAdv(LOG_DEBUG, LOG_FEATURE_DGR,"DGR_ITEM_COMMAND: %s\n",cmd);
|
||||
addLogAdv(LOG_DEBUG, LOG_FEATURE_DGR,"DGR_ITEM_COMMAND: %s",cmd);
|
||||
}
|
||||
MSG_SkipBytes(&msg,sLen);
|
||||
} else if(type == DGR_ITEM_LIGHT_CHANNELS) {
|
||||
|
||||
@ -6,22 +6,34 @@ void DRV_DGR_Dump(byte *message, int len);
|
||||
|
||||
int DGR_BeginWriting(bitMessage_t *msg, const char *groupName, unsigned short sequence, unsigned short flags) {
|
||||
if(MSG_WriteBytes(msg,TASMOTA_DEVICEGROUPS_HEADER,strlen(TASMOTA_DEVICEGROUPS_HEADER))==0) {
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_BeginWriting: no space for header\n");
|
||||
//
|
||||
// It should not happen, do not waste flash space for warning text...
|
||||
//
|
||||
//addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_BeginWriting: no space for header\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
if(MSG_WriteString(msg,groupName) <= 0) {
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_BeginWriting: no space for group name\n");
|
||||
//
|
||||
// It should not happen, do not waste flash space for warning text...
|
||||
//
|
||||
//addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_BeginWriting: no space for group name\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
if(MSG_WriteU16(msg,sequence) <= 0) {
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_BeginWriting: no space for sequence\n");
|
||||
//
|
||||
// It should not happen, do not waste flash space for warning text...
|
||||
//
|
||||
//addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_BeginWriting: no space for sequence\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
if(MSG_WriteU16(msg,flags) <= 0) {
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_BeginWriting: no space for flags\n");
|
||||
//
|
||||
// It should not happen, do not waste flash space for warning text...
|
||||
//
|
||||
//addLogAdv(LOG_INFO, LOG_FEATURE_DGR,"DGR_BeginWriting: no space for flags\n");
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
|
||||
@ -248,7 +248,7 @@ commandResult_t BL09XX_SetupEnergyStatistic(const void *context, const char *cmd
|
||||
/* process changes */
|
||||
if (enable != 0)
|
||||
{
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_ENERGYMETER, "Consumption History enabled\n");
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_ENERGYMETER, "Consumption History enabled");
|
||||
/* Enable function */
|
||||
energyCounterStatsEnable = true;
|
||||
if (energyCounterSampleCount != sample_count)
|
||||
@ -259,7 +259,7 @@ commandResult_t BL09XX_SetupEnergyStatistic(const void *context, const char *cmd
|
||||
energyCounterMinutes = NULL;
|
||||
energyCounterSampleCount = sample_count;
|
||||
}
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_ENERGYMETER, "Sample Count: %d\n", energyCounterSampleCount);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_ENERGYMETER, "Sample Count: %d", energyCounterSampleCount);
|
||||
if (energyCounterSampleInterval != sample_time)
|
||||
{
|
||||
/* change sample time */
|
||||
@ -277,13 +277,13 @@ commandResult_t BL09XX_SetupEnergyStatistic(const void *context, const char *cmd
|
||||
memset(energyCounterMinutes, 0, energyCounterSampleCount*sizeof(float));
|
||||
}
|
||||
}
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_ENERGYMETER, "Sample Interval: %d\n", energyCounterSampleInterval);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_ENERGYMETER, "Sample Interval: %d", energyCounterSampleInterval);
|
||||
|
||||
energyCounterMinutesStamp = xTaskGetTickCount();
|
||||
energyCounterMinutesIndex = 0;
|
||||
} else {
|
||||
/* Disable Consimption Nistory */
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_ENERGYMETER, "Consumption History disabled\n");
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_ENERGYMETER, "Consumption History disabled");
|
||||
energyCounterStatsEnable = false;
|
||||
if (energyCounterMinutes != NULL)
|
||||
{
|
||||
@ -317,7 +317,7 @@ commandResult_t BL09XX_SetupConsumptionThreshold(const void *context, const char
|
||||
if (threshold>200.0f)
|
||||
threshold = 200.0f;
|
||||
changeSavedThresholdEnergy = threshold;
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_ENERGYMETER, "ConsumptionThreshold: %1.1f\n", changeSavedThresholdEnergy);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_ENERGYMETER, "ConsumptionThreshold: %1.1f", changeSavedThresholdEnergy);
|
||||
|
||||
return CMD_RES_OK;
|
||||
}
|
||||
@ -475,7 +475,7 @@ void BL_ProcessUpdate(float voltage, float current, float power)
|
||||
msg = cJSON_PrintUnformatted(root);
|
||||
cJSON_Delete(root);
|
||||
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_ENERGYMETER, "JSON Printed: %d bytes\n", strlen(msg));
|
||||
// addLogAdv(LOG_INFO, LOG_FEATURE_ENERGYMETER, "JSON Printed: %d bytes", strlen(msg));
|
||||
|
||||
MQTT_PublishMain_StringString(counter_mqttNames[2], msg, 0);
|
||||
stat_updatesSent++;
|
||||
|
||||
@ -58,47 +58,6 @@ void BP1658CJ_Write(float *rgbcw) {
|
||||
Soft_I2C_Stop();
|
||||
}
|
||||
|
||||
|
||||
static commandResult_t BP1658CJ_RGBCW(const void *context, const char *cmd, const char *args, int flags){
|
||||
const char *c = args;
|
||||
float col[5] = { 0, 0, 0, 0, 0 };
|
||||
int ci;
|
||||
int val;
|
||||
|
||||
ci = 0;
|
||||
|
||||
// some people prefix colors with #
|
||||
if(c[0] == '#')
|
||||
c++;
|
||||
while (*c){
|
||||
char tmp[3];
|
||||
int r;
|
||||
tmp[0] = *(c++);
|
||||
if (!*c)
|
||||
break;
|
||||
tmp[1] = *(c++);
|
||||
tmp[2] = '\0';
|
||||
r = sscanf(tmp, "%x", &val);
|
||||
if (!r) {
|
||||
ADDLOG_ERROR(LOG_FEATURE_CMD, "BP1658CJ_RGBCW no sscanf hex result from %s", tmp);
|
||||
break;
|
||||
}
|
||||
|
||||
ADDLOG_DEBUG(LOG_FEATURE_CMD, "BP1658CJ_RGBCW found chan %d -> val255 %d (from %s)", ci, val, tmp);
|
||||
|
||||
col[ci] = val;
|
||||
|
||||
// move to next channel.
|
||||
ci ++;
|
||||
if(ci>=5)
|
||||
break;
|
||||
}
|
||||
|
||||
BP1658CJ_Write(col);
|
||||
|
||||
return CMD_RES_OK;
|
||||
}
|
||||
|
||||
// startDriver BP1658CJ
|
||||
// BP1658CJ_RGBCW FF00000000
|
||||
void BP1658CJ_Init() {
|
||||
@ -118,10 +77,10 @@ void BP1658CJ_Init() {
|
||||
//cmddetail:"descr":"Don't use it. It's for direct access of BP1658CJ driver. You don't need it because LED driver automatically calls it, so just use led_basecolor_rgb",
|
||||
//cmddetail:"fn":"BP1658CJ_RGBCW","file":"driver/drv_bp1658cj.c","requires":"",
|
||||
//cmddetail:"examples":""}
|
||||
CMD_RegisterCommand("BP1658CJ_RGBCW", "", BP1658CJ_RGBCW, NULL, NULL);
|
||||
CMD_RegisterCommand("BP1658CJ_RGBCW", "", CMD_LEDDriver_WriteRGBCW, NULL, NULL);
|
||||
//cmddetail:{"name":"BP1658CJ_Map","args":"[Ch0][Ch1][Ch2][Ch3][Ch4]",
|
||||
//cmddetail:"descr":"Maps the RGBCW values to given indices of BP1658CJ channels. This is because BP5758D channels order is not the same for some devices. Some devices are using RGBCW order and some are using GBRCW, etc, etc. Example usage: BP1658CJ_Map 0 1 2 3 4",
|
||||
//cmddetail:"fn":"BP1658CJ_Map","file":"driver/drv_bp1658cj.c","requires":"",
|
||||
//cmddetail:"examples":""}
|
||||
CMD_RegisterCommand("BP1658CJ_Map", "", CMD_LEDDriverMap, NULL, NULL);
|
||||
CMD_RegisterCommand("BP1658CJ_Map", "", CMD_LEDDriver_Map, NULL, NULL);
|
||||
}
|
||||
|
||||
@ -142,47 +142,6 @@ static commandResult_t BP5758D_Current(const void *context, const char *cmd, con
|
||||
return CMD_RES_OK;
|
||||
}
|
||||
|
||||
static commandResult_t BP5758D_RGBCW(const void *context, const char *cmd, const char *args, int flags){
|
||||
const char *c = args;
|
||||
float col[5] = { 0, 0, 0, 0, 0 };
|
||||
int ci;
|
||||
int val;
|
||||
|
||||
ci = 0;
|
||||
|
||||
// some people prefix colors with #
|
||||
if(c[0] == '#')
|
||||
c++;
|
||||
while (*c){
|
||||
char tmp[3];
|
||||
int r;
|
||||
tmp[0] = *(c++);
|
||||
if (!*c)
|
||||
break;
|
||||
tmp[1] = *(c++);
|
||||
tmp[2] = '\0';
|
||||
r = sscanf(tmp, "%x", &val);
|
||||
if (!r) {
|
||||
ADDLOG_ERROR(LOG_FEATURE_CMD, "BP5758D_RGBCW no sscanf hex result from %s", tmp);
|
||||
break;
|
||||
}
|
||||
|
||||
ADDLOG_DEBUG(LOG_FEATURE_CMD, "BP5758D_RGBCW found chan %d -> val255 %d (from %s)", ci, val, tmp);
|
||||
|
||||
col[ci] = val;
|
||||
|
||||
// move to next channel.
|
||||
ci ++;
|
||||
if(ci>=5)
|
||||
break;
|
||||
}
|
||||
|
||||
BP5758D_Write(col);
|
||||
|
||||
return CMD_RES_OK;
|
||||
}
|
||||
|
||||
|
||||
// startDriver BP5758D
|
||||
// BP5758D_RGBCW FF00000000
|
||||
//
|
||||
@ -204,12 +163,12 @@ void BP5758D_Init() {
|
||||
//cmddetail:"descr":"Don't use it. It's for direct access of BP5758D driver. You don't need it because LED driver automatically calls it, so just use led_basecolor_rgb",
|
||||
//cmddetail:"fn":"BP5758D_RGBCW","file":"driver/drv_bp5758d.c","requires":"",
|
||||
//cmddetail:"examples":""}
|
||||
CMD_RegisterCommand("BP5758D_RGBCW", "", BP5758D_RGBCW, NULL, NULL);
|
||||
CMD_RegisterCommand("BP5758D_RGBCW", "", CMD_LEDDriver_WriteRGBCW, NULL, NULL);
|
||||
//cmddetail:{"name":"BP5758D_Map","args":"[Ch0][Ch1][Ch2][Ch3][Ch4]",
|
||||
//cmddetail:"descr":"Maps the RGBCW values to given indices of BP5758D channels. This is because BP5758D channels order is not the same for some devices. Some devices are using RGBCW order and some are using GBRCW, etc, etc. Example usage: BP5758D_Map 0 1 2 3 4",
|
||||
//cmddetail:"fn":"BP5758D_Map","file":"driver/drv_bp5758d.c","requires":"",
|
||||
//cmddetail:"examples":""}
|
||||
CMD_RegisterCommand("BP5758D_Map", "", CMD_LEDDriverMap, NULL, NULL);
|
||||
CMD_RegisterCommand("BP5758D_Map", "", CMD_LEDDriver_Map, NULL, NULL);
|
||||
//cmddetail:{"name":"BP5758D_Current","args":"[MaxCurrent]",
|
||||
//cmddetail:"descr":"Sets the maximum current limit for BP5758D driver",
|
||||
//cmddetail:"fn":"BP5758D_Current","file":"driver/drv_bp5758d.c","requires":"",
|
||||
|
||||
@ -74,7 +74,7 @@ void CHT8305_Init() {
|
||||
Soft_I2C_ReadBytes(buff, 2);
|
||||
Soft_I2C_Stop();
|
||||
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_SENSOR, "DRV_CHT8304_init: ID: %02X %02X\n", buff[0], buff[1]);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_SENSOR, "DRV_CHT8304_init: ID: %02X %02X", buff[0], buff[1]);
|
||||
|
||||
|
||||
|
||||
@ -92,7 +92,7 @@ void CHT8305_OnEverySecond() {
|
||||
CHANNEL_Set(channel_temp, (int)(g_temp * 10), 0);
|
||||
CHANNEL_Set(channel_humid, (int)(g_humid), 0);
|
||||
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_SENSOR, "DRV_CHT8304_readEnv: Temperature:%fC Humidity:%f%%\n", g_temp, g_humid);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_SENSOR, "DRV_CHT8304_readEnv: Temperature:%fC Humidity:%f%%", g_temp, g_humid);
|
||||
}
|
||||
|
||||
void CHT8305_AppendInformationToHTTPIndexPage(http_request_t* request)
|
||||
|
||||
@ -87,7 +87,9 @@ bool Soft_I2C_Start(uint8_t addr);
|
||||
void Soft_I2C_Stop(void);
|
||||
uint8_t Soft_I2C_ReadByte(bool nack);
|
||||
void Soft_I2C_ReadBytes(uint8_t* buf, int numOfBytes);
|
||||
commandResult_t CMD_LEDDriverMap(const void *context, const char *cmd, const char *args, int flags);
|
||||
commandResult_t CMD_LEDDriver_Map(const void *context, const char *cmd, const char *args, int flags);
|
||||
commandResult_t CMD_LEDDriver_WriteRGBCW(const void *context, const char *cmd, const char *args, int flags);
|
||||
void LED_I2CDriver_WriteRGBCW(float* finalRGBCW);
|
||||
|
||||
|
||||
|
||||
|
||||
@ -219,11 +219,11 @@ void DRV_StopDriver(const char* name) {
|
||||
g_drivers[i].stopFunc();
|
||||
}
|
||||
g_drivers[i].bLoaded = false;
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_MAIN, "Drv %s has been stopped.\n", name);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_MAIN, "Drv %s stopped.", name);
|
||||
break;
|
||||
}
|
||||
else {
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_MAIN, "Drv %s is not running.\n", name);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_MAIN, "Drv %s not running.", name);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@ -91,7 +91,7 @@ commandResult_t NTP_SetTimeZoneOfs(const void *context, const char *cmd, const c
|
||||
else {
|
||||
g_timeOffsetSeconds = Tokenizer_GetArgInteger(0) * 60 * 60;
|
||||
}
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP,"NTP offset set, wait for next ntp packet to apply changes\n");
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP,"NTP offset set, wait for next ntp packet to apply changes");
|
||||
return CMD_RES_OK;
|
||||
}
|
||||
|
||||
@ -108,13 +108,13 @@ commandResult_t NTP_SetServer(const void *context, const char *cmd, const char *
|
||||
}
|
||||
newValue = Tokenizer_GetArg(0);
|
||||
CFG_SetNTPServer(newValue);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP, "NTP server set to %s\n", newValue);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP, "NTP server set to %s", newValue);
|
||||
return CMD_RES_OK;
|
||||
}
|
||||
|
||||
//Display settings used by the NTP driver
|
||||
commandResult_t NTP_Info(const void *context, const char *cmd, const char *args, int cmdFlags) {
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP, "Server=%s, Time offset=%d\n", CFG_GetNTPServer(), g_timeOffsetSeconds);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP, "Server=%s, Time offset=%d", CFG_GetNTPServer(), g_timeOffsetSeconds);
|
||||
return CMD_RES_OK;
|
||||
}
|
||||
|
||||
@ -136,7 +136,7 @@ void NTP_Init() {
|
||||
//cmddetail:"examples":""}
|
||||
CMD_RegisterCommand("ntp_info", "", NTP_Info, NULL, NULL);
|
||||
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP, "NTP driver initialized with server=%s, offset=%d\n", CFG_GetNTPServer(), g_timeOffsetSeconds);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP, "NTP driver initialized with server=%s, offset=%d", CFG_GetNTPServer(), g_timeOffsetSeconds);
|
||||
g_synced = false;
|
||||
}
|
||||
|
||||
@ -220,7 +220,7 @@ void NTP_SendRequest(bool bBlocking) {
|
||||
#if WINDOWS
|
||||
#else
|
||||
if(fcntl(g_ntp_socket, F_SETFL, O_NONBLOCK)) {
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP,"NTP_SendRequest: failed to make socket non-blocking!\n");
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP,"NTP_SendRequest: failed to make socket non-blocking!");
|
||||
}
|
||||
#endif
|
||||
}
|
||||
@ -249,7 +249,7 @@ void NTP_CheckForReceive() {
|
||||
#endif
|
||||
|
||||
if(recv_len < 0){
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP,"NTP_CheckForReceive: Error while receiving server's msg\n");
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP,"NTP_CheckForReceive: Error while receiving server's msg");
|
||||
return;
|
||||
}
|
||||
highWord = MAKE_WORD(ptr[40], ptr[41]);
|
||||
@ -257,13 +257,13 @@ void NTP_CheckForReceive() {
|
||||
// combine the four bytes (two words) into a long integer
|
||||
// this is NTP time (seconds since Jan 1 1900):
|
||||
secsSince1900 = highWord << 16 | lowWord;
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP,"Seconds since Jan 1 1900 = %u\n",secsSince1900);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP,"Seconds since Jan 1 1900 = %u",secsSince1900);
|
||||
|
||||
g_time = secsSince1900 - NTP_OFFSET;
|
||||
g_time += g_timeOffsetSeconds;
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP,"Unix time : %u\n",g_time);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP,"Unix time : %u",g_time);
|
||||
ltm = localtime((time_t*)&g_time);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP,"Local Time : %04d/%02d/%02d %02d:%02d:%02d\n",
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_NTP,"Local Time : %04d/%02d/%02d %02d:%02d:%02d",
|
||||
ltm->tm_year+1900, ltm->tm_mon+1, ltm->tm_mday, ltm->tm_hour, ltm->tm_min, ltm->tm_sec);
|
||||
g_synced = true;
|
||||
#if 0
|
||||
|
||||
@ -136,7 +136,7 @@ commandResult_t SHT3X_MeasurePer(const void* context, const char* cmd, const cha
|
||||
CHANNEL_Set(channel_temp, (int)(g_temp * 10), 0);
|
||||
CHANNEL_Set(channel_humid, (int)(g_humid), 0);
|
||||
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_SENSOR, "SHT3X_Measure: Period Temperature:%fC Humidity:%f%%\n", g_temp, g_humid);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_SENSOR, "SHT3X_Measure: Period Temperature:%fC Humidity:%f%%", g_temp, g_humid);
|
||||
return CMD_RES_OK;
|
||||
|
||||
}
|
||||
@ -175,7 +175,7 @@ commandResult_t SHT3X_Measure(const void* context, const char* cmd, const char*
|
||||
CHANNEL_Set(channel_temp, (int)(g_temp * 10), 0);
|
||||
CHANNEL_Set(channel_humid, (int)(g_humid), 0);
|
||||
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_SENSOR, "SHT3X_Measure: Temperature:%fC Humidity:%f%%\n", g_temp, g_humid);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_SENSOR, "SHT3X_Measure: Temperature:%fC Humidity:%f%%", g_temp, g_humid);
|
||||
return CMD_RES_OK;
|
||||
}
|
||||
// StopDriver SHT3X
|
||||
@ -205,7 +205,7 @@ void SHT3X_GetStatus()
|
||||
Soft_I2C_Start(SHT3X_I2C_ADDR | 1);
|
||||
Soft_I2C_ReadBytes(status, 2);
|
||||
Soft_I2C_Stop();
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_SENSOR, "SHT : Status : %02X %02X\n", status[0], status[1]);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_SENSOR, "SHT : Status : %02X %02X", status[0], status[1]);
|
||||
}
|
||||
commandResult_t SHT3X_GetStatusCmd(const void* context, const char* cmd, const char* args, int cmdFlags)
|
||||
{
|
||||
|
||||
@ -188,7 +188,7 @@ void SM2135_Write(float *rgbcw) {
|
||||
}
|
||||
}
|
||||
|
||||
static commandResult_t SM2135_RGBCW(const void *context, const char *cmd, const char *args, int flags){
|
||||
commandResult_t CMD_LEDDriver_WriteRGBCW(const void *context, const char *cmd, const char *args, int flags){
|
||||
const char *c = args;
|
||||
float col[5] = { 0, 0, 0, 0, 0 };
|
||||
int ci;
|
||||
@ -209,11 +209,11 @@ static commandResult_t SM2135_RGBCW(const void *context, const char *cmd, const
|
||||
tmp[2] = '\0';
|
||||
r = sscanf(tmp, "%x", &val);
|
||||
if (!r) {
|
||||
ADDLOG_ERROR(LOG_FEATURE_CMD, "SM2135_RGBCW no sscanf hex result from %s", tmp);
|
||||
ADDLOG_ERROR(LOG_FEATURE_CMD, "No sscanf hex result from %s", tmp);
|
||||
break;
|
||||
}
|
||||
|
||||
ADDLOG_DEBUG(LOG_FEATURE_CMD, "SM2135_RGBCW found chan %d -> val255 %d (from %s)", ci, val, tmp);
|
||||
ADDLOG_DEBUG(LOG_FEATURE_CMD, "Found chan %d -> val255 %d (from %s)", ci, val, tmp);
|
||||
|
||||
col[ci] = val;
|
||||
|
||||
@ -223,7 +223,7 @@ static commandResult_t SM2135_RGBCW(const void *context, const char *cmd, const
|
||||
break;
|
||||
}
|
||||
|
||||
SM2135_Write(col);
|
||||
LED_I2CDriver_WriteRGBCW(col);
|
||||
|
||||
return CMD_RES_OK;
|
||||
}
|
||||
@ -233,7 +233,7 @@ static commandResult_t SM2135_RGBCW(const void *context, const char *cmd, const
|
||||
// This is the order used on my polish Spectrum WOJ14415 bulb:
|
||||
// SM2135_Map 2 1 0 4 3
|
||||
|
||||
commandResult_t CMD_LEDDriverMap(const void *context, const char *cmd, const char *args, int flags){
|
||||
commandResult_t CMD_LEDDriver_Map(const void *context, const char *cmd, const char *args, int flags){
|
||||
|
||||
Tokenizer_TokenizeString(args,0);
|
||||
|
||||
@ -278,7 +278,7 @@ static commandResult_t SM2135_Current(const void *context, const char *cmd, cons
|
||||
}
|
||||
|
||||
// startDriver SM2135
|
||||
// SM2135_RGBCW FF00000000
|
||||
// CMD_LEDDriver_WriteRGBCW FF00000000
|
||||
void SM2135_Init() {
|
||||
|
||||
g_i2c_pin_clk = PIN_FindPinIndexForRole(IOR_SM2135_CLK,g_i2c_pin_clk);
|
||||
@ -291,12 +291,12 @@ void SM2135_Init() {
|
||||
//cmddetail:"descr":"Don't use it. It's for direct access of SM2135 driver. You don't need it because LED driver automatically calls it, so just use led_basecolor_rgb",
|
||||
//cmddetail:"fn":"SM2135_RGBCW","file":"driver/drv_sm2135.c","requires":"",
|
||||
//cmddetail:"examples":""}
|
||||
CMD_RegisterCommand("SM2135_RGBCW", "", SM2135_RGBCW, NULL, NULL);
|
||||
CMD_RegisterCommand("SM2135_RGBCW", "", CMD_LEDDriver_WriteRGBCW, NULL, NULL);
|
||||
//cmddetail:{"name":"SM2135_Map","args":"[Ch0][Ch1][Ch2][Ch3][Ch4]",
|
||||
//cmddetail:"descr":"Maps the RGBCW values to given indices of SM2135 channels. This is because SM2135 channels order is not the same for some devices. Some devices are using RGBCW order and some are using GBRCW, etc, etc. Example usage: SM2135_Map 0 1 2 3 4",
|
||||
//cmddetail:"fn":"SM2135_Map","file":"driver/drv_sm2135.c","requires":"",
|
||||
//cmddetail:"examples":""}
|
||||
CMD_RegisterCommand("SM2135_Map", "", CMD_LEDDriverMap, NULL, NULL);
|
||||
CMD_RegisterCommand("SM2135_Map", "", CMD_LEDDriver_Map, NULL, NULL);
|
||||
//cmddetail:{"name":"SM2135_Current","args":"[Value]",
|
||||
//cmddetail:"descr":"Sets the maximum current for LED driver.",
|
||||
//cmddetail:"fn":"SM2135_Current","file":"driver/drv_sm2135.c","requires":"",
|
||||
|
||||
@ -55,45 +55,6 @@ void SM2235_Write(float *rgbcw) {
|
||||
|
||||
}
|
||||
|
||||
static commandResult_t SM2235_RGBCW(const void *context, const char *cmd, const char *args, int flags){
|
||||
const char *c = args;
|
||||
float col[5] = { 0, 0, 0, 0, 0 };
|
||||
int ci;
|
||||
int val;
|
||||
|
||||
ci = 0;
|
||||
|
||||
// some people prefix colors with #
|
||||
if(c[0] == '#')
|
||||
c++;
|
||||
while (*c){
|
||||
char tmp[3];
|
||||
int r;
|
||||
tmp[0] = *(c++);
|
||||
if (!*c)
|
||||
break;
|
||||
tmp[1] = *(c++);
|
||||
tmp[2] = '\0';
|
||||
r = sscanf(tmp, "%x", &val);
|
||||
if (!r) {
|
||||
ADDLOG_ERROR(LOG_FEATURE_CMD, "SM2235_RGBCW no sscanf hex result from %s", tmp);
|
||||
break;
|
||||
}
|
||||
|
||||
ADDLOG_DEBUG(LOG_FEATURE_CMD, "SM2235_RGBCW found chan %d -> val255 %d (from %s)", ci, val, tmp);
|
||||
|
||||
col[ci] = val;
|
||||
|
||||
// move to next channel.
|
||||
ci ++;
|
||||
if(ci>=5)
|
||||
break;
|
||||
}
|
||||
|
||||
SM2235_Write(col);
|
||||
|
||||
return CMD_RES_OK;
|
||||
}
|
||||
static void SM2235_SetCurrent(int curValRGB, int curValCW) {
|
||||
//g_current_setting_rgb = curValRGB;
|
||||
//g_current_setting_cw = curValCW;
|
||||
@ -129,12 +90,12 @@ void SM2235_Init() {
|
||||
//cmddetail:"descr":"Don't use it. It's for direct access of SM2235 driver. You don't need it because LED driver automatically calls it, so just use led_basecolor_rgb",
|
||||
//cmddetail:"fn":"SM2235_RGBCW","file":"driver/drv_sm2235.c","requires":"",
|
||||
//cmddetail:"examples":""}
|
||||
CMD_RegisterCommand("SM2235_RGBCW", "", SM2235_RGBCW, NULL, NULL);
|
||||
CMD_RegisterCommand("SM2235_RGBCW", "", CMD_LEDDriver_WriteRGBCW, NULL, NULL);
|
||||
//cmddetail:{"name":"SM2235_Map","args":"[Ch0][Ch1][Ch2][Ch3][Ch4]",
|
||||
//cmddetail:"descr":"Maps the RGBCW values to given indices of SM2235 channels. This is because SM2235 channels order is not the same for some devices. Some devices are using RGBCW order and some are using GBRCW, etc, etc. Example usage: SM2235_Map 0 1 2 3 4",
|
||||
//cmddetail:"fn":"SM2235_Map","file":"driver/drv_sm2235.c","requires":"",
|
||||
//cmddetail:"examples":""}
|
||||
CMD_RegisterCommand("SM2235_Map", "", CMD_LEDDriverMap, NULL, NULL);
|
||||
CMD_RegisterCommand("SM2235_Map", "", CMD_LEDDriver_Map, NULL, NULL);
|
||||
//cmddetail:{"name":"SM2235_Current","args":"[Value]",
|
||||
//cmddetail:"descr":"Sets the maximum current for LED driver.",
|
||||
//cmddetail:"fn":"SM2235_Current","file":"driver/drv_sm2235.c","requires":"",
|
||||
|
||||
@ -236,10 +236,10 @@ commandResult_t DRV_I2C_LCD_PCF8574_GoTo_Internal(int bClear, const void *contex
|
||||
dev = DRV_I2C_FindDeviceExt(busType,address,I2CDEV_LCD_PCF8574);
|
||||
|
||||
if(dev == 0) {
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"DRV_I2C_LCD_PCF8574_GoTo: there is no device on this bus with such addr\n");
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"DRV_I2C_LCD_PCF8574_GoTo: there is no device on this bus with such addr");
|
||||
return CMD_RES_BAD_ARGUMENT;
|
||||
}
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"DRV_I2C_LCD_PCF8574_GoTo: module %s, address %i\n", i2cModuleStr, address);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"DRV_I2C_LCD_PCF8574_GoTo: module %s, address %i", i2cModuleStr, address);
|
||||
|
||||
lcd = (i2cDevice_PCF8574_t *)dev;
|
||||
|
||||
@ -282,12 +282,12 @@ commandResult_t DRV_I2C_LCD_PCF8574_Print_Internal(lcdPrintType_t type,const voi
|
||||
dev = DRV_I2C_FindDeviceExt(busType,address,I2CDEV_LCD_PCF8574);
|
||||
|
||||
if(dev == 0) {
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"DRV_I2C_LCD_PCF8574_Print: there is no device on this bus with such addr\n");
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"DRV_I2C_LCD_PCF8574_Print: there is no device on this bus with such addr");
|
||||
return CMD_RES_BAD_ARGUMENT;
|
||||
}
|
||||
lcd = (i2cDevice_PCF8574_t *)dev;
|
||||
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"DRV_I2C_LCD_PCF8574_Print: module %s, address %i\n", i2cModuleStr, address);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"DRV_I2C_LCD_PCF8574_Print: module %s, address %i", i2cModuleStr, address);
|
||||
if (type == LCD_PRINT_DEFAULT) {
|
||||
msg = Tokenizer_GetArgFrom(2);
|
||||
}
|
||||
@ -351,12 +351,12 @@ commandResult_t DRV_I2C_LCD_PCF8574_Clear(const void *context, const char *cmd,
|
||||
dev = DRV_I2C_FindDeviceExt(busType,address,I2CDEV_LCD_PCF8574);
|
||||
|
||||
if(dev == 0) {
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"DRV_I2C_LCD_PCF8574_Clear: there is no device on this bus with such addr\n");
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"DRV_I2C_LCD_PCF8574_Clear: there is no device on this bus with such addr");
|
||||
return CMD_RES_BAD_ARGUMENT;
|
||||
}
|
||||
lcd = (i2cDevice_PCF8574_t *)dev;
|
||||
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"DRV_I2C_LCD_PCF8574_Clear: module %s, address %i\n", i2cModuleStr, address);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"DRV_I2C_LCD_PCF8574_Clear: module %s, address %i", i2cModuleStr, address);
|
||||
|
||||
PCF8574_LCD_Open(lcd);
|
||||
PCF8574_LCD_Clear(lcd);
|
||||
@ -429,7 +429,7 @@ void DRV_I2C_LCD_PCF8574_RunDevice(i2cDevice_t *dev)
|
||||
delay_ms(115);
|
||||
PCF8574_LCD_Clear(lcd);
|
||||
delay_ms(115);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"Testing lcd\n" );
|
||||
//addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"Testing lcd" );
|
||||
|
||||
PCF8574_LCD_Write_String(lcd,"OpenBeken BK7231T LCD");
|
||||
delay_ms(115);
|
||||
|
||||
@ -10,14 +10,14 @@ int DRV_I2C_TC74_readTemperature(int dev_adr, int busID)
|
||||
{
|
||||
byte temp;
|
||||
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"DRV_I2C_TC74_readTemperature: called for addr %i\n", dev_adr);
|
||||
//addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"DRV_I2C_TC74_readTemperature: called for addr %i\n", dev_adr);
|
||||
|
||||
DRV_I2C_Begin(dev_adr,busID);
|
||||
DRV_I2C_Write(0,0x00);
|
||||
DRV_I2C_Read(0x00,&temp);
|
||||
DRV_I2C_Close();
|
||||
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"DRV_I2C_TC74_readTemperature: result is %i\n", temp);
|
||||
addLogAdv(LOG_INFO, LOG_FEATURE_I2C,"TC74 reads %i", temp);
|
||||
|
||||
return temp;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user