blynk & neopixelring & w7500

Fork of WIZwiki-7500_Blynk by IOP

Committer:
vshymanskyy
Date:
Sat May 07 08:02:50 2016 +0000
Revision:
0:58b20b438383
Child:
7:8879692d4e6c
First commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
vshymanskyy 0:58b20b438383 1 /**
vshymanskyy 0:58b20b438383 2 * @file BlynkProtocolDefs.h
vshymanskyy 0:58b20b438383 3 * @author Volodymyr Shymanskyy
vshymanskyy 0:58b20b438383 4 * @license This project is released under the MIT License (MIT)
vshymanskyy 0:58b20b438383 5 * @copyright Copyright (c) 2015 Volodymyr Shymanskyy
vshymanskyy 0:58b20b438383 6 * @date Jan 2015
vshymanskyy 0:58b20b438383 7 * @brief Blynk protocol definitions
vshymanskyy 0:58b20b438383 8 *
vshymanskyy 0:58b20b438383 9 */
vshymanskyy 0:58b20b438383 10
vshymanskyy 0:58b20b438383 11 #ifndef BlynkProtocolDefs_h
vshymanskyy 0:58b20b438383 12 #define BlynkProtocolDefs_h
vshymanskyy 0:58b20b438383 13
vshymanskyy 0:58b20b438383 14 enum BlynkCmd
vshymanskyy 0:58b20b438383 15 {
vshymanskyy 0:58b20b438383 16 BLYNK_CMD_RESPONSE = 0,
vshymanskyy 0:58b20b438383 17 BLYNK_CMD_REGISTER = 1,
vshymanskyy 0:58b20b438383 18 BLYNK_CMD_LOGIN = 2,
vshymanskyy 0:58b20b438383 19 BLYNK_CMD_SAVE_PROF = 3,
vshymanskyy 0:58b20b438383 20 BLYNK_CMD_LOAD_PROF = 4,
vshymanskyy 0:58b20b438383 21 BLYNK_CMD_GET_TOKEN = 5,
vshymanskyy 0:58b20b438383 22 BLYNK_CMD_PING = 6,
vshymanskyy 0:58b20b438383 23 BLYNK_CMD_ACTIVATE = 7,
vshymanskyy 0:58b20b438383 24 BLYNK_CMD_DEACTIVATE = 8,
vshymanskyy 0:58b20b438383 25 BLYNK_CMD_REFRESH = 9,
vshymanskyy 0:58b20b438383 26 BLYNK_CMD_GET_GRAPH_DATA = 10,
vshymanskyy 0:58b20b438383 27 BLYNK_CMD_GET_GRAPH_DATA_RESPONSE = 11,
vshymanskyy 0:58b20b438383 28
vshymanskyy 0:58b20b438383 29 BLYNK_CMD_TWEET = 12,
vshymanskyy 0:58b20b438383 30 BLYNK_CMD_EMAIL = 13,
vshymanskyy 0:58b20b438383 31 BLYNK_CMD_NOTIFY = 14,
vshymanskyy 0:58b20b438383 32 BLYNK_CMD_BRIDGE = 15,
vshymanskyy 0:58b20b438383 33 BLYNK_CMD_HARDWARE_SYNC = 16,
vshymanskyy 0:58b20b438383 34 BLYNK_CMD_HARDWARE_INFO = 17,
vshymanskyy 0:58b20b438383 35 BLYNK_CMD_SMS = 18,
vshymanskyy 0:58b20b438383 36 BLYNK_CMD_HARDWARE = 20,
vshymanskyy 0:58b20b438383 37
vshymanskyy 0:58b20b438383 38 BLYNK_CMD_CREATE_DASH = 21,
vshymanskyy 0:58b20b438383 39 BLYNK_CMD_SAVE_DASH = 22,
vshymanskyy 0:58b20b438383 40 BLYNK_CMD_DELETE_DASH = 23,
vshymanskyy 0:58b20b438383 41 BLYNK_CMD_LOAD_PROF_GZ = 24,
vshymanskyy 0:58b20b438383 42 BLYNK_CMD_SYNC = 25,
vshymanskyy 0:58b20b438383 43 BLYNK_CMD_SHARING = 26,
vshymanskyy 0:58b20b438383 44 BLYNK_CMD_ADD_PUSH_TOKEN = 27,
vshymanskyy 0:58b20b438383 45
vshymanskyy 0:58b20b438383 46 //sharing commands
vshymanskyy 0:58b20b438383 47 BLYNK_CMD_GET_SHARED_DASH = 29,
vshymanskyy 0:58b20b438383 48 BLYNK_CMD_GET_SHARE_TOKEN = 30,
vshymanskyy 0:58b20b438383 49 BLYNK_CMD_REFRESH_SHARE_TOKEN = 31,
vshymanskyy 0:58b20b438383 50 BLYNK_CMD_SHARE_LOGIN = 32
vshymanskyy 0:58b20b438383 51 };
vshymanskyy 0:58b20b438383 52
vshymanskyy 0:58b20b438383 53 enum BlynkStatus
vshymanskyy 0:58b20b438383 54 {
vshymanskyy 0:58b20b438383 55 BLYNK_SUCCESS = 200,
vshymanskyy 0:58b20b438383 56 BLYNK_QUOTA_LIMIT_EXCEPTION = 1,
vshymanskyy 0:58b20b438383 57 BLYNK_ILLEGAL_COMMAND = 2,
vshymanskyy 0:58b20b438383 58 BLYNK_NOT_REGISTERED = 3,
vshymanskyy 0:58b20b438383 59 BLYNK_ALREADY_REGISTERED = 4,
vshymanskyy 0:58b20b438383 60 BLYNK_NOT_AUTHENTICATED = 5,
vshymanskyy 0:58b20b438383 61 BLYNK_NOT_ALLOWED = 6,
vshymanskyy 0:58b20b438383 62 BLYNK_NO_CONNECTION = 7,
vshymanskyy 0:58b20b438383 63 BLYNK_NO_ACTIVE_DASHBOARD = 8,
vshymanskyy 0:58b20b438383 64 BLYNK_INVALID_TOKEN = 9,
vshymanskyy 0:58b20b438383 65 BLYNK_DEVICE_WENT_OFFLINE = 10,
vshymanskyy 0:58b20b438383 66 BLYNK_ALREADY_LOGGED_IN = 11,
vshymanskyy 0:58b20b438383 67 BLYNK_GET_GRAPH_DATA_EXCEPTION = 12,
vshymanskyy 0:58b20b438383 68 BLYNK_NO_DATA_EXCEPTION = 17,
vshymanskyy 0:58b20b438383 69 BLYNK_DEVICE_WENT_OFFLINE_2 = 18,
vshymanskyy 0:58b20b438383 70 BLYNK_SERVER_EXCEPTION = 19,
vshymanskyy 0:58b20b438383 71
vshymanskyy 0:58b20b438383 72 BLYNK_NTF_INVALID_BODY = 13,
vshymanskyy 0:58b20b438383 73 BLYNK_NTF_NOT_AUTHORIZED = 14,
vshymanskyy 0:58b20b438383 74 BLYNK_NTF_ECXEPTION = 15,
vshymanskyy 0:58b20b438383 75
vshymanskyy 0:58b20b438383 76 BLYNK_TIMEOUT = 16
vshymanskyy 0:58b20b438383 77 };
vshymanskyy 0:58b20b438383 78
vshymanskyy 0:58b20b438383 79 struct BlynkHeader
vshymanskyy 0:58b20b438383 80 {
vshymanskyy 0:58b20b438383 81 uint8_t type;
vshymanskyy 0:58b20b438383 82 uint16_t msg_id;
vshymanskyy 0:58b20b438383 83 uint16_t length;
vshymanskyy 0:58b20b438383 84 }
vshymanskyy 0:58b20b438383 85 BLYNK_ATTR_PACKED;
vshymanskyy 0:58b20b438383 86
vshymanskyy 0:58b20b438383 87 #if defined(ARDUINO) || defined(ESP8266) || defined(PARTICLE) || defined(MBED_LIBRARY_VERSION)
vshymanskyy 0:58b20b438383 88 #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
vshymanskyy 0:58b20b438383 89 #define htons(x) ( ((x)<<8) | (((x)>>8)&0xFF) )
vshymanskyy 0:58b20b438383 90 #define htonl(x) ( ((x)<<24 & 0xFF000000UL) | \
vshymanskyy 0:58b20b438383 91 ((x)<< 8 & 0x00FF0000UL) | \
vshymanskyy 0:58b20b438383 92 ((x)>> 8 & 0x0000FF00UL) | \
vshymanskyy 0:58b20b438383 93 ((x)>>24 & 0x000000FFUL) )
vshymanskyy 0:58b20b438383 94 #define ntohs(x) htons(x)
vshymanskyy 0:58b20b438383 95 #define ntohl(x) htonl(x)
vshymanskyy 0:58b20b438383 96 #elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
vshymanskyy 0:58b20b438383 97 #define htons(x) (x)
vshymanskyy 0:58b20b438383 98 #define htonl(x) (x)
vshymanskyy 0:58b20b438383 99 #define ntohs(x) (x)
vshymanskyy 0:58b20b438383 100 #define ntohl(x) (x)
vshymanskyy 0:58b20b438383 101 #else
vshymanskyy 0:58b20b438383 102 #error byte order problem
vshymanskyy 0:58b20b438383 103 #endif
vshymanskyy 0:58b20b438383 104 #endif
vshymanskyy 0:58b20b438383 105
vshymanskyy 0:58b20b438383 106 #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
vshymanskyy 0:58b20b438383 107 #define BLYNK_HW_PM (('p' << 0) | ('m' << 8))
vshymanskyy 0:58b20b438383 108 #define BLYNK_HW_DW (('d' << 0) | ('w' << 8))
vshymanskyy 0:58b20b438383 109 #define BLYNK_HW_DR (('d' << 0) | ('r' << 8))
vshymanskyy 0:58b20b438383 110 #define BLYNK_HW_AW (('a' << 0) | ('w' << 8))
vshymanskyy 0:58b20b438383 111 #define BLYNK_HW_AR (('a' << 0) | ('r' << 8))
vshymanskyy 0:58b20b438383 112 #define BLYNK_HW_VW (('v' << 0) | ('w' << 8))
vshymanskyy 0:58b20b438383 113 #define BLYNK_HW_VR (('v' << 0) | ('r' << 8))
vshymanskyy 0:58b20b438383 114 #elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
vshymanskyy 0:58b20b438383 115 #define BLYNK_HW_PM (('p' << 8) | ('m' << 0))
vshymanskyy 0:58b20b438383 116 #define BLYNK_HW_DW (('d' << 8) | ('w' << 0))
vshymanskyy 0:58b20b438383 117 #define BLYNK_HW_DR (('d' << 8) | ('r' << 0))
vshymanskyy 0:58b20b438383 118 #define BLYNK_HW_AW (('a' << 8) | ('w' << 0))
vshymanskyy 0:58b20b438383 119 #define BLYNK_HW_AR (('a' << 8) | ('r' << 0))
vshymanskyy 0:58b20b438383 120 #define BLYNK_HW_VW (('v' << 8) | ('w' << 0))
vshymanskyy 0:58b20b438383 121 #define BLYNK_HW_VR (('v' << 8) | ('r' << 0))
vshymanskyy 0:58b20b438383 122 #else
vshymanskyy 0:58b20b438383 123 #error byte order problem
vshymanskyy 0:58b20b438383 124 #endif
vshymanskyy 0:58b20b438383 125
vshymanskyy 0:58b20b438383 126 #endif