38#include "drv_digital_out.h"
39#include "drv_digital_in.h"
52#define LTEIOT_MAP_MIKROBUS( cfg, mikrobus ) \
53 cfg.tx_pin = MIKROBUS( mikrobus, MIKROBUS_TX ); \
54 cfg.rx_pin = MIKROBUS( mikrobus, MIKROBUS_RX ); \
55 cfg.pwr = MIKROBUS( mikrobus, MIKROBUS_AN ); \
56 cfg.rst = MIKROBUS( mikrobus, MIKROBUS_RST ); \
57 cfg.cts = MIKROBUS( mikrobus, MIKROBUS_CS ); \
58 cfg.ri = MIKROBUS( mikrobus, MIKROBUS_PWM ); \
59 cfg.rts = MIKROBUS( mikrobus, MIKROBUS_INT )
66#define LTEIOT_RETVAL uint8_t
69#define LTEIOT_INIT_ERROR 0xFF
76#define LTEIOT_MODULE_POWER_ON 1
77#define LTEIOT_MODULE_POWER_OFF 0
84#define LTEIOT_CMD_AT "AT"
85#define LTEIOT_CMD_ATI "ATI"
86#define LTEIOT_CMD_CGMR "AT+CGMR"
88#define LTEIOT_CMD_CFUN "AT+CFUN"
89#define LTEIOT_CMD_CREG "AT+CREG"
90#define LTEIOT_CMD_CEREG "AT+CEREG"
91#define LTEIOT_CMD_CGDCONT "AT+CGDCONT"
92#define LTEIOT_CMD_CIMI "AT+CIMI"
93#define LTEIOT_CMD_CGATT "AT+CGATT"
94#define LTEIOT_CMD_CSQ "AT+CSQ"
95#define LTEIOT_CMD_CESQ "AT+CESQ"
96#define LTEIOT_CMD_COPS "AT+COPS"
103#define DRV_RX_BUFFER_SIZE 500
104#define DRV_TX_BUFFER_SIZE 100
#define DRV_RX_BUFFER_SIZE
Definition: lteiot.h:103
#define DRV_TX_BUFFER_SIZE
Definition: lteiot.h:104
void lteiot_set_sim_apn(lteiot_t *ctx, char *sim_apn)
Set sim card APN.
void lteiot_send_text_message(lteiot_t *ctx, char *phone_number, char *message_context)
LTE IoT send text message.
void lteiot_send_cmd_check(lteiot_t *ctx, char *at_cmd_buf)
Check the sent command.
err_t lteiot_init(lteiot_t *ctx, lteiot_cfg_t *cfg)
LTE IoT initialization function.
uint8_t lteiot_get_cts(lteiot_t *ctx)
CTS Pin Get function.
void lteiot_send_cmd_parameter_check(lteiot_t *ctx, char *at_cmd_buf)
Check the command parameters.
void lteiot_cfg_setup(lteiot_cfg_t *cfg)
LTE IoT configuration object setup function.
void lteiot_send_cmd_with_parameter(lteiot_t *ctx, char *at_cmd_buf, char *param_buf)
Send command function with parameter.
err_t lteiot_generic_read(lteiot_t *ctx, char *data_buf, uint16_t max_len)
LTE IoT data reading function.
void lteiot_set_rts(lteiot_t *ctx, uint8_t state)
Sets state of the RTS pin.
void lteiot_send_cmd(lteiot_t *ctx, char *cmd)
Send command function.
void lteiot_power_on(lteiot_t *ctx)
LTE IoT module power on.
err_t lteiot_generic_write(lteiot_t *ctx, char *data_buf, uint16_t len)
LTE IoT data writing function.
void lteiot_set_rst(lteiot_t *ctx, uint8_t state)
Sets state of the RST pin.
Click configuration structure definition.
Definition: lteiot.h:142
pin_name_t rts
Definition: lteiot.h:154
uint32_t baud_rate
Definition: lteiot.h:158
pin_name_t cts
Definition: lteiot.h:152
bool uart_blocking
Definition: lteiot.h:159
pin_name_t ri
Definition: lteiot.h:153
uart_data_bits_t data_bit
Definition: lteiot.h:160
pin_name_t tx_pin
Definition: lteiot.h:146
pin_name_t pwr
Definition: lteiot.h:150
pin_name_t rx_pin
Definition: lteiot.h:145
uart_stop_bits_t stop_bit
Definition: lteiot.h:162
uart_parity_t parity_bit
Definition: lteiot.h:161
pin_name_t rst
Definition: lteiot.h:151
Click ctx object definition.
Definition: lteiot.h:117
digital_out_t pwr
Definition: lteiot.h:120
digital_out_t rts
Definition: lteiot.h:122
digital_in_t ri
Definition: lteiot.h:126
uart_t uart
Definition: lteiot.h:131
digital_in_t cts
Definition: lteiot.h:127
digital_out_t rst
Definition: lteiot.h:121