12 #define MODEM_STATE_OFF         0    13 #define MODEM_STATE_IDLE        1    14 #define MODEM_STATE_READY       3    15 #define MAX_GET_ATTEMPTS        2    16 #define MAX_SEND_ATTEMPTS       1//2    17 #define MAX_SEND_LENGTH         5000    18 #define MAX_RECV_LENGTH         5000    19 #define CHUNK_SIZE              800    20 #define CHUNK_STRING_LENGTH     10    22 extern uint8    modem_state;
    23 extern uint8    lock_acquired;
    24 extern uint32   feed_id;
    63 uint8 
at_write_command(
char* uart_string, 
char* expected_response, uint32 uart_timeout);
   186                         int construct_new, 
int ssl_enabled);
   209 int send_chunked_request(
char* send_str, 
char *chunk, 
int chunk_len, 
char *send_cmd, 
char *ring_cmd, 
char *term_char);
   223 int read_response(
char message[], 
char *recv_cmd, 
char *ring_cmd, uint8 get_response, 
   224                   int max_loops, 
int max_message_size);
   236 uint8 
modem_send_recv(
char* send_str, 
char* response, uint8 get_response, 
int ssl_enabled);
   253                                int port, 
char* method, 
char* connection_type,
   254                                char *extra_headers, 
int extra_len, 
char* http_protocol);
 uint8 modem_power_off()
Powers off the modem. 
Definition: modem.c:161
 
uint8 modem_check_signal_quality(int *rssi, int *fer)
Signal Quality Check. Function wrapper for AT+CSQ command. 
Definition: modem.c:320
 
uint8 modem_connect()
Establish modem connection with internet. 
Definition: modem.c:220
 
void modem_start()
Initialize modem. 
Definition: modem.c:85
 
uint8 modem_reset()
Resets the modem. 
Definition: modem.c:196
 
uint8 modem_socket_dial(char *socket_dial_str, char *endpoint, int port, int construct_new, int ssl_enabled)
Opens a remote connection via socket. 
Definition: modem.c:414
 
int modem_get_socket_status()
Socket Status. Function wrapper for AT::SS command. 
Definition: modem.c:354
 
uint8 at_write_command(char *uart_string, char *expected_response, uint32 uart_timeout)
Write AT command to cell module. 
Definition: modem.c:105
 
uint8 modem_startup(int *conn_attempts)
Startup sequence to power on the modem, start modem components and prepare for sending/receiving mess...
Definition: modem.c:35
 
int read_response(char message[], char *recv_cmd, char *ring_cmd, uint8 get_response, int max_loops, int max_message_size)
Reads a HTTP response with a chunked of fixed-length transfer encoding over multiple modem buffers...
Definition: modem.c:511
 
uint8 modem_get_meid(char *meid)
Mobile Equipment Identifier. Function wrapper for AT::MEID command. 
Definition: modem.c:278
 
uint8 modem_send_recv(char *send_str, char *response, uint8 get_response, int ssl_enabled)
TODO. 
Definition: modem.c:717
 
void uart_string_reset()
Reset modem_received_buffer, clear RX buffer, and reset string index. 
Definition: modem.c:747
 
void construct_generic_request(char *send_str, char *body, char *host, char *route, int port, char *method, char *connection_type, char *extra_headers, int extra_len, char *http_protocol)
Constructs a generic HTTP request. 
Definition: modem.c:450
 
uint8 modem_set_flow_control(uint8 param)
Set Flow Control. Set command controls the RS232 flow control behaviour. 
Definition: modem.c:370
 
uint8 modem_socket_close(int ssl_enabled)
Closes the socket on the modem. 
Definition: modem.c:438
 
uint8 modem_shutdown()
Shutdown sequence to stop/power down modem components. 
Definition: modem.c:76
 
uint8 modem_setup()
Initialize configurations for the modem. 
Definition: modem.c:210
 
int send_chunked_request(char *send_str, char *chunk, int chunk_len, char *send_cmd, char *ring_cmd, char *term_char)
Breaks request string into packets and sends them. 
Definition: modem.c:472
 
void modem_stop()
Deinitialize modem. 
Definition: modem.c:95
 
uint8 modem_set_error_reports(uint8 param)
Report Mobile Equipment Error. Set command enables/disables the report of result code. 
Definition: modem.c:380
 
uint8 modem_power_on()
Powers on the modem. 
Definition: modem.c:126
 
uint8 modem_check_network()
Network Registration Report. Function wrapper for AT+CREG command. 
Definition: modem.c:270
 
uint8 modem_disconnect()
Close modem connection to network. 
Definition: modem.c:256
 
uint8 modem_pdp_context_toggle(uint8 activate_pdp)
Context Activation. Execution command is used to activate or deactivate the specified PDP context...
Definition: modem.c:390