From d8b424f653c5076ac2deace32351e3526c7210cb Mon Sep 17 00:00:00 2001 From: Zip <76966589@qq.com> Date: Mon, 15 Apr 2019 15:01:32 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E5=A4=9A=E4=B8=AAztc1=E5=8A=A0=E5=85=A5has?= =?UTF-8?q?s=20=E5=AE=9E=E4=BD=93id=E9=87=8D=E5=A4=8D=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98=20add:=E5=A2=9E=E5=8A=A0=E5=BD=93=E5=89=8D=E5=90=AF?= =?UTF-8?q?=E5=8A=A8=E6=97=B6=E9=97=B4(=E4=BB=85app=E8=8E=B7=E5=8F=96,hass?= =?UTF-8?q?=E6=97=A0=E6=B3=95=E8=8E=B7=E5=8F=96)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TC1/main.c | 4 +- TC1/main.h | 4 +- TC1/user_mqtt_client.c | 241 ++++++++++++------ TC1/user_mqtt_client.h | 8 + TC1/user_rtc.c | 12 +- .../binary/TC1@MK3031@moc.all.bin | Bin 1959768 -> 1959768 bytes .../binary/TC1@MK3031@moc.ota.bin | Bin 532776 -> 533528 bytes 7 files changed, 180 insertions(+), 89 deletions(-) diff --git a/TC1/main.c b/TC1/main.c index 0ce1e8c..f55d5a5 100644 --- a/TC1/main.c +++ b/TC1/main.c @@ -10,8 +10,10 @@ #define os_log(format, ...) custom_log("TC1", format, ##__VA_ARGS__) -char rtc_init = 0; //sntp校时成功标志位 + +char rtc_init = 0; //sntp校时成功标志位 +uint32_t total_time=0; char strMac[16] = { 0 }; uint32_t power=0; diff --git a/TC1/main.h b/TC1/main.h index 81b6c48..ff9f90b 100644 --- a/TC1/main.h +++ b/TC1/main.h @@ -4,7 +4,7 @@ #include "mico.h" #include "MiCOKit_EXT.h" -#define VERSION "v0.8" +#define VERSION "v0.9" #define TYPE 1 #define TYPE_NAME "zTC1" @@ -65,6 +65,8 @@ typedef struct extern char rtc_init; + +extern uint32_t total_time; extern char strMac[16]; extern uint32_t power; extern system_config_t * sys_config; diff --git a/TC1/user_mqtt_client.c b/TC1/user_mqtt_client.c index 62b8e2b..a8e2f44 100644 --- a/TC1/user_mqtt_client.c +++ b/TC1/user_mqtt_client.c @@ -18,6 +18,9 @@ *

© COPYRIGHT 2014 MXCHIP Inc.

