You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
			
		
		
		
		
			
		
			
				
	
	
		
			199 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			C
		
	
			
		
		
	
	
			199 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			C
		
	
| #ifndef _WIZNET_BLYNK_H_
 | |
| #define _WIZNET_BLYNK_H_
 | |
| 
 | |
| // Change these settings to match your need
 | |
| #define BLYNK_DEFAULT_DOMAIN "blynk-cloud.com"
 | |
| #define BLYNK_DEFAULT_PORT   80
 | |
| //SSL shouldn't used here
 | |
| //#define BLYNK_DEFAULT_PORT_SSL   8441
 | |
| 
 | |
| //***************Professional settings: BEGIN
 | |
| // Library version.
 | |
| #define BLYNK_VERSION        "0.6.0"
 | |
| 
 | |
| // Heartbeat period in seconds.
 | |
| #define BLYNK_HEARTBEAT      10
 | |
| 
 | |
| // Network timeout in milliseconds.
 | |
| #define BLYNK_TIMEOUT_MS     3000UL
 | |
| 
 | |
| // Limit the amount of outgoing commands per second.
 | |
| //#define BLYNK_MSG_LIMIT      15
 | |
| 
 | |
| // Limit the incoming command length.
 | |
| #define BLYNK_MAX_READBYTES  255
 | |
| 
 | |
| // Limit the outgoing command length.
 | |
| #define BLYNK_MAX_SENDBYTES  128
 | |
| 
 | |
| //***************Professional settings: END
 | |
| 
 | |
| //Print out BLYNK debug messages
 | |
| #define BLYNK_DEBUG
 | |
| 
 | |
| //Print out cool BLYNK ASCII LOGO
 | |
| //#define BLYNK_NO_FANCY_LOGO
 | |
| #undef BLYNK_NO_FANCY_LOGO
 | |
| 
 | |
| #ifndef BLYNK_INFO_DEVICE
 | |
| 	//#define BLYNK_INFO_DEVICE  "Arduino"
 | |
| 	//#define BLYNK_INFO_DEVICE  "WIZWiki"
 | |
| 
 | |
| #if defined (__AVR_ATmega644P__)
 | |
| 		#define BLYNK_INFO_DEVICE  "m644p_W5500"
 | |
| 	#elif defined (__AVR_ATmega1284P__)
 | |
| 		#define BLYNK_INFO_DEVICE  "m1284p_W5500"
 | |
| 	#else
 | |
| 		#define BLYNK_INFO_DEVICE  "Custom platform"
 | |
| 	#endif
 | |
| 
 | |
| #endif
 | |
| 
 | |
| #ifndef BLYNK_INFO_CPU
 | |
| 	//#define BLYNK_INFO_CPU  "ATmega1284"
 | |
| 	//#define BLYNK_INFO_CPU  "ATmega2560"
 | |
| 	//#define BLYNK_INFO_CPU  "ATmega328P"
 | |
| 	#if defined (__AVR_ATmega644P__)
 | |
| 		#define BLYNK_INFO_CPU  "ATmega644P"
 | |
| 	#elif defined (__AVR_ATmega1284P__)
 | |
| 		#define BLYNK_INFO_CPU  "ATmega1284P"
 | |
| 	#else
 | |
| 		#define BLYNK_INFO_CPU  "ATmega2560"
 | |
| 	#endif
 | |
| #endif
 | |
| 
 | |
| #ifndef BLYNK_INFO_CONNECTION
 | |
| 	#define BLYNK_INFO_CONNECTION "W5000"
 | |
| #endif
 | |
| 
 | |
| #define BLYNK_PARAM_KV(k, v) k "\0" v "\0"
 | |
| 
 | |
| // General defines
 | |
| #define STRINGIFY(x) #x
 | |
| #define TOSTRING(x) STRINGIFY(x)
 | |
| 
 | |
| // Custom defines
 | |
| #define BLYNK_DEFAULT_CLIENT_PORT		1025
 | |
| #define BLYNK_CONNECTION_TIMEOUT_MS     5000
 | |
| #define BLINK_HEADER_SIZE				5
 | |
| 
 | |
| //#ifndef BlynkProtocolDefs_h
 | |
| //#define BlynkProtocolDefs_h
 | |
| 
 | |
| //BlynkCmd values compatible && synced with BLYNK_VERSION 0.6.0
 | |
| enum BlynkCmd
 | |
| {
 | |
|     BLYNK_CMD_RESPONSE			= 0,
 | |
| 
 | |
|     //BLYNK_CMD_LOGIN				= 2, Deprecated on BLYNK_VERSION 0.6.0
 | |
|     BLYNK_CMD_LOGIN          	= 29,
 | |
|     BLYNK_CMD_PING				= 6,
 | |
|     BLYNK_CMD_TWEET				= 12,
 | |
|     BLYNK_CMD_EMAIL				= 13,
 | |
|     //BLYNK_CMD_PUSH_NOTIFICATION	= 14, Deprecated on BLYNK_VERSION 0.6.0
 | |
|     BLYNK_CMD_NOTIFY			= 14,
 | |
|     BLYNK_CMD_BRIDGE			= 15,
 | |
|     BLYNK_CMD_HARDWARE_SYNC  	= 16,
 | |
|     BLYNK_CMD_INTERNAL       	= 17,
 | |
|     BLYNK_CMD_SMS            	= 18,
 | |
|     BLYNK_CMD_PROPERTY      	= 19,
 | |
|     BLYNK_CMD_HARDWARE			= 20,
 | |
| 
 | |
|     //BLYNK_CMD_SAVE_PROF			= 3, Deprecated on BLYNK_VERSION 0.6.0
 | |
|     //BLYNK_CMD_LOAD_PROF			= 4, Deprecated on BLYNK_VERSION 0.6.0
 | |
|     //BLYNK_CMD_GET_TOKEN			= 5, Deprecated on BLYNK_VERSION 0.6.0
 | |
| 
 | |
|     BLYNK_CMD_REDIRECT       	= 41,
 | |
|     BLYNK_CMD_DEBUG_PRINT    	= 55,
 | |
|     BLYNK_CMD_EVENT_LOG      	= 64
 | |
| 
 | |
| };
 | |
