Skip to content

Commit 5a51454

Browse files
committed
Add Artemis support. Whitespace fix.
1 parent 87518be commit 5a51454

File tree

1 file changed

+98
-79
lines changed

1 file changed

+98
-79
lines changed

src/SparkFun_LTE_Shield_Arduino_Library.h

Lines changed: 98 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -36,15 +36,18 @@
3636
#include "WProgram.h"
3737
#endif
3838

39-
40-
#ifdef ARDUINO_ARCH_AVR // Arduino AVR boards (Uno, Pro Micro, etc.)
39+
#ifdef ARDUINO_ARCH_AVR // Arduino AVR boards (Uno, Pro Micro, etc.)
4140
#define LTE_SHIELD_SOFTWARE_SERIAL_ENABLED // Enable software serial
4241
#endif
4342

44-
#ifdef ARDUINO_ARCH_SAMD // Arduino SAMD boards (SAMD21, etc.)
43+
#ifdef ARDUINO_ARCH_SAMD // Arduino SAMD boards (SAMD21, etc.)
4544
#define LTE_SHIELD_SOFTWARE_SERIAL_ENABLEDx // Disable software serial
4645
#endif
4746

47+
#ifdef ARDUINO_ARCH_APOLLO // Arduino Apollo boards (Artemis module, RedBoard Artemis, etc)
48+
#define LTE_SHIELD_SOFTWARE_SERIAL_ENABLED // Enable software serial
49+
#endif
50+
4851
#ifdef LTE_SHIELD_SOFTWARE_SERIAL_ENABLED
4952
#include <SoftwareSerial.h>
5053
#endif
@@ -54,7 +57,8 @@
5457
#define LTE_SHIELD_POWER_PIN 5
5558
#define LTE_SHIELD_RESET_PIN 6
5659