****************************************************************************** */ +#define app_log(M, ...) custom_log("APP", M, ##__VA_ARGS__) +#define mqtt_log(M, ...) custom_log("MQTT", M, ##__VA_ARGS__) + #include "main.h" #include "mico.h" #include "MQTTClient.h" @@ -26,25 +29,6 @@ #include "user_mqtt_client.h" #include "cJSON/cJSON.h" -/****************************************************** - * Macros - ******************************************************/ - -#define app_log(M, ...) custom_log("APP", M, ##__VA_ARGS__) -#define mqtt_log(M, ...) custom_log("MQTT", M, ##__VA_ARGS__) - -/****************************************************** - * Constants - ******************************************************/ - -#define MQTT_CLIENT_ID sys_config->micoSystemConfig.name -#define MQTT_CLIENT_USERNAME user_config->mqtt_user -#define MQTT_CLIENT_PASSWORD user_config->mqtt_password -#define MQTT_CLIENT_KEEPALIVE 30 -#define MQTT_CLIENT_SUB_TOPIC1 "device/ztc1/set" // loop msg -#define MQTT_CLIENT_PUB_TOPIC "device/ztc1/%s/state" -#define MQTT_CMD_TIMEOUT 5000 // 5s -#define MQTT_YIELD_TMIE 5000 // 5s //#define MQTT_CLIENT_SSL_ENABLE // ssl #define MAX_MQTT_TOPIC_SIZE (256) @@ -82,10 +66,6 @@ REyPOFdGdhBY2P1FNRy0MDr6xr+D2ZOwxs63dG1nnAnWZg7qwoLgpZ4fESPD3PkA\r\n\ #endif // MQTT_CLIENT_SSL_ENABLE -/****************************************************** - * Structures - ******************************************************/ - typedef struct { char topic[MAX_MQTT_TOPIC_SIZE]; @@ -96,26 +76,16 @@ typedef struct uint32_t datalen; } mqtt_recv_msg_t, *p_mqtt_recv_msg_t, mqtt_send_msg_t, *p_mqtt_send_msg_t; -/****************************************************** - * Function Declarations - ******************************************************/ - static void mqtt_client_thread( mico_thread_arg_t arg ); static void messageArrived( MessageData* md ); -static OSStatus mqtt_msg_publish( Client *c, const char* topic, char qos, char retained, - const unsigned char* msg, - uint32_t msg_len ); +static OSStatus mqtt_msg_publish( Client *c, const char* topic, char qos, char retained, const unsigned char* msg, uint32_t msg_len ); -OSStatus user_send_handler( void *arg ); OSStatus user_recv_handler( void *arg ); OSStatus user_mqtt_send_plug_state( char plug_id ); void user_mqtt_hass_auto( char plug_id ); void user_mqtt_hass_auto_power( void ); -/****************************************************** - * Variables Definitions - ******************************************************/ bool isconnect = false; mico_queue_t mqtt_msg_send_queue = NULL; @@ -127,17 +97,83 @@ static mico_timed_event_t mqtt_client_send_event; char topic_state[MAX_MQTT_TOPIC_SIZE]; char topic_set[MAX_MQTT_TOPIC_SIZE]; -char hass_mqtt_flag; -/****************************************************** - * Function Definitions - ******************************************************/ + +mico_timer_t timer_handle; +static uint8_t status = 0; +void user_mqtt_timer_func( void *arg ) +{ + uint8_t *buf1 = NULL; + status++; + switch ( status ) + { + case 1: + user_mqtt_hass_auto_power( ); + break; + case 2: + user_mqtt_hass_auto( 0 ); + break; + case 3: + user_mqtt_hass_auto( 1 ); + break; + case 4: + user_mqtt_hass_auto( 2 ); + break; + case 5: + user_mqtt_hass_auto( 3 ); + break; + case 6: + user_mqtt_hass_auto( 4 ); + break; + case 7: + user_mqtt_hass_auto( 5 ); + break; + case 8: + user_mqtt_hass_auto_name( 0 ); + break; + case 9: + user_mqtt_hass_auto_name( 1 ); + break; + case 10: + user_mqtt_hass_auto_name( 2 ); + break; + case 11: + user_mqtt_hass_auto_name( 3 ); + break; + case 12: + user_mqtt_hass_auto_name( 4 ); + break; + case 13: + user_mqtt_hass_auto_name( 5 ); + break; + case 14: + user_mqtt_hass_auto_power_name( ); + break; + case 15: + + buf1 = malloc( 1024 ); //idx涓1浣嶆椂闀垮害涓24 + if ( buf1 != NULL ) + { + sprintf( + buf1, + "{\"mac\":\"%s\",\"version\":null,\"plug_0\":{\"on\":null,\"setting\":{\"name\":null}},\"plug_1\":{\"on\":null,\"setting\":{\"name\":null}},\"plug_2\":{\"on\":null,\"setting\":{\"name\":null}},\"plug_3\":{\"on\":null,\"setting\":{\"name\":null}},\"plug_4\":{\"on\":null,\"setting\":{\"name\":null}},\"plug_5\":{\"on\":null,\"setting\":{\"name\":null}}}", + strMac ); + user_function_cmd_received( 0, buf1 ); + free( buf1 ); + } + break; + default: + mico_stop_timer( &timer_handle ); +// mico_deinit_timer( &timer_handle ); + break; + } +} /* Application entrance */ OSStatus user_mqtt_init( void ) { OSStatus err = kNoErr; - sprintf( topic_set, MQTT_CLIENT_SUB_TOPIC1, strMac ); + sprintf( topic_set, MQTT_CLIENT_SUB_TOPIC1 ); sprintf( topic_state, MQTT_CLIENT_PUB_TOPIC, strMac ); #ifdef MQTT_CLIENT_SSL_ENABLE @@ -165,9 +201,6 @@ OSStatus user_mqtt_init( void ) err = mico_rtos_create_worker_thread( &mqtt_client_worker_thread, MICO_APPLICATION_PRIORITY, 0x800, 5 ); require_noerr_string( err, exit, "ERROR: Unable to start the mqtt client worker thread." ); -// /* Trigger a period send event */ -// mico_rtos_register_timed_event( &mqtt_client_send_event, &mqtt_client_worker_thread, user_send_handler, 2000, NULL ); - exit: if ( kNoErr != err ) app_log("ERROR, app thread exit err: %d", err); return err; @@ -280,7 +313,6 @@ void mqtt_client_thread( mico_thread_arg_t arg ) mqtt_log("ERROR: MQTT network connection err=%d, reconnect after 3s...", rc); } - hass_mqtt_flag = PLUG_NUM; mqtt_log("MQTT network connection success!"); /* 2. init mqtt client */ @@ -293,9 +325,9 @@ void mqtt_client_thread( mico_thread_arg_t arg ) /* 3. create mqtt client connection */ connectData.willFlag = 0; connectData.MQTTVersion = 4; // 3: 3.1, 4: v3.1.1 - connectData.clientID.cstring = MQTT_CLIENT_ID; - connectData.username.cstring = MQTT_CLIENT_USERNAME; - connectData.password.cstring = MQTT_CLIENT_PASSWORD; + connectData.clientID.cstring = strMac; + connectData.username.cstring = user_config->mqtt_user; + connectData.password.cstring = user_config->mqtt_password; connectData.keepAliveInterval = MQTT_CLIENT_KEEPALIVE; connectData.cleansession = 1; @@ -310,18 +342,9 @@ void mqtt_client_thread( mico_thread_arg_t arg ) mqtt_log("MQTT client subscribe success! recv_topic=[%s].", topic_set); /*4.1 杩炴帴鎴愬姛鍚庡厛鏇存柊鍙戦佷竴娆℃暟鎹*/ isconnect = true; - uint8_t *buf1 = NULL; - buf1 = malloc( 1024 ); //idx涓1浣嶆椂闀垮害涓24 - if ( buf1 != NULL ) - { - sprintf( - buf1, - "{\"mac\":\"%s\",\"version\":null,\"plug_0\":{\"on\":null,\"setting\":{\"name\":null}},\"plug_1\":{\"on\":null,\"setting\":{\"name\":null}},\"plug_2\":{\"on\":null,\"setting\":{\"name\":null}},\"plug_3\":{\"on\":null,\"setting\":{\"name\":null}},\"plug_4\":{\"on\":null,\"setting\":{\"name\":null}},\"plug_5\":{\"on\":null,\"setting\":{\"name\":null}}}", - strMac ); - user_function_cmd_received( 0, buf1 ); - free( buf1 ); - } + mico_init_timer( &timer_handle, 150, user_mqtt_timer_func, &arg ); + mico_start_timer( &timer_handle ); /* 5. client loop for recv msg && keepalive */ while ( 1 ) { @@ -340,13 +363,6 @@ void mqtt_client_thread( mico_thread_arg_t arg ) no_mqtt_msg_exchange = false; } - if ( hass_mqtt_flag > 0 ) - { - if ( hass_mqtt_flag == PLUG_NUM ) user_mqtt_hass_auto_power( ); - hass_mqtt_flag--; - user_mqtt_hass_auto( hass_mqtt_flag ); - user_mqtt_send_plug_state( hass_mqtt_flag ); - } /* recv msg from user worker thread to be sent to server */ if ( FD_ISSET( msg_send_event_fd, &readfds ) ) { @@ -379,7 +395,15 @@ void mqtt_client_thread( mico_thread_arg_t arg ) } MQTT_reconnect: + mqtt_log("Disconnect MQTT client, and reconnect after 5s, reason: mqtt_rc = %d, err = %d", rc, err ); + + if (&timer_handle !=NULL && mico_rtos_is_timer_running( &timer_handle ) ) + { + mico_stop_timer( &timer_handle ); +// mico_deinit_timer( &timer_handle ); + } + mqtt_client_release( &c, &n ); isconnect = false; user_led_set( -1 ); @@ -512,27 +536,44 @@ void user_mqtt_hass_auto( char plug_id ) if ( send_buf != NULL && topic_buf != NULL ) { sprintf( topic_buf, "homeassistant/switch/%s/plug_%d/config", strMac, plug_id ); - sprintf( send_buf, - "{" - "\"name\":\"%s\"," - "\"state_topic\":\"homeassistant/switch/%s/plug_%d/state\"," - "\"command_topic\":\"device/ztc1/set\"," - "\"payload_on\":\"{\\\"mac\\\":\\\"%s\\\",\\\"plug_%d\\\":{\\\"on\\\":1}}\"," - "\"payload_off\":\"{\\\"mac\\\":\\\"%s\\\",\\\"plug_%d\\\":{\\\"on\\\":0}}\"" - "}", - user_config->plug[plug_id].name, - strMac, - plug_id, - strMac, - plug_id, - strMac, - plug_id ); + sprintf( send_buf, "{" + "\"name\":\"zTC1_plug%d_%s\"," + "\"stat_t\":\"homeassistant/switch/%s/plug_%d/state\"," + "\"cmd_t\":\"device/ztc1/set\"," + "\"pl_on\":\"{\\\"mac\\\":\\\"%s\\\",\\\"plug_%d\\\":{\\\"on\\\":1}}\"," + "\"pl_off\":\"{\\\"mac\\\":\\\"%s\\\",\\\"plug_%d\\\":{\\\"on\\\":0}}\"" + "}\0", + plug_id, strMac + 8, strMac, plug_id, strMac, plug_id, strMac, plug_id ); user_mqtt_send_topic( topic_buf, send_buf, 1 ); } if ( send_buf ) free( send_buf ); if ( topic_buf ) free( topic_buf ); } +void user_mqtt_hass_auto_name( char plug_id ) +{ + uint8_t *send_buf = NULL; + uint8_t *topic_buf = NULL; + send_buf = (uint8_t *) malloc( 300 ); + topic_buf = (uint8_t *) malloc( 64 ); + if ( send_buf != NULL && topic_buf != NULL ) + { + sprintf( topic_buf, "homeassistant/switch/%s/plug_%d/config", strMac, plug_id ); + sprintf( send_buf, "{" + "\"name\":\"%s\"," + "\"stat_t\":\"homeassistant/switch/%s/plug_%d/state\"," + "\"cmd_t\":\"device/ztc1/set\"," + "\"pl_on\":\"{\\\"mac\\\":\\\"%s\\\",\\\"plug_%d\\\":{\\\"on\\\":1}}\"," + "\"pl_off\":\"{\\\"mac\\\":\\\"%s\\\",\\\"plug_%d\\\":{\\\"on\\\":0}}\"" + "}\0", + user_config->plug[plug_id].name, strMac, plug_id, strMac, plug_id, strMac, plug_id ); + user_mqtt_send_topic( topic_buf, send_buf, 0 ); + } + if ( send_buf ) + free( send_buf ); + if ( topic_buf ) + free( topic_buf ); +} //hass mqtt鑷姩鍙戠幇鏁版嵁鍔熺巼鍙戦 void user_mqtt_hass_auto_power( void ) { @@ -544,19 +585,49 @@ void user_mqtt_hass_auto_power( void ) if ( send_buf != NULL && topic_buf != NULL ) { sprintf( topic_buf, "homeassistant/sensor/%s/power/config", strMac ); - sprintf( send_buf, - "{" - "\"name\":\"鍔熺巼\"," + sprintf( send_buf, "{" + "\"name\":\"zTC1_power_%s\"," + "\"state_topic\":\"homeassistant/sensor/%s/power/state\"," + "\"unit_of_measurement\":\"W\"," + "\"icon\":\"mdi:gauge\"," + "\"value_template\":\"{{ value_json.power }}\"" + "}", + strMac + 8, strMac ); + + user_mqtt_send_topic( topic_buf, send_buf, 1 ); + } + if ( send_buf ) free( send_buf ); + if ( topic_buf ) free( topic_buf ); +} +void user_mqtt_hass_auto_power_name( void ) +{ + uint8_t *send_buf = NULL; + uint8_t *topic_buf = NULL; + send_buf = (uint8_t *) malloc( 300 ); // + topic_buf = (uint8_t *) malloc( 64 ); // + if ( send_buf != NULL && topic_buf != NULL ) + { + sprintf( topic_buf, "homeassistant/sensor/%s/power/config", strMac ); + sprintf( send_buf, "{" + "\"name\":\"zTC1xxxxxx\"," "\"state_topic\":\"homeassistant/sensor/%s/power/state\"," "\"unit_of_measurement\":\"W\"," "\"icon\":\"mdi:gauge\"," "\"value_template\":\"{{ value_json.power }}\"" "}", strMac ); + send_buf[13] = 0xe5; + send_buf[14] = 0x8a; + send_buf[15] = 0x9f; + send_buf[16] = 0xe7; + send_buf[17] = 0x8e; + send_buf[18] = 0x87; user_mqtt_send_topic( topic_buf, send_buf, 1 ); } - if ( send_buf ) free( send_buf ); - if ( topic_buf ) free( topic_buf ); + if ( send_buf ) + free( send_buf ); + if ( topic_buf ) + free( topic_buf ); } void user_mqtt_hass_power( void ) @@ -569,7 +640,7 @@ void user_mqtt_hass_power( void ) if ( send_buf != NULL && topic_buf != NULL ) { sprintf( topic_buf, "homeassistant/sensor/%s/power/state", strMac ); - sprintf( send_buf, "{\"power\":\"%d.%d\"}", power/10,power%10 ); + sprintf( send_buf, "{\"power\":\"%d.%d\"}", power / 10, power % 10 ); user_mqtt_send_topic( topic_buf, send_buf, 0 ); } if ( send_buf ) free( send_buf ); diff --git a/TC1/user_mqtt_client.h b/TC1/user_mqtt_client.h index 8fef47f..05fde31 100644 --- a/TC1/user_mqtt_client.h +++ b/TC1/user_mqtt_client.h @@ -4,6 +4,11 @@ #include "mico.h" +#define MQTT_CLIENT_KEEPALIVE 30 +#define MQTT_CLIENT_SUB_TOPIC1 "device/ztc1/set" +#define MQTT_CLIENT_PUB_TOPIC "device/ztc1/%s/state" +#define MQTT_CMD_TIMEOUT 5000 // 5s +#define MQTT_YIELD_TMIE 5000 // 5s extern OSStatus user_mqtt_init(void); @@ -11,5 +16,8 @@ extern OSStatus user_mqtt_send( char *arg ); extern bool user_mqtt_isconnect(void); extern OSStatus user_mqtt_send_plug_state( char plug_id ); extern void user_mqtt_hass_auto( char plug_id ); +extern void user_mqtt_hass_auto_name(char plug_id); extern void user_mqtt_hass_power( void ); +extern void user_mqtt_hass_auto_power( void ); +extern void user_mqtt_hass_auto_power_name(void); #endif diff --git a/TC1/user_rtc.c b/TC1/user_rtc.c index 39efc45..475de98 100644 --- a/TC1/user_rtc.c +++ b/TC1/user_rtc.c @@ -117,7 +117,7 @@ void rtc_thread( mico_thread_arg_t arg ) uint32_t power_last = 0xffffffff; mico_utc_time_t utc_time; - + mico_utc_time_t utc_time_last; while ( 1 ) { //上电后连接了wifi才开始走时否则等待连接 micoWlanGetLinkStatus( &LinkStatus ); @@ -138,6 +138,14 @@ void rtc_thread( mico_thread_arg_t arg ) { mico_time_get_utc_time( &utc_time ); utc_time += 28800; + + if(utc_time_last!=utc_time) + { + utc_time_last==utc_time; + total_time++; + } + + struct tm * currentTime = localtime( (const time_t *) &utc_time ); rtc_time.sec = currentTime->tm_sec; rtc_time.min = currentTime->tm_min; @@ -255,7 +263,7 @@ void rtc_thread( mico_thread_arg_t arg ) power_buf = malloc( 128 ); // if ( power_buf != NULL ) { - sprintf( power_buf, "{\"mac\":\"%s\",\"power\":\"%d.%d\"}", strMac, power/10,power%10 ); + sprintf( power_buf, "{\"mac\":\"%s\",\"power\":\"%d.%d\",\"total_time\":%d}", strMac, power/10,power%10,total_time ); user_send( 0, power_buf ); free( power_buf ); } diff --git a/build/TC1@MK3031@moc/binary/TC1@MK3031@moc.all.bin b/build/TC1@MK3031@moc/binary/TC1@MK3031@moc.all.bin index 458d4fe6b4b20d57fb704c67d55db2263c7aa7c4..71d72e6ed7734ccb26c3802f3c672e39c62b8f51 100644 GIT binary patch delta 22219 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

-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