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