| 
 | |
| //BlynkStatus values compatible && synced with BLYNK_VERSION 0.6.0
 | |
| enum BlynkStatus
 | |
| {
 | |
|     BLYNK_SUCCESS				= 200,
 | |
|     //BLYNK_TIMEOUT				= 1, Deprecated on BLYNK_VERSION 0.6.0
 | |
|     BLYNK_QUOTA_LIMIT_EXCEPTION = 1,
 | |
|     //BLYNK_BAD_FORMAT			= 2, Deprecated on BLYNK_VERSION 0.6.0
 | |
|     BLYNK_ILLEGAL_COMMAND       = 2,
 | |
|     BLYNK_NOT_REGISTERED		= 3,
 | |
|     BLYNK_ALREADY_REGISTERED	= 4,
 | |
|     //BLYNK_NO_LOGIN			= 5, Deprecated on BLYNK_VERSION 0.6.0
 | |
|     BLYNK_NOT_AUTHENTICATED     = 5,
 | |
|     BLYNK_NOT_ALLOWED			= 6,
 | |
|     //BLYNK_NO_CONNECTION		= 7, Deprecated on BLYNK_VERSION 0.6.0
 | |
|     BLYNK_DEVICE_NOT_IN_NETWORK = 7,
 | |
|     //BLYNK_NOT_SUPPORTED		= 8, Deprecated on BLYNK_VERSION 0.6.0
 | |
|     BLYNK_NO_ACTIVE_DASHBOARD   = 8,
 | |
|     BLYNK_INVALID_TOKEN			= 9,
 | |
|     //BLYNK_SERVER_ERROR		= 10, Deprecated on BLYNK_VERSION 0.6.0
 | |
|     //BLYNK_ALREADY_LOGGED_IN	= 11, Deprecated on BLYNK_VERSION 0.6.0
 | |
|     BLYNK_ILLEGAL_COMMAND_BODY  = 11,
 | |
|     BLYNK_GET_GRAPH_DATA_EXCEPTION = 12,
 | |
|     BLYNK_NO_DATA_EXCEPTION      = 17,
 | |
|     BLYNK_DEVICE_WENT_OFFLINE    = 18,
 | |
|     BLYNK_SERVER_EXCEPTION       = 19,
 | |
| 
 | |
|     BLYNK_NTF_INVALID_BODY       = 13,
 | |
|     BLYNK_NTF_NOT_AUTHORIZED     = 14,
 | |
|     BLYNK_NTF_ECXEPTION          = 15,
 | |
| 
 | |
|     BLYNK_TIMEOUT               = 16,
 | |
| 
 | |
|     BLYNK_NOT_SUPPORTED_VERSION  = 20,
 | |
|     BLYNK_ENERGY_LIMIT           = 21
 | |
| 
 | |
| };
 | |
| 
 | |
| typedef struct _BlynkHeader
 | |
| {
 | |
|     uint8_t  type;
 | |
|     uint16_t msg_id;
 | |
|     uint16_t length;
 | |
| }
 | |
| BlynkHeader;
 | |
| 
 | |
| typedef struct _BlynkParam
 | |
| {
 | |
| 	uint8_t * buff;
 | |
| 	uint16_t len;
 | |
| }
 | |
| BlynkParam;
 | |
| 
 | |
| #if defined(__AVR_ATmega644P__) || defined (__AVR_ATmega1284P__)
 | |
|     #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
 | |
|         #define htons(x) ( ((x)<<8) | (((x)>>8)&0xFF) )
 | |
|         #define htonl(x) ( ((x)<<24 & 0xFF000000UL) | \
 | |
|                            ((x)<< 8 & 0x00FF0000UL) | \
 | |
|                            ((x)>> 8 & 0x0000FF00UL) | \
 | |
|                            ((x)>>24 & 0x000000FFUL) )
 | |
|         #define ntohs(x) htons(x)
 | |
|         #define ntohl(x) htonl(x)
 | |
|     #elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
 | |
|         #define htons(x) (x)
 | |
|         #define htonl(x) (x)
 | |
|         #define ntohs(x) (x)
 | |
|         #define ntohl(x) (x)
 | |
|     #else
 | |
|         #error byte order problem
 | |
|     #endif
 | |
| #endif
 | |
| 
 | |
| #define BLYNK_NEWLINE "\r\n"
 | |
| 
 | |
| void blynk_begin(uint8_t * auth, uint8_t * dest_ip, uint16_t dest_port, uint8_t * buf, uint8_t socket);
 | |
| void blynk_run(void);
 | |
| 
 | |
| //void blynk_time_handler(void);
 | |
| uint8_t is_blynk_connection_available(void);
 | |
| /*
 | |
| void sendCmd(uint8_t cmd, uint16_t id, uint8_t * data, size_t length, uint8_t * data2, size_t length2);
 | |
| */
 | |
| void blynk_syncAll(void);
 | |
| void blynk_push_pin(uint8_t pin);
 | |
| void blynk_push_virtual_pin(uint8_t pin);
 | |
| void blynk_push_virtual_pin_msg(uint8_t pin, uint8_t * data);
 | |
| #endif
 | |
| 
 |