57-
typedef enum {
60+
typedef enum
61+
{
5862
MNO_INVALID = -1,
5963
MNO_SW_DEFAULT = 0,
6064
MNO_SIM_ICCD = 1,
@@ -65,19 +69,21 @@ typedef enum {
6569
MNO_CT = 6
6670
} mobile_network_operator_t;
6771

68-
typedef enum {
69-
LTE_SHIELD_ERROR_INVALID = -1, // -1
70-
LTE_SHIELD_ERROR_SUCCESS = 0, // 0
71-
LTE_SHIELD_ERROR_OUT_OF_MEMORY, // 1
72-
LTE_SHIELD_ERROR_TIMEOUT, // 2
73-
LTE_SHIELD_ERROR_UNEXPECTED_PARAM, // 3
74-
LTE_SHIELD_ERROR_UNEXPECTED_RESPONSE, // 4
75-
LTE_SHIELD_ERROR_NO_RESPONSE, // 5
76-
LTE_SHIELD_ERROR_DEREGISTERED // 6
72+
typedef enum
73+
{
74+
LTE_SHIELD_ERROR_INVALID = -1, // -1
75+
LTE_SHIELD_ERROR_SUCCESS = 0, // 0
76+
LTE_SHIELD_ERROR_OUT_OF_MEMORY, // 1
77+
LTE_SHIELD_ERROR_TIMEOUT, // 2
78+
LTE_SHIELD_ERROR_UNEXPECTED_PARAM, // 3
79+
LTE_SHIELD_ERROR_UNEXPECTED_RESPONSE, // 4
80+
LTE_SHIELD_ERROR_NO_RESPONSE, // 5
81+
LTE_SHIELD_ERROR_DEREGISTERED // 6
7782
} LTE_Shield_error_t;
7883
#define LTE_SHIELD_SUCCESS LTE_SHIELD_ERROR_SUCCESS
7984

80-
typedef enum {
85+
typedef enum
86+
{
8187
LTE_SHIELD_REGISTRATION_INVALID = -1,
8288
LTE_SHIELD_REGISTRATION_NOT_REGISTERED = 0,
8389
LTE_SHIELD_REGISTRATION_HOME = 1,
@@ -91,13 +97,15 @@ typedef enum {
9197
LTE_SHIELD_REGISTRATION_ROAMING_CSFB_NOT_PREFERRED = 9
9298
} LTE_Shield_registration_status_t;
9399

94-
struct DateData {
100+
struct DateData
101+
{
95102
uint8_t day;
96103
uint8_t month;
97104
unsigned int year;
98105
};
99106

100-
struct TimeData {
107+
struct TimeData
108+
{
101109
uint8_t hour;
102110
uint8_t minute;
103111
uint8_t second;
@@ -106,12 +114,14 @@ struct TimeData {
106114
uint8_t tzm;
107115
};
108116

109-
struct ClockData {
117+
struct ClockData
118+
{
110119
struct DateData date;
111120
struct TimeData time;
112121
};
113122

114-
struct PositionData {
123+
struct PositionData
124+
{
115125
float utc;
116126
float lat;
117127
char latDir;
@@ -122,111 +132,117 @@ struct PositionData {
122132
char status;
123133
};
124134

125-
struct SpeedData {
135+
struct SpeedData
136+
{
126137
float speed;
127138
float track;
128139
float magVar;
129140
char magVarDir;
130141
};
131142

132-
struct operator_stats {
143+
struct operator_stats
144+
{
133145
uint8_t stat;
134146
String shortOp;
135147
String longOp;
136148
unsigned long numOp;
137149
uint8_t act;
138150
};
139151

140-
typedef enum {
152+
typedef enum
153+
{
141154
LTE_SHIELD_TCP = 6,
142155
LTE_SHIELD_UDP = 17
143156
} lte_shield_socket_protocol_t;
144157

145-
typedef enum {
158+
typedef enum
159+
{
146160
LTE_SHIELD_MESSAGE_FORMAT_PDU = 0,
147161
LTE_SHIELD_MESSAGE_FORMAT_TEXT = 1
148162
} lte_shield_message_format_t;
149163

150-
class LTE_Shield : public Print {
164+
class LTE_Shield : public Print
165+
{
151166
public:
152-
153167
// Constructor
154168
LTE_Shield(uint8_t powerPin = LTE_SHIELD_POWER_PIN, uint8_t resetPin = LTE_SHIELD_RESET_PIN);
155169

156170
// Begin -- initialize BT module and ensure it's connected
157171
#ifdef LTE_SHIELD_SOFTWARE_SERIAL_ENABLED
158-
boolean begin(SoftwareSerial & softSerial, unsigned long baud = 9600);
172+
boolean begin(SoftwareSerial &softSerial, unsigned long baud = 9600);
159173
#endif
160-
boolean begin(HardwareSerial & hardSerial, unsigned long baud = 9600);
174+
boolean begin(HardwareSerial &hardSerial, unsigned long baud = 9600);
161175

162176
// Loop polling and polling setup
163177
boolean poll(void);
164178
void setSocketReadCallback(void (*socketReadCallback)(int, String));
165179
void setSocketCloseCallback(void (*socketCloseCallback)(int));
166-
void setGpsReadCallback(void (*gpsRequestCallback)(ClockData time,
167-
PositionData gps, SpeedData spd, unsigned long uncertainty));
180+
void setGpsReadCallback(void (*gpsRequestCallback)(ClockData time,
181+
PositionData gps, SpeedData spd, unsigned long uncertainty));
168182

169183
// Direct write/print to cell serial port
170184
virtual size_t write(uint8_t c);
171185
virtual size_t write(const char *str);
172-
virtual size_t write(const char * buffer, size_t size);
186+
virtual size_t write(const char *buffer, size_t size);
173187

174-
// General AT Commands
188+
// General AT Commands
175189
LTE_Shield_error_t at(void);
176190
LTE_Shield_error_t enableEcho(boolean enable = true);
177191
String imei(void);
178192
String imsi(void);
179193
String ccid(void);
180194

181-
// Control and status AT commands
195+
// Control and status AT commands
182196
LTE_Shield_error_t reset(void);
183197
String clock(void);
184198
// TODO: Return a clock struct
185-
LTE_Shield_error_t clock(uint8_t * y, uint8_t * mo, uint8_t * d,
186-
uint8_t * h, uint8_t * min, uint8_t * s, uint8_t * tz);
199+
LTE_Shield_error_t clock(uint8_t *y, uint8_t *mo, uint8_t *d,
200+
uint8_t *h, uint8_t *min, uint8_t *s, uint8_t *tz);
187201
LTE_Shield_error_t autoTimeZone(boolean enable);
188202

189-
// Network service AT commands
203+
// Network service AT commands
190204
int8_t rssi(void);
191205
LTE_Shield_registration_status_t registration(void);
192206
boolean setNetwork(mobile_network_operator_t mno);
193207
mobile_network_operator_t getNetwork(void);
194-
typedef enum {
208+
typedef enum
209+
{
195210
PDP_TYPE_INVALID = -1,
196211
PDP_TYPE_IP = 0,
197212
PDP_TYPE_NONIP = 1,
198213
PDP_TYPE_IPV4V6 = 2,
199214
PDP_TYPE_IPV6 = 3
200215
} LTE_Shield_pdp_type;
201216
LTE_Shield_error_t setAPN(String apn, uint8_t cid = 1, LTE_Shield_pdp_type pdpType = PDP_TYPE_IP);
202-
LTE_Shield_error_t getAPN(String * apn, IPAddress * ip);
217+
LTE_Shield_error_t getAPN(String *apn, IPAddress *ip);
203218

204-
typedef enum {
219+
typedef enum
220+
{
205221
L2P_DEFAULT,
206222
L2P_PPP,
207223
L2P_M_HEX,
208224
L2P_M_RAW_IP,
209225
L2P_M_OPT_PPP
210226
} LTE_Shield_l2p_t;
211-
LTE_Shield_error_t enterPPP(uint8_t cid = 1, char dialing_type_char = 0,
212-
unsigned long dialNumber = 99, LTE_Shield_l2p_t l2p = L2P_DEFAULT);
227+
LTE_Shield_error_t enterPPP(uint8_t cid = 1, char dialing_type_char = 0,
228+
unsigned long dialNumber = 99, LTE_Shield_l2p_t l2p = L2P_DEFAULT);
213229

214-
uint8_t getOperators(struct operator_stats * op, int maxOps = 3);
230+
uint8_t getOperators(struct operator_stats *op, int maxOps = 3);
215231
LTE_Shield_error_t registerOperator(struct operator_stats oper);
216-
LTE_Shield_error_t getOperator(String * oper);
232+
LTE_Shield_error_t getOperator(String *oper);
217233
LTE_Shield_error_t deregisterOperator(void);
218234

219-
// SMS -- Short Messages Service
220-
LTE_Shield_error_t setSMSMessageFormat(lte_shield_message_format_t textMode
221-
= LTE_SHIELD_MESSAGE_FORMAT_TEXT);
235+
// SMS -- Short Messages Service
236+
LTE_Shield_error_t setSMSMessageFormat(lte_shield_message_format_t textMode = LTE_SHIELD_MESSAGE_FORMAT_TEXT);
222237
LTE_Shield_error_t sendSMS(String number, String message);
223238

224-
// V24 Control and V25ter (UART interface) AT commands
239+
// V24 Control and V25ter (UART interface) AT commands
225240
LTE_Shield_error_t setBaud(unsigned long baud);
226241

227-
// GPIO
242+
// GPIO
228243
// GPIO pin map
229-
typedef enum {
244+
typedef enum
245+
{
230246
GPIO1 = 16,
231247
GPIO2 = 23,
232248
GPIO3 = 24,
@@ -235,7 +251,8 @@ class LTE_Shield : public Print {
235251
GPIO6 = 19
236252
} LTE_Shield_gpio_t;
237253
// GPIO pin modes
238-
typedef enum {
254+
typedef enum
255+
{
239256
GPIO_MODE_INVALID = -1,
240257
GPIO_OUTPUT = 0,
241258
GPIO_INPUT,
@@ -263,15 +280,16 @@ class LTE_Shield : public Print {
263280
// IP Transport Layer
264281
int socketOpen(lte_shield_socket_protocol_t protocol, unsigned int localPort = 0);
265282
LTE_Shield_error_t socketClose(int socket, int timeout = 1000);
266-
LTE_Shield_error_t socketConnect(int socket, const char * address, unsigned int port);
267-
LTE_Shield_error_t socketWrite(int socket, const char * str);
283+
LTE_Shield_error_t socketConnect(int socket, const char *address, unsigned int port);
284+
LTE_Shield_error_t socketWrite(int socket, const char *str);
268285
LTE_Shield_error_t socketWrite(int socket, String str);
269-
LTE_Shield_error_t socketRead(int socket, int length, char * readDest);
286+
LTE_Shield_error_t socketRead(int socket, int length, char *readDest);
270287
LTE_Shield_error_t socketListen(int socket, unsigned int port);
271288
IPAddress lastRemoteIP(void);
272289

273290
// GPS
274-
typedef enum {
291+
typedef enum
292+
{
275293
GNSS_SYSTEM_GPS = 1,
276294
GNSS_SYSTEM_SBAS = 2,
277295
GNSS_SYSTEM_GALILEO = 4,
@@ -282,49 +300,50 @@ class LTE_Shield : public Print {
282300
} gnss_system_t;
283301
boolean gpsOn(void);
284302
LTE_Shield_error_t gpsPower(boolean enable = true,
285-
gnss_system_t gnss_sys = GNSS_SYSTEM_GPS);
303+
gnss_system_t gnss_sys = GNSS_SYSTEM_GPS);
286304
LTE_Shield_error_t gpsEnableClock(boolean enable = true);
287-
LTE_Shield_error_t gpsGetClock(struct ClockData * clock);
305+
LTE_Shield_error_t gpsGetClock(struct ClockData *clock);
288306
LTE_Shield_error_t gpsEnableFix(boolean enable = true);
289-
LTE_Shield_error_t gpsGetFix(float * lat, float * lon,
290-
unsigned int * alt, uint8_t * quality, uint8_t * sat);
291-
LTE_Shield_error_t gpsGetFix(struct PositionData * pos);
307+
LTE_Shield_error_t gpsGetFix(float *lat, float *lon,
308+
unsigned int *alt, uint8_t *quality, uint8_t *sat);
309+
LTE_Shield_error_t gpsGetFix(struct PositionData *pos);
292310
LTE_Shield_error_t gpsEnablePos(boolean enable = true);
293-
LTE_Shield_error_t gpsGetPos(struct PositionData * pos);
311+
LTE_Shield_error_t gpsGetPos(struct PositionData *pos);
294312
LTE_Shield_error_t gpsEnableSat(boolean enable = true);
295-
LTE_Shield_error_t gpsGetSat(uint8_t * sats);
313+
LTE_Shield_error_t gpsGetSat(uint8_t *sats);
296314
LTE_Shield_error_t gpsEnableRmc(boolean enable = true);
297-
LTE_Shield_error_t gpsGetRmc(struct PositionData * pos, struct SpeedData * speed,
298-
struct ClockData * clk, boolean * valid);
315+
LTE_Shield_error_t gpsGetRmc(struct PositionData *pos, struct SpeedData *speed,
316+
struct ClockData *clk, boolean *valid);
299317
LTE_Shield_error_t gpsEnableSpeed(boolean enable = true);
300-
LTE_Shield_error_t gpsGetSpeed(struct SpeedData * speed);
318+
LTE_Shield_error_t gpsGetSpeed(struct SpeedData *speed);
301319

302320
LTE_Shield_error_t gpsRequest(unsigned int timeout, uint32_t accuracy, boolean detailed = true);
303321

304322
private:
305-
306-
HardwareSerial * _hardSerial;
323+
HardwareSerial *_hardSerial;
307324
#ifdef LTE_SHIELD_SOFTWARE_SERIAL_ENABLED
308-
SoftwareSerial * _softSerial;
325+
SoftwareSerial *_softSerial;
309326
#endif
310327

311328
uint8_t _powerPin;
312329
uint8_t _resetPin;
313330
unsigned long _baud;
314331
IPAddress _lastRemoteIP;
315332
IPAddress _lastLocalIP;
316-
333+
317334
void (*_socketReadCallback)(int, String);
318335
void (*_socketCloseCallback)(int);
319336
void (*_gpsRequestCallback)(ClockData, PositionData, SpeedData, unsigned long);
320337

321-
typedef enum {
338+
typedef enum
339+
{
322340
LTE_SHIELD_INIT_STANDARD,
323341
LTE_SHIELD_INIT_AUTOBAUD,
324342
LTE_SHIELD_INIT_RESET
325343
} LTE_Shield_init_type_t;
326344

327-
typedef enum {
345+
typedef enum
346+
{
328347
MINIMUM_FUNCTIONALITY = 0,
329348
FULL_FUNCTIONALITY = 1,
330349
SILENT_RESET = 15,
@@ -340,35 +359,35 @@ class LTE_Shield : public Print {
340359
LTE_Shield_error_t functionality(LTE_Shield_functionality_t function = FULL_FUNCTIONALITY);
341360

342361
LTE_Shield_error_t setMno(mobile_network_operator_t mno);
343-
LTE_Shield_error_t getMno(mobile_network_operator_t * mno);
362+
LTE_Shield_error_t getMno(mobile_network_operator_t *mno);
344363

345364
// Wait for an expected response (don't send a command)
346-
LTE_Shield_error_t waitForResponse(const char * expectedResponse, uint16_t timeout);
365+
LTE_Shield_error_t waitForResponse(const char *expectedResponse, uint16_t timeout);
347366

348367
// Send command with an expected (potentially partial) response, store entire response
349-
LTE_Shield_error_t sendCommandWithResponse(const char * command, const char * expectedResponse,
350-
char * responseDest, unsigned long commandTimeout, boolean at = true);
368+
LTE_Shield_error_t sendCommandWithResponse(const char *command, const char *expectedResponse,
369+
char *responseDest, unsigned long commandTimeout, boolean at = true);
351370

352371
// Send a command -- prepend AT if at is true
353-
boolean sendCommand(const char * command, boolean at);
372+
boolean sendCommand(const char *command, boolean at);
354373

355374
LTE_Shield_error_t parseSocketReadIndication(int socket, int length);
356375
LTE_Shield_error_t parseSocketListenIndication(IPAddress localIP, IPAddress remoteIP);
357-
LTE_Shield_error_t parseSocketCloseIndication(String * closeIndication);
376+
LTE_Shield_error_t parseSocketCloseIndication(String *closeIndication);
358377

359-
// UART Functions
360-
size_t hwPrint(const char * s);
378+
// UART Functions
379+
size_t hwPrint(const char *s);
361380
size_t hwWrite(const char c);
362-
int readAvailable(char * inString);
381+
int readAvailable(char *inString);
363382
char readChar(void);
364383
int hwAvailable(void);
365384
void beginSerial(unsigned long baud);
366385
void setTimeout(unsigned long timeout);
367-
bool find(char * target);
386+
bool find(char *target);
368387

369388
LTE_Shield_error_t autobaud(unsigned long desiredBaud);
370389

371-
char * lte_calloc_char(size_t num);
390+
char *lte_calloc_char(size_t num);
372391
};
373392

374393
#endif //SPARKFUN_LTE_SHIELD_ARDUINO_LIBRARY_H

0 commit comments

Comments
 (0)