Forráskód Böngészése

Update to SDK 0.9.6_b1
The open source LWIP is broken, use espressif's liblwip.a.
Uses system_get_vdd33 instead of readvdd33.
The espressif's sdk0.9.6 beta1 (2015.02.15) release note
1、Optimize smartconfig to version v0.8;
2、Optimize AT to version 0.22.b1;
1>、Fixed bugs;
2>、Optimize the speed of transparent transmission;
3、Optimize boot to version 1.3(b3);
1>、Fix compatibility problem of dual flash ;
4、Solve problem of the large current in deep sleep;
5、Fixed problem “check mem fail”;
6、Fixed problem of UDP socket may stop listening broadcast packet after a long time running under some special router;
7、Fixed bug related to wifi_station_scan;
8、Other optimize to make the software more reliable;

HuangRui 9 éve
szülő
commit
05fe3ea9f1

+ 1 - 2
app/Makefile

@@ -24,7 +24,6 @@ SPECIAL_MKTARGETS=$(APP_MKTARGETS)
 SUBDIRS=    \
 	user	\
 	driver	\
-	lwip	\
 	json	\
 	upgrade	\
 	platform	\
@@ -70,7 +69,6 @@ endif
 COMPONENTS_eagle.app.v6 = \
 	user/libuser.a	\
 	driver/libdriver.a	\
-	lwip/liblwip.a	\
 	json/libjson.a	\
 	upgrade/libupgrade.a	\
 	platform/libplatform.a	\
@@ -101,6 +99,7 @@ LINKFLAGS_eagle.app.v6 = \
 	-ljson	\
 	-lsmartconfig	\
 	-lssl	\
+	-llwip	\
 	$(DEP_LIBS_eagle.app.v6)					\
 	-Wl,--end-group
 

+ 3 - 3
app/include/user_config.h

@@ -3,11 +3,11 @@
 
 #define NODE_VERSION_MAJOR		0U
 #define NODE_VERSION_MINOR		9U
-#define NODE_VERSION_REVISION	5U
+#define NODE_VERSION_REVISION	6U
 #define NODE_VERSION_INTERNAL   0U
 
-#define NODE_VERSION	"NodeMCU 0.9.5"
-#define BUILD_DATE	    "build 20150214"
+#define NODE_VERSION	"NodeMCU 0.9.6"
+#define BUILD_DATE	    "build 20150216"
 
 // #define DEVKIT_VERSION_0_9 1 	// define this only if you use NodeMCU devkit v0.9
 

+ 1 - 1
app/modules/node.c

@@ -95,7 +95,7 @@ static int node_chipid( lua_State* L )
 // Lua: readvdd33()
 static int node_readvdd33( lua_State* L )
 {
-  uint32_t vdd33 = readvdd33();
+  uint32_t vdd33 = system_get_vdd33();
   lua_pushinteger(L, vdd33);
   return 1;
 }

+ 407 - 392
include/espconn.h

@@ -1,392 +1,407 @@
-#ifndef __ESPCONN_H__
-#define __ESPCONN_H__
-
-#include "lwip/ip_addr.h"
-
-typedef sint8 err_t;
-
-typedef void *espconn_handle;
-typedef void (* espconn_connect_callback)(void *arg);
-typedef void (* espconn_reconnect_callback)(void *arg, sint8 err);
-
-/* Definitions for error constants. */
-
-#define ESPCONN_OK          0    /* No error, everything OK. */
-#define ESPCONN_MEM        -1    /* Out of memory error.     */
-#define ESPCONN_TIMEOUT    -3    /* Timeout.                 */
-#define ESPCONN_RTE        -4    /* Routing problem.         */
-#define ESPCONN_INPROGRESS  -5    /* Operation in progress    */
-
-#define ESPCONN_ABRT       -8    /* Connection aborted.      */
-#define ESPCONN_RST        -9    /* Connection reset.        */
-#define ESPCONN_CLSD       -10   /* Connection closed.       */
-#define ESPCONN_CONN       -11   /* Not connected.           */
-
-#define ESPCONN_ARG        -12   /* Illegal argument.        */
-#define ESPCONN_ISCONN     -15   /* Already connected.       */
-
-/** Protocol family and type of the espconn */
-enum espconn_type {
-    ESPCONN_INVALID    = 0,
-    /* ESPCONN_TCP Group */
-    ESPCONN_TCP        = 0x10,
-    /* ESPCONN_UDP Group */
-    ESPCONN_UDP        = 0x20,
-};
-
-/** Current state of the espconn. Non-TCP espconn are always in state ESPCONN_NONE! */
-enum espconn_state {
-    ESPCONN_NONE,
-    ESPCONN_WAIT,
-    ESPCONN_LISTEN,
-    ESPCONN_CONNECT,
-    ESPCONN_WRITE,
-    ESPCONN_READ,
-    ESPCONN_CLOSE
-};
-
-typedef struct _esp_tcp {
-    int remote_port;
-    int local_port;
-    uint8 local_ip[4];
-    uint8 remote_ip[4];
-    espconn_connect_callback connect_callback;
-    espconn_reconnect_callback reconnect_callback;
-    espconn_connect_callback disconnect_callback;
-} esp_tcp;
-
-typedef struct _esp_udp {
-    int remote_port;
-    int local_port;
-    uint8 local_ip[4];
-	uint8 remote_ip[4];
-} esp_udp;
-
-typedef struct _remot_info{
-	enum espconn_state state;
-	int remote_port;
-	uint8 remote_ip[4];
-}remot_info;
-
-/** A callback prototype to inform about events for a espconn */
-typedef void (* espconn_recv_callback)(void *arg, char *pdata, unsigned short len);
-typedef void (* espconn_sent_callback)(void *arg);
-
-/** A espconn descriptor */
-struct espconn {
-    /** type of the espconn (TCP, UDP) */
-    enum espconn_type type;
-    /** current state of the espconn */
-    enum espconn_state state;
-    union {
-        esp_tcp *tcp;
-        esp_udp *udp;
-    } proto;
-    /** A callback function that is informed about events for this espconn */
-    espconn_recv_callback recv_callback;
-    espconn_sent_callback sent_callback;
-    uint8 link_cnt;
-    void *reverse;
-};
-
-enum espconn_option{
-	ESPCONN_REUSEADDR = 1,
-	ESPCONN_NODELAY,
-	ESPCONN_END
-};
-
-/******************************************************************************
- * FunctionName : espconn_connect
- * Description  : The function given as the connect
- * Parameters   : espconn -- the espconn used to listen the connection
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_connect(struct espconn *espconn);
-
-/******************************************************************************
- * FunctionName : espconn_disconnect
- * Description  : disconnect with host
- * Parameters   : espconn -- the espconn used to disconnect the connection
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_disconnect(struct espconn *espconn);
-
-/******************************************************************************
- * FunctionName : espconn_delete
- * Description  : disconnect with host
- * Parameters   : espconn -- the espconn used to disconnect the connection
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_delete(struct espconn *espconn);
-
-/******************************************************************************
- * FunctionName : espconn_accept
- * Description  : The function given as the listen
- * Parameters   : espconn -- the espconn used to listen the connection
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_accept(struct espconn *espconn);
-
-/******************************************************************************
- * FunctionName : espconn_create
- * Description  : sent data for client or server
- * Parameters   : espconn -- espconn to the data transmission
- * Returns      : result
-*******************************************************************************/
-
-sint8 espconn_create(struct espconn *espconn);
-
-/******************************************************************************
- * FunctionName : espconn_tcp_get_max_con
- * Description  : get the number of simulatenously active TCP connections
- * Parameters   : none
- * Returns      : none
-*******************************************************************************/
-
-uint8 espconn_tcp_get_max_con(void);
-
-/******************************************************************************
- * FunctionName : espconn_tcp_set_max_con
- * Description  : set the number of simulatenously active TCP connections
- * Parameters   : num -- total number
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_tcp_set_max_con(uint8 num);
-
-/******************************************************************************
- * FunctionName : espconn_tcp_get_max_con_allow
- * Description  : get the count of simulatenously active connections on the server
- * Parameters   : espconn -- espconn to get the count
- * Returns      : result
-*******************************************************************************/
-
-sint8 espconn_tcp_get_max_con_allow(struct espconn *espconn);
-
-/******************************************************************************
- * FunctionName : espconn_tcp_set_max_con_allow
- * Description  : set the count of simulatenously active connections on the server
- * Parameters   : espconn -- espconn to set the count
- * 				  num -- support the connection number
- * Returns      : result
-*******************************************************************************/
-
-sint8 espconn_tcp_set_max_con_allow(struct espconn *espconn, uint8 num);
-
-/******************************************************************************
- * FunctionName : espconn_regist_time
- * Description  : used to specify the time that should be called when don't recv data
- * Parameters   : espconn -- the espconn used to the connection
- * 				  interval -- the timer when don't recv data
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_regist_time(struct espconn *espconn, uint32 interval, uint8 type_flag);
-
-/******************************************************************************
- * FunctionName : espconn_get_connection_info
- * Description  : used to specify the function that should be called when disconnect
- * Parameters   : espconn -- espconn to set the err callback
- *                discon_cb -- err callback function to call when err
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_get_connection_info(struct espconn *pespconn, remot_info **pcon_info, uint8 typeflags);
-
-/******************************************************************************
- * FunctionName : espconn_regist_sentcb
- * Description  : Used to specify the function that should be called when data
- *                has been successfully delivered to the remote host.
- * Parameters   : struct espconn *espconn -- espconn to set the sent callback
- *                espconn_sent_callback sent_cb -- sent callback function to
- *                call for this espconn when data is successfully sent
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_regist_sentcb(struct espconn *espconn, espconn_sent_callback sent_cb);
-
-/******************************************************************************
- * FunctionName : espconn_sent
- * Description  : sent data for client or server
- * Parameters   : espconn -- espconn to set for client or server
- *                psent -- data to send
- *                length -- length of data to send
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_sent(struct espconn *espconn, uint8 *psent, uint16 length);
-
-/******************************************************************************
- * FunctionName : espconn_regist_connectcb
- * Description  : used to specify the function that should be called when
- *                connects to host.
- * Parameters   : espconn -- espconn to set the connect callback
- *                connect_cb -- connected callback function to call when connected
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_regist_connectcb(struct espconn *espconn, espconn_connect_callback connect_cb);
-
-/******************************************************************************
- * FunctionName : espconn_regist_recvcb
- * Description  : used to specify the function that should be called when recv
- *                data from host.
- * Parameters   : espconn -- espconn to set the recv callback
- *                recv_cb -- recv callback function to call when recv data
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_regist_recvcb(struct espconn *espconn, espconn_recv_callback recv_cb);
-
-/******************************************************************************
- * FunctionName : espconn_regist_reconcb
- * Description  : used to specify the function that should be called when connection
- *                because of err disconnect.
- * Parameters   : espconn -- espconn to set the err callback
- *                recon_cb -- err callback function to call when err
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_regist_reconcb(struct espconn *espconn, espconn_reconnect_callback recon_cb);
-
-/******************************************************************************
- * FunctionName : espconn_regist_disconcb
- * Description  : used to specify the function that should be called when disconnect
- * Parameters   : espconn -- espconn to set the err callback
- *                discon_cb -- err callback function to call when err
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_regist_disconcb(struct espconn *espconn, espconn_connect_callback discon_cb);
-
-/******************************************************************************
- * FunctionName : espconn_port
- * Description  : access port value for client so that we don't end up bouncing
- *                all connections at the same time .
- * Parameters   : none
- * Returns      : access port value
-*******************************************************************************/
-
-uint32 espconn_port(void);
-
-/******************************************************************************
- * FunctionName : espconn_set_opt
- * Description  : access port value for client so that we don't end up bouncing
- *                all connections at the same time .
- * Parameters   : none
- * Returns      : access port value
-*******************************************************************************/
-
-sint8 espconn_set_opt(struct espconn *espconn, uint8 opt);
-
-/******************************************************************************
- * TypedefName : dns_found_callback
- * Description : Callback which is invoked when a hostname is found.
- * Parameters  : name -- pointer to the name that was looked up.
- *               ipaddr -- pointer to an ip_addr_t containing the IP address of
- *               the hostname, or NULL if the name could not be found (or on any
- *               other error).
- *               callback_arg -- a user-specified callback argument passed to
- *               dns_gethostbyname
-*******************************************************************************/
-
-typedef void (*dns_found_callback)(const char *name, ip_addr_t *ipaddr, void *callback_arg);
-
-/******************************************************************************
- * FunctionName : espconn_gethostbyname
- * Description  : Resolve a hostname (string) into an IP address.
- * Parameters   : pespconn -- espconn to resolve a hostname
- *                hostname -- the hostname that is to be queried
- *                addr -- pointer to a ip_addr_t where to store the address if 
- *                it is already cached in the dns_table (only valid if ESPCONN_OK
- *                is returned!)
- *                found -- a callback function to be called on success, failure
- *                or timeout (only if ERR_INPROGRESS is returned!)
- * Returns      : err_t return code
- *                - ESPCONN_OK if hostname is a valid IP address string or the host
- *                  name is already in the local names table.
- *                - ESPCONN_INPROGRESS enqueue a request to be sent to the DNS server
- *                  for resolution if no errors are present.
- *                - ESPCONN_ARG: dns client not initialized or invalid hostname
-*******************************************************************************/
-
-err_t espconn_gethostbyname(struct espconn *pespconn, const char *hostname, ip_addr_t *addr, dns_found_callback found);
-
-/******************************************************************************
- * FunctionName : espconn_encry_connect
- * Description  : The function given as connection
- * Parameters   : espconn -- the espconn used to connect with the host
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_secure_connect(struct espconn *espconn);
-
-/******************************************************************************
- * FunctionName : espconn_encry_disconnect
- * Description  : The function given as the disconnection
- * Parameters   : espconn -- the espconn used to disconnect with the host
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_secure_disconnect(struct espconn *espconn);
-
-/******************************************************************************
- * FunctionName : espconn_encry_sent
- * Description  : sent data for client or server
- * Parameters   : espconn -- espconn to set for client or server
- * 				  psent -- data to send
- *                length -- length of data to send
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_secure_sent(struct espconn *espconn, uint8 *psent, uint16 length);
-
-/******************************************************************************
- * FunctionName : espconn_secure_accept
- * Description  : The function given as the listen
- * Parameters   : espconn -- the espconn used to listen the connection
- * Returns      : none
-*******************************************************************************/
-
-sint8 espconn_secure_accept(struct espconn *espconn);
-
-/******************************************************************************
- * FunctionName : espconn_igmp_join
- * Description  : join a multicast group
- * Parameters   : host_ip -- the ip address of udp server
- * 				  multicast_ip -- multicast ip given by user
- * Returns      : none
-*******************************************************************************/
-sint8 espconn_igmp_join(ip_addr_t *host_ip, ip_addr_t *multicast_ip);
-
-/******************************************************************************
- * FunctionName : espconn_igmp_leave
- * Description  : leave a multicast group
- * Parameters   : host_ip -- the ip address of udp server
- * 				  multicast_ip -- multicast ip given by user
- * Returns      : none
-*******************************************************************************/
-sint8 espconn_igmp_leave(ip_addr_t *host_ip, ip_addr_t *multicast_ip);
-
-/******************************************************************************
- * FunctionName : espconn_recv_hold
- * Description  : hold tcp receive
- * Parameters   : espconn -- espconn to hold
- * Returns      : none
-*******************************************************************************/
-sint8 espconn_recv_hold(struct espconn *pespconn);
-
-/******************************************************************************
- * FunctionName : espconn_recv_unhold
- * Description  : unhold tcp receive
- * Parameters   : espconn -- espconn to unhold
- * Returns      : none
-*******************************************************************************/
-sint8 espconn_recv_unhold(struct espconn *pespconn);
-
-#endif
-
+#ifndef __ESPCONN_H__
+#define __ESPCONN_H__
+
+#include "lwip/ip_addr.h"
+
+typedef sint8 err_t;
+
+typedef void *espconn_handle;
+typedef void (* espconn_connect_callback)(void *arg);
+typedef void (* espconn_reconnect_callback)(void *arg, sint8 err);
+
+/* Definitions for error constants. */
+
+#define ESPCONN_OK          0    /* No error, everything OK. */
+#define ESPCONN_MEM        -1    /* Out of memory error.     */
+#define ESPCONN_TIMEOUT    -3    /* Timeout.                 */
+#define ESPCONN_RTE        -4    /* Routing problem.         */
+#define ESPCONN_INPROGRESS  -5    /* Operation in progress    */
+
+#define ESPCONN_ABRT       -8    /* Connection aborted.      */
+#define ESPCONN_RST        -9    /* Connection reset.        */
+#define ESPCONN_CLSD       -10   /* Connection closed.       */
+#define ESPCONN_CONN       -11   /* Not connected.           */
+
+#define ESPCONN_ARG        -12   /* Illegal argument.        */
+#define ESPCONN_ISCONN     -15   /* Already connected.       */
+
+/** Protocol family and type of the espconn */
+enum espconn_type {
+    ESPCONN_INVALID    = 0,
+    /* ESPCONN_TCP Group */
+    ESPCONN_TCP        = 0x10,
+    /* ESPCONN_UDP Group */
+    ESPCONN_UDP        = 0x20,
+};
+
+/** Current state of the espconn. Non-TCP espconn are always in state ESPCONN_NONE! */
+enum espconn_state {
+    ESPCONN_NONE,
+    ESPCONN_WAIT,
+    ESPCONN_LISTEN,
+    ESPCONN_CONNECT,
+    ESPCONN_WRITE,
+    ESPCONN_READ,
+    ESPCONN_CLOSE
+};
+
+typedef struct _esp_tcp {
+    int remote_port;
+    int local_port;
+    uint8 local_ip[4];
+    uint8 remote_ip[4];
+    espconn_connect_callback connect_callback;
+    espconn_reconnect_callback reconnect_callback;
+    espconn_connect_callback disconnect_callback;
+	espconn_connect_callback write_finish_fn;
+} esp_tcp;
+
+typedef struct _esp_udp {
+    int remote_port;
+    int local_port;
+    uint8 local_ip[4];
+	uint8 remote_ip[4];
+} esp_udp;
+
+typedef struct _remot_info{
+	enum espconn_state state;
+	int remote_port;
+	uint8 remote_ip[4];
+}remot_info;
+
+/** A callback prototype to inform about events for a espconn */
+typedef void (* espconn_recv_callback)(void *arg, char *pdata, unsigned short len);
+typedef void (* espconn_sent_callback)(void *arg);
+
+/** A espconn descriptor */
+struct espconn {
+    /** type of the espconn (TCP, UDP) */
+    enum espconn_type type;
+    /** current state of the espconn */
+    enum espconn_state state;
+    union {
+        esp_tcp *tcp;
+        esp_udp *udp;
+    } proto;
+    /** A callback function that is informed about events for this espconn */
+    espconn_recv_callback recv_callback;
+    espconn_sent_callback sent_callback;
+    uint8 link_cnt;
+    void *reverse;
+};
+
+enum espconn_option{
+	ESPCONN_START = 0x00,
+	ESPCONN_REUSEADDR = 0x01,
+	ESPCONN_NODELAY = 0x02,
+	ESPCONN_COPY = 0x04,
+	ESPCONN_END
+};
+
+/******************************************************************************
+ * FunctionName : espconn_connect
+ * Description  : The function given as the connect
+ * Parameters   : espconn -- the espconn used to listen the connection
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_connect(struct espconn *espconn);
+
+/******************************************************************************
+ * FunctionName : espconn_disconnect
+ * Description  : disconnect with host
+ * Parameters   : espconn -- the espconn used to disconnect the connection
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_disconnect(struct espconn *espconn);
+
+/******************************************************************************
+ * FunctionName : espconn_delete
+ * Description  : disconnect with host
+ * Parameters   : espconn -- the espconn used to disconnect the connection
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_delete(struct espconn *espconn);
+
+/******************************************************************************
+ * FunctionName : espconn_accept
+ * Description  : The function given as the listen
+ * Parameters   : espconn -- the espconn used to listen the connection
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_accept(struct espconn *espconn);
+
+/******************************************************************************
+ * FunctionName : espconn_create
+ * Description  : sent data for client or server
+ * Parameters   : espconn -- espconn to the data transmission
+ * Returns      : result
+*******************************************************************************/
+
+sint8 espconn_create(struct espconn *espconn);
+
+/******************************************************************************
+ * FunctionName : espconn_tcp_get_max_con
+ * Description  : get the number of simulatenously active TCP connections
+ * Parameters   : none
+ * Returns      : none
+*******************************************************************************/
+
+uint8 espconn_tcp_get_max_con(void);
+
+/******************************************************************************
+ * FunctionName : espconn_tcp_set_max_con
+ * Description  : set the number of simulatenously active TCP connections
+ * Parameters   : num -- total number
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_tcp_set_max_con(uint8 num);
+
+/******************************************************************************
+ * FunctionName : espconn_tcp_get_max_con_allow
+ * Description  : get the count of simulatenously active connections on the server
+ * Parameters   : espconn -- espconn to get the count
+ * Returns      : result
+*******************************************************************************/
+
+sint8 espconn_tcp_get_max_con_allow(struct espconn *espconn);
+
+/******************************************************************************
+ * FunctionName : espconn_tcp_set_max_con_allow
+ * Description  : set the count of simulatenously active connections on the server
+ * Parameters   : espconn -- espconn to set the count
+ * 				  num -- support the connection number
+ * Returns      : result
+*******************************************************************************/
+
+sint8 espconn_tcp_set_max_con_allow(struct espconn *espconn, uint8 num);
+
+/******************************************************************************
+ * FunctionName : espconn_regist_time
+ * Description  : used to specify the time that should be called when don't recv data
+ * Parameters   : espconn -- the espconn used to the connection
+ * 				  interval -- the timer when don't recv data
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_regist_time(struct espconn *espconn, uint32 interval, uint8 type_flag);
+
+/******************************************************************************
+ * FunctionName : espconn_get_connection_info
+ * Description  : used to specify the function that should be called when disconnect
+ * Parameters   : espconn -- espconn to set the err callback
+ *                discon_cb -- err callback function to call when err
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_get_connection_info(struct espconn *pespconn, remot_info **pcon_info, uint8 typeflags);
+
+/******************************************************************************
+ * FunctionName : espconn_regist_sentcb
+ * Description  : Used to specify the function that should be called when data
+ *                has been successfully delivered to the remote host.
+ * Parameters   : struct espconn *espconn -- espconn to set the sent callback
+ *                espconn_sent_callback sent_cb -- sent callback function to
+ *                call for this espconn when data is successfully sent
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_regist_sentcb(struct espconn *espconn, espconn_sent_callback sent_cb);
+
+/******************************************************************************
+ * FunctionName : espconn_regist_sentcb
+ * Description  : Used to specify the function that should be called when data
+ *                has been successfully delivered to the remote host.
+ * Parameters   : espconn -- espconn to set the sent callback
+ *                sent_cb -- sent callback function to call for this espconn
+ *                when data is successfully sent
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_regist_write_finish(struct espconn *espconn, espconn_connect_callback write_finish_fn);
+
+/******************************************************************************
+ * FunctionName : espconn_sent
+ * Description  : sent data for client or server
+ * Parameters   : espconn -- espconn to set for client or server
+ *                psent -- data to send
+ *                length -- length of data to send
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_sent(struct espconn *espconn, uint8 *psent, uint16 length);
+
+/******************************************************************************
+ * FunctionName : espconn_regist_connectcb
+ * Description  : used to specify the function that should be called when
+ *                connects to host.
+ * Parameters   : espconn -- espconn to set the connect callback
+ *                connect_cb -- connected callback function to call when connected
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_regist_connectcb(struct espconn *espconn, espconn_connect_callback connect_cb);
+
+/******************************************************************************
+ * FunctionName : espconn_regist_recvcb
+ * Description  : used to specify the function that should be called when recv
+ *                data from host.
+ * Parameters   : espconn -- espconn to set the recv callback
+ *                recv_cb -- recv callback function to call when recv data
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_regist_recvcb(struct espconn *espconn, espconn_recv_callback recv_cb);
+
+/******************************************************************************
+ * FunctionName : espconn_regist_reconcb
+ * Description  : used to specify the function that should be called when connection
+ *                because of err disconnect.
+ * Parameters   : espconn -- espconn to set the err callback
+ *                recon_cb -- err callback function to call when err
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_regist_reconcb(struct espconn *espconn, espconn_reconnect_callback recon_cb);
+
+/******************************************************************************
+ * FunctionName : espconn_regist_disconcb
+ * Description  : used to specify the function that should be called when disconnect
+ * Parameters   : espconn -- espconn to set the err callback
+ *                discon_cb -- err callback function to call when err
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_regist_disconcb(struct espconn *espconn, espconn_connect_callback discon_cb);
+
+/******************************************************************************
+ * FunctionName : espconn_port
+ * Description  : access port value for client so that we don't end up bouncing
+ *                all connections at the same time .
+ * Parameters   : none
+ * Returns      : access port value
+*******************************************************************************/
+
+uint32 espconn_port(void);
+
+/******************************************************************************
+ * FunctionName : espconn_set_opt
+ * Description  : access port value for client so that we don't end up bouncing
+ *                all connections at the same time .
+ * Parameters   : none
+ * Returns      : access port value
+*******************************************************************************/
+
+sint8 espconn_set_opt(struct espconn *espconn, uint8 opt);
+
+/******************************************************************************
+ * TypedefName : dns_found_callback
+ * Description : Callback which is invoked when a hostname is found.
+ * Parameters  : name -- pointer to the name that was looked up.
+ *               ipaddr -- pointer to an ip_addr_t containing the IP address of
+ *               the hostname, or NULL if the name could not be found (or on any
+ *               other error).
+ *               callback_arg -- a user-specified callback argument passed to
+ *               dns_gethostbyname
+*******************************************************************************/
+
+typedef void (*dns_found_callback)(const char *name, ip_addr_t *ipaddr, void *callback_arg);
+
+/******************************************************************************
+ * FunctionName : espconn_gethostbyname
+ * Description  : Resolve a hostname (string) into an IP address.
+ * Parameters   : pespconn -- espconn to resolve a hostname
+ *                hostname -- the hostname that is to be queried
+ *                addr -- pointer to a ip_addr_t where to store the address if 
+ *                it is already cached in the dns_table (only valid if ESPCONN_OK
+ *                is returned!)
+ *                found -- a callback function to be called on success, failure
+ *                or timeout (only if ERR_INPROGRESS is returned!)
+ * Returns      : err_t return code
+ *                - ESPCONN_OK if hostname is a valid IP address string or the host
+ *                  name is already in the local names table.
+ *                - ESPCONN_INPROGRESS enqueue a request to be sent to the DNS server
+ *                  for resolution if no errors are present.
+ *                - ESPCONN_ARG: dns client not initialized or invalid hostname
+*******************************************************************************/
+
+err_t espconn_gethostbyname(struct espconn *pespconn, const char *hostname, ip_addr_t *addr, dns_found_callback found);
+
+/******************************************************************************
+ * FunctionName : espconn_encry_connect
+ * Description  : The function given as connection
+ * Parameters   : espconn -- the espconn used to connect with the host
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_secure_connect(struct espconn *espconn);
+
+/******************************************************************************
+ * FunctionName : espconn_encry_disconnect
+ * Description  : The function given as the disconnection
+ * Parameters   : espconn -- the espconn used to disconnect with the host
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_secure_disconnect(struct espconn *espconn);
+
+/******************************************************************************
+ * FunctionName : espconn_encry_sent
+ * Description  : sent data for client or server
+ * Parameters   : espconn -- espconn to set for client or server
+ * 				  psent -- data to send
+ *                length -- length of data to send
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_secure_sent(struct espconn *espconn, uint8 *psent, uint16 length);
+
+/******************************************************************************
+ * FunctionName : espconn_secure_accept
+ * Description  : The function given as the listen
+ * Parameters   : espconn -- the espconn used to listen the connection
+ * Returns      : none
+*******************************************************************************/
+
+sint8 espconn_secure_accept(struct espconn *espconn);
+
+/******************************************************************************
+ * FunctionName : espconn_igmp_join
+ * Description  : join a multicast group
+ * Parameters   : host_ip -- the ip address of udp server
+ * 				  multicast_ip -- multicast ip given by user
+ * Returns      : none
+*******************************************************************************/
+sint8 espconn_igmp_join(ip_addr_t *host_ip, ip_addr_t *multicast_ip);
+
+/******************************************************************************
+ * FunctionName : espconn_igmp_leave
+ * Description  : leave a multicast group
+ * Parameters   : host_ip -- the ip address of udp server
+ * 				  multicast_ip -- multicast ip given by user
+ * Returns      : none
+*******************************************************************************/
+sint8 espconn_igmp_leave(ip_addr_t *host_ip, ip_addr_t *multicast_ip);
+
+/******************************************************************************
+ * FunctionName : espconn_recv_hold
+ * Description  : hold tcp receive
+ * Parameters   : espconn -- espconn to hold
+ * Returns      : none
+*******************************************************************************/
+sint8 espconn_recv_hold(struct espconn *pespconn);
+
+/******************************************************************************
+ * FunctionName : espconn_recv_unhold
+ * Description  : unhold tcp receive
+ * Parameters   : espconn -- espconn to unhold
+ * Returns      : none
+*******************************************************************************/
+sint8 espconn_recv_unhold(struct espconn *pespconn);
+
+#endif
+

+ 1 - 0
include/user_interface.h

@@ -89,6 +89,7 @@ bool system_rtc_mem_write(uint8 des_addr, const void *src_addr, uint16 save_size
 void system_uart_swap(void);
 
 uint16 system_adc_read(void);
+uint16 system_get_vdd33(void);
 
 const char *system_get_sdk_version(void);
 

+ 0 - 1
ld/eagle.app.v6.ld

@@ -71,7 +71,6 @@ SECTIONS
     _irom0_text_start = ABSOLUTE(.);
     *(.irom0.literal .irom.literal .irom.text.literal .irom0.text .irom.text)
     *(.literal.* .text.*)
-    *(.rodata2.text)
     _irom0_text_end = ABSOLUTE(.);
     _flash_used_end = ABSOLUTE(.);
   } >irom0_0_seg :irom0_0_phdr

BIN
lib/libat.a


BIN
lib/libjson.a


BIN
lib/liblwip.a


BIN
lib/libmain.a


BIN
lib/libnet80211.a


BIN
lib/libphy.a


BIN
lib/libpp.a


BIN
lib/libsmartconfig.a


BIN
lib/libssl.a


BIN
lib/libupgrade.a


BIN
lib/libwpa.a