FreeRTOS: FreeRTOS Cellular Library v1.4.0
FreeRTOS Cellular Library
 
Loading...
Searching...
No Matches
cellular_types.h
Go to the documentation of this file.
1/*
2 * FreeRTOS-Cellular-Interface v1.4.0
3 * Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
4 *
5 * SPDX-License-Identifier: MIT
6 *
7 * Permission is hereby granted, free of charge, to any person obtaining a copy of
8 * this software and associated documentation files (the "Software"), to deal in
9 * the Software without restriction, including without limitation the rights to
10 * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
11 * the Software, and to permit persons to whom the Software is furnished to do so,
12 * subject to the following conditions:
13 *
14 * The above copyright notice and this permission notice shall be included in all
15 * copies or substantial portions of the Software.
16 *
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
19 * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
20 * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
21 * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
22 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23 *
24 * https://www.FreeRTOS.org
25 * https://github.com/FreeRTOS
26 */
27
32#ifndef __CELLULAR_TYPES_H__
33#define __CELLULAR_TYPES_H__
34
35/* *INDENT-OFF* */
36#ifdef __cplusplus
37 extern "C" {
38#endif
39/* *INDENT-ON* */
40
41/* Includes for standard bool and int. */
42#include <stdbool.h>
43#include <stdint.h>
44
49#define CELLULAR_INVALID_SIGNAL_VALUE ( -32768 )
50
55#define CELLULAR_INVALID_SIGNAL_BAR_VALUE ( 0xFFU )
56
61struct CellularContext;
62
67typedef struct CellularContext CellularContext_t;
68
73typedef struct CellularContext * CellularHandle_t;
74
75struct CellularSocketContext;
76
81typedef struct CellularSocketContext * CellularSocketHandle_t;
82
87typedef enum CellularError
88{
105
110typedef enum CellularRat
111{
124
129typedef enum CellularSimCardState
130{
136
141typedef enum CellularSimCardLockState
142{
161
166typedef enum CellularNetworkRegistrationMode
167{
175
180typedef enum CellularNetworkRegistrationStatus
181{
193
198typedef enum CellularOperatorNameFormat
199{
206
211typedef enum CellularUrcEvent
212{
222
227typedef enum CellularModemEvent
228{
233
238typedef enum CellularPdnContextType
239{
245
250typedef enum CellularPdnAuthType
251{
257
262typedef enum CellularSocketDomain
263{
267
272typedef enum CellularSocketType
273{
277
282typedef enum CellularSocketProtocol
283{
284 CELLULAR_SOCKET_PROTOCOL_UDP,
285 CELLULAR_SOCKET_PROTOCOL_TCP
287
292typedef enum CellularSocketAccessMode
293{
294 CELLULAR_ACCESSMODE_BUFFER = 0, /* Data access buffer mode. */
295 CELLULAR_ACCESSMODE_DIRECT_PUSH, /* Data access direct push mode. */
296 CELLULAR_ACCESSMODE_TRANSPARENT, /* Data access transparent mode. */
297 CELLULAR_ACCESSMODE_NOT_SET /* Data access not set. */
299
304typedef enum CellularIPAddressType
305{
309
314typedef enum CellularSocketOptionLevel
315{
319
324typedef enum CellularSocketOption
325{
332
337typedef enum CellularPktStatus
338{
339 CELLULAR_PKT_STATUS_OK = 0, /* The operation was successful. */
340 CELLULAR_PKT_STATUS_TIMED_OUT, /* The operation timed out. */
341 CELLULAR_PKT_STATUS_FAILURE, /* There was some internal failure. */
342 CELLULAR_PKT_STATUS_BAD_REQUEST, /* Request was not valid. */
343 CELLULAR_PKT_STATUS_BAD_RESPONSE, /* The response received was not valid. */
344 CELLULAR_PKT_STATUS_SIZE_MISMATCH, /* There is a size mismatch between the params. */
345 CELLULAR_PKT_STATUS_BAD_PARAM, /* One or more params is not valid. */
346 CELLULAR_PKT_STATUS_SEND_ERROR, /* Modem returned a send error. */
347 CELLULAR_PKT_STATUS_INVALID_HANDLE, /* Invalid context. */
348 CELLULAR_PKT_STATUS_CREATION_FAIL, /* Resource creation fail. */
349 CELLULAR_PKT_STATUS_PREFIX_MISMATCH, /* Invalid prefix from Modem resp. */
350 CELLULAR_PKT_STATUS_INVALID_DATA, /* Invalid data from Modem resp. */
351 CELLULAR_PKT_STATUS_PENDING_DATA, /* Pending data from Modem resp. */
352 CELLULAR_PKT_STATUS_PENDING_BUFFER /* Pending data from Modem resp. */
354
359typedef enum CellularATCommandType
360{
371
376typedef struct CellularSimCardStatus
377{
381
386typedef struct CellularPlmnInfo
387{
388 char mcc[ CELLULAR_MCC_MAX_SIZE + 1 ];
389 char mnc[ CELLULAR_MNC_MAX_SIZE + 1 ];
391
396typedef struct CellularSimCardInfo
397{
398 char iccid[ CELLULAR_ICCID_MAX_SIZE + 1 ];
399 char imsi[ CELLULAR_IMSI_MAX_SIZE + 1 ];
402
407typedef struct CellularModemInfo
408{
409 char hardwareVersion[ CELLULAR_HW_VERSION_MAX_SIZE + 1 ];
410 char firmwareVersion[ CELLULAR_FW_VERSION_MAX_SIZE + 1 ];
411 char serialNumber[ CELLULAR_SERIAL_NUM_MAX_SIZE + 1 ];
412 char imei[ CELLULAR_IMEI_MAX_SIZE + 1 ];
413 char manufactureId[ CELLULAR_MANUFACTURE_ID_MAX_SIZE + 1 ];
414 char modelId[ CELLULAR_MODEL_ID_MAX_SIZE + 1 ];
416
421typedef struct CellularTime
422{
423 uint8_t month;
424 uint8_t day;
425 uint8_t hour;
426 uint8_t minute;
427 uint8_t second;
428 uint16_t year;
429 int32_t timeZone;
430 uint8_t dst;
434
439typedef struct CellularSignalInfo
440{
441 int16_t rssi;
442 int16_t rsrp;
443 int16_t rsrq;
444 int16_t sinr;
445 int16_t ber;
446 uint8_t bars;
448
453typedef struct CellularServiceStatus
454{
461 char operatorName[ CELLULAR_NETWORK_NAME_MAX_SIZE + 1 ];
467
472typedef struct CellularATCommandLine
473{
474 struct CellularATCommandLine * pNext;
475 char * pLine;
477
482typedef struct CellularATCommandResponse
483{
484 bool status;
487
492typedef struct CellularPsmSettings
493{
494 /*
495 * 0 = PSM Disable
496 * 1 = PSM Enable.
497 */
498 uint8_t mode;
500 /*
501 * Bits 5 to 1 represent the binary coded timer value
502 * Bits 6 to 8 define the timer value unit as follows:
503 * Bits
504 * 8 7 6
505 * 0 0 0 value is incremented in multiples of 10 minutes
506 * 0 0 1 value is incremented in multiples of 1 hour
507 * 0 1 0 value is incremented in multiples of 10 hours
508 * 0 1 1 value is incremented in multiples of 2 seconds
509 * 1 0 0 value is incremented in multiples of 30 seconds
510 * 1 0 1 value is incremented in multiples of 1 minute
511 *
512 * e.g. "00001010" equals to 100 minutes.
513 * first uint8_t is used for PSM set, whole uint32_t is used for PSM get.
514 */
517 /*
518 * Bits 5 to 1 represent the binary coded timer value
519 * Bits 6 to 8 define the timer value unit as follows:
520 * Bits
521 * 8 7 6
522 * 0 0 0 value is incremented in multiples of 10 minutes
523 * 0 0 1 value is incremented in multiples of 1 hour
524 * 0 1 0 value is incremented in multiples of 10 hours
525 * 0 1 1 value is incremented in multiples of 2 seconds
526 * 1 0 0 value is incremented in multiples of 30 seconds
527 * 1 0 1 value is incremented in multiples of 1 minute
528 *
529 * e.g. "00001010" equals to 100 minutes.
530 * first uint8_t is used for PSM set, whole uint32_t is used for PSM get.
531 */
534 /*
535 * Bits 5 to 1 represent the binary coded timer value
536 * Bits 6 to 8 define the timer value unit as follows:
537 * Bits
538 * 8 7 6
539 * 0 0 0 value is incremented in multiples of 10 minutes
540 * 0 0 1 value is incremented in multiples of 1 hour
541 * 0 1 0 value is incremented in multiples of 10 hours
542 * 0 1 1 value is incremented in multiples of 2 seconds
543 * 1 0 0 value is incremented in multiples of 30 seconds
544 * 1 0 1 value is incremented in multiples of 1 minute
545 *
546 * e.g. "00001010" equals to 100 minutes.
547 * first uint8_t is used for PSM set, whole uint32_t is used for PSM get.
548 */
549 uint32_t gprsReadyTimer;
551 /*
552 * Bits 5 to 1 represent the binary coded timer value.
553 * Bits 6 to 8 define the timer value unit as follows:
554 * Bits
555 * 8 7 6
556 * 0 0 0 value is incremented in multiples of 2 seconds
557 * 0 0 1 value is incremented in multiples of 1 minute
558 * 0 1 0 value is incremented in multiples of decihours
559 * 1 1 1 value indicates that the timer is deactivated.
560 *
561 * "00001111" equals to 30 seconds.
562 * first uint8_t is used for PSM set, whole uint32_t is used for PSM get.
563 */
566
571typedef struct CellularEidrxSettings
572{
573 /*
574 * 0 Disable the use of e-I-DRX
575 * 1 Enable the use of e-I-DRX
576 * 2 Enable the use of e-I-DRX and enable the unsolicited result code
577 * 3 Disable the use of e-I-DRX and discard all parameters for e-I-DRX or,
578 * if available, reset to the manufacturer specific default values.
579 */
580 uint8_t mode;
582 /*
583 * 2 GSM
584 * 3 UTRAN
585 * 4 LTE Cat M1
586 * 5 LTE Cat NB1
587 */
588 uint8_t rat;
590 /*
591 * String type. Half a byte in a 4 bit format.
592 * bit
593 * 4 3 2 1 E-UTRAN e-I-DRX cycle length duration
594 * 0 0 0 0 5.12 seconds
595 * 0 0 0 1 10.24 seconds
596 * 0 0 1 0 20.48 seconds
597 * 0 0 1 1 40.96 seconds
598 * 0 1 0 0 61.44 seconds
599 * 0 1 0 1 81.92 seconds
600 * 0 1 1 0 102.4 seconds
601 * 0 1 1 1 122.88 seconds
602 * 1 0 0 0 143.36 seconds
603 * 1 0 0 1 163.84 seconds
604 * 1 0 1 0 327.68 seconds
605 * 1 0 1 1 655,36 seconds
606 * 1 1 0 0 1310.72 seconds
607 * 1 1 0 1 2621.44 seconds
608 * 1 1 1 0 5242.88 seconds
609 * 1 1 1 1 10485.76 seconds
610 */
614 /*
615 * LTE Cat M1 mode
616 * bit
617 * 4 3 2 1 Paging Time Window length
618 * 0 0 0 0 1.28 seconds
619 * 0 0 0 1 2.56 seconds
620 * 0 0 1 0 3.84 seconds
621 * 0 0 1 1 5.12 seconds
622 * 0 1 0 0 6.4 seconds
623 * 0 1 0 1 7.68 seconds
624 * 0 1 1 0 8.96 seconds
625 * 0 1 1 1 10.24 seconds
626 * 1 0 0 0 11.52 seconds
627 * 1 0 0 1 12.8 seconds
628 * 1 0 1 0 14.08 seconds
629 * 1 0 1 1 15.36 seconds
630 * 1 1 0 0 16.64 seconds
631 * 1 1 0 1 17.92 seconds
632 * 1 1 1 0 19.20 seconds
633 * 1 1 1 1 20.48 seconds
634 *
635 * LTE Cat NB1 mode
636 * bit
637 * 4 3 2 1 Paging Time Window length
638 * 0 0 0 0 2.56 seconds
639 * 0 0 0 1 5.12 seconds
640 * 0 0 1 0 7.68 seconds
641 * 0 0 1 1 10.24 seconds
642 * 0 1 0 0 12.8 seconds
643 * 0 1 0 1 15.36 seconds
644 * 0 1 1 0 17.92 seconds
645 * 0 1 1 1 20.48 seconds
646 * 1 0 0 0 23.04 seconds
647 * 1 0 0 1 25.6 seconds
648 * 1 0 1 0 28.16 seconds
649 * 1 0 1 1 30.72 seconds
650 * 1 1 0 0 33.28 seconds
651 * 1 1 0 1 35.84 seconds
652 * 1 1 1 0 38.4 seconds
653 * 1 1 1 1 40.96 seconds
654 */
657
662typedef struct CellularEidrxSettingsList
663{
665 uint8_t count;
667
672typedef struct CellularIPAddress
673{
675 char ipAddress[ CELLULAR_IP_ADDRESS_MAX_SIZE + 1 ];
677
682typedef struct CellularPdnConfig
683{
686 char apnName[ CELLULAR_APN_MAX_SIZE + 1 ];
687 char username[ CELLULAR_PDN_USERNAME_MAX_SIZE + 1 ];
688 char password[ CELLULAR_PDN_PASSWORD_MAX_SIZE + 1 ];
690
695typedef struct CellularPdnStatus
696{
697 uint8_t contextId;
698 uint8_t state;
702
707typedef struct CellularSocketAddress
708{
710 uint16_t port;
712
726typedef CellularPktStatus_t ( * CellularATCommandResponseReceivedCallback_t ) ( CellularHandle_t cellularHandle,
727 const CellularATCommandResponse_t * pAtResp,
728 void * pData,
729 uint16_t dataLen );
730
741 const CellularServiceStatus_t * pServiceStatus,
742 void * pCallbackContext );
743
754 uint8_t contextId,
755 void * pCallbackContext );
756
767 const CellularSignalInfo_t * pSignalInfo,
768 void * pCallbackContext );
769
778typedef void ( * CellularUrcGenericCallback_t )( const char * pRawData,
779 void * pCallbackContext );
780
790 void * pCallbackContext );
791
802 CellularSocketHandle_t socketHandle,
803 void * pCallbackContext );
804
814 void * pCallbackContext );
815
827 void * pCallbackContext );
828
829/* *INDENT-OFF* */
830#ifdef __cplusplus
831 }
832#endif
833/* *INDENT-ON* */
834
835#endif /* __CELLULAR_TYPES_H__ */
#define CELLULAR_MODEL_ID_MAX_SIZE
Cellular module ID max size.
Definition: cellular_config_defaults.h:233
#define CELLULAR_IMSI_MAX_SIZE
International Mobile Subscriber Identity max size.
Definition: cellular_config_defaults.h:103
#define CELLULAR_FW_VERSION_MAX_SIZE
Cellular module firmware version max size.
Definition: cellular_config_defaults.h:113
#define CELLULAR_PDN_USERNAME_MAX_SIZE
Packet data network username max size.
Definition: cellular_config_defaults.h:173
#define CELLULAR_IP_ADDRESS_MAX_SIZE
Cellular data network IP address max size.
Definition: cellular_config_defaults.h:193
#define CELLULAR_EDRX_LIST_MAX_SIZE
Cellular EDRX list max size.
Definition: cellular_config_defaults.h:243
#define CELLULAR_PDN_PASSWORD_MAX_SIZE
Packet data network password max size.
Definition: cellular_config_defaults.h:183
#define CELLULAR_ICCID_MAX_SIZE
Integrate circuit card identity max size.
Definition: cellular_config_defaults.h:93
#define CELLULAR_MNC_MAX_SIZE
Mobile network code max size.
Definition: cellular_config_defaults.h:83
#define CELLULAR_APN_MAX_SIZE
Access point name max size.
Definition: cellular_config_defaults.h:163
#define CELLULAR_MCC_MAX_SIZE
Mobile country code max size.
Definition: cellular_config_defaults.h:73
#define CELLULAR_IMEI_MAX_SIZE
International Mobile Equipment Identity number max size.
Definition: cellular_config_defaults.h:143
#define CELLULAR_MANUFACTURE_ID_MAX_SIZE
Cellular module manufacture ID max size.
Definition: cellular_config_defaults.h:223
#define CELLULAR_NETWORK_NAME_MAX_SIZE
Registered network operator name max size.
Definition: cellular_config_defaults.h:153
#define CELLULAR_SERIAL_NUM_MAX_SIZE
Cellular module serial number max size.
Definition: cellular_config_defaults.h:133
#define CELLULAR_HW_VERSION_MAX_SIZE
Cellular module hardware version max size.
Definition: cellular_config_defaults.h:123
CellularUrcEvent_t
Represents URC events.
Definition: cellular_types.h:212
CellularNetworkRegistrationStatus_t
Represents network registration status. Reference 3GPP TS 27.007 network registration status.
Definition: cellular_types.h:181
CellularPktStatus_t
packet Status Names.
Definition: cellular_types.h:338
CellularATCommandType_t
Represents AT Command type.
Definition: cellular_types.h:360
CellularPdnAuthType_t
Represents PDN authentication type.
Definition: cellular_types.h:251
CellularSocketType_t
Represents socket type.
Definition: cellular_types.h:273
CellularSimCardLockState_t
SIM card lock state codes. Reference 3GPP TS 27.007 Enter PIN +CPIN.
Definition: cellular_types.h:142
CellularNetworkRegistrationMode_t
Represents network registration mode. Reference 3GPP TS 27.007 PLMN selection +COPS.
Definition: cellular_types.h:167
CellularSocketOption_t
Socket option names.
Definition: cellular_types.h:325
CellularSocketAccessMode_t
Represents data access modes.
Definition: cellular_types.h:293
CellularIPAddressType_t
Represents IP address.
Definition: cellular_types.h:305
CellularRat_t
Enums representing Radio Access Technologies (RATs). Reference 3GPP TS 27.007 PLMN selection +COPS.
Definition: cellular_types.h:111
CellularSocketOptionLevel_t
Represents socket option level.
Definition: cellular_types.h:315
CellularSimCardState_t
SIM card state codes.
Definition: cellular_types.h:130
CellularError_t
Status code returns from APIs.
Definition: cellular_types.h:88
CellularPdnContextType_t
Represents PDN context type.
Definition: cellular_types.h:239
CellularSocketDomain_t
Represents socket domain.
Definition: cellular_types.h:263
CellularSocketProtocol_t
Represents socket protocol.
Definition: cellular_types.h:283
CellularModemEvent_t
Represents Modem events.
Definition: cellular_types.h:228
CellularOperatorNameFormat_t
Represents operator name format.
Definition: cellular_types.h:199
@ CELLULAR_URC_EVENT_PDN_ACTIVATED
Definition: cellular_types.h:215
@ CELLULAR_URC_EVENT_SIGNAL_CHANGED
Definition: cellular_types.h:217
@ CELLULAR_URC_EVENT_PDN_DEACTIVATED
Definition: cellular_types.h:216
@ CELLULAR_URC_EVENT_NETWORK_CS_REGISTRATION
Definition: cellular_types.h:213
@ CELLULAR_URC_EVENT_OTHER
Definition: cellular_types.h:220
@ CELLULAR_URC_SOCKET_OPENED
Definition: cellular_types.h:218
@ CELLULAR_URC_SOCKET_OPEN_FAILED
Definition: cellular_types.h:219
@ CELLULAR_URC_EVENT_NETWORK_PS_REGISTRATION
Definition: cellular_types.h:214
@ REGISTRATION_STATUS_REGISTRATION_DENIED
Definition: cellular_types.h:185
@ REGISTRATION_STATUS_ROAMING_REGISTERED
Definition: cellular_types.h:187
@ REGISTRATION_STATUS_HOME_SMS_ONLY_REGISTERED
Definition: cellular_types.h:188
@ REGISTRATION_STATUS_NO_REGISTERED_SEARCHING
Definition: cellular_types.h:182
@ REGISTRATION_STATUS_NOT_REGISTERED_SEARCHING
Definition: cellular_types.h:184
@ REGISTRATION_STATUS_SMS_ONLY_ROAMING_REGISTERED
Definition: cellular_types.h:189
@ REGISTRATION_STATUS_UNKNOWN
Definition: cellular_types.h:186
@ REGISTRATION_STATUS_MAX
Definition: cellular_types.h:191
@ REGISTRATION_STATUS_ATTACHED_EMERG_SERVICES_ONLY
Definition: cellular_types.h:190
@ REGISTRATION_STATUS_REGISTERED_HOME
Definition: cellular_types.h:183
@ CELLULAR_AT_NO_RESULT
Definition: cellular_types.h:361
@ CELLULAR_AT_WITH_PREFIX
Definition: cellular_types.h:363
@ CELLULAR_AT_WITH_PREFIX_NO_RESULT_CODE
Definition: cellular_types.h:368
@ CELLULAR_AT_WO_PREFIX_NO_RESULT_CODE
Definition: cellular_types.h:367
@ CELLULAR_AT_WO_PREFIX
Definition: cellular_types.h:362
@ CELLULAR_AT_MULTI_WO_PREFIX
Definition: cellular_types.h:365
@ CELLULAR_AT_MULTI_WITH_PREFIX
Definition: cellular_types.h:364
@ CELLULAR_AT_MULTI_DATA_WO_PREFIX
Definition: cellular_types.h:366
@ CELLULAR_AT_NO_COMMAND
Definition: cellular_types.h:369
@ CELLULAR_PDN_AUTH_PAP_OR_CHAP
Definition: cellular_types.h:255
@ CELLULAR_PDN_AUTH_NONE
Definition: cellular_types.h:252
@ CELLULAR_PDN_AUTH_PAP
Definition: cellular_types.h:253
@ CELLULAR_PDN_AUTH_CHAP
Definition: cellular_types.h:254
@ CELLULAR_SOCKET_TYPE_DGRAM
Definition: cellular_types.h:274
@ CELLULAR_SOCKET_TYPE_STREAM
Definition: cellular_types.h:275
@ CELLULAR_SIM_CARD_INVALID
Definition: cellular_types.h:158
@ CELLULAR_SIM_CARD_CORP_PIN
Definition: cellular_types.h:154
@ CELLULAR_SIM_CARD_PH_NETSUB_PIN
Definition: cellular_types.h:150
@ CELLULAR_SIM_CARD_PUK
Definition: cellular_types.h:145
@ CELLULAR_SIM_CARD_LOCK_UNKNOWN
Definition: cellular_types.h:159
@ CELLULAR_SIM_CARD_PH_NETSUB_PUK
Definition: cellular_types.h:151
@ CELLULAR_SIM_CARD_CORP_PUK
Definition: cellular_types.h:155
@ CELLULAR_SIM_CARD_PIN2
Definition: cellular_types.h:146
@ CELLULAR_SIM_CARD_PH_NET_PIN
Definition: cellular_types.h:148
@ CELLULAR_SIM_CARD_IMSI_PUK
Definition: cellular_types.h:157
@ CELLULAR_SIM_CARD_PIN
Definition: cellular_types.h:144
@ CELLULAR_SIM_CARD_IMSI_PIN
Definition: cellular_types.h:156
@ CELLULAR_SIM_CARD_PUK2
Definition: cellular_types.h:147
@ CELLULAR_SIM_CARD_SP_PUK
Definition: cellular_types.h:153
@ CELLULAR_SIM_CARD_PH_NET_PUK
Definition: cellular_types.h:149
@ CELLULAR_SIM_CARD_SP_PIN
Definition: cellular_types.h:152
@ CELLULAR_SIM_CARD_READY
Definition: cellular_types.h:143
@ REGISTRATION_MODE_MAX
Definition: cellular_types.h:172
@ REGISTRATION_MODE_MANUAL_THEN_AUTO
Definition: cellular_types.h:171
@ REGISTRATION_MODE_MANUAL
Definition: cellular_types.h:169
@ REGISTRATION_MODE_UNKNOWN
Definition: cellular_types.h:173
@ REGISTRATION_MODE_DEREGISTER
Definition: cellular_types.h:170
@ REGISTRATION_MODE_AUTO
Definition: cellular_types.h:168
@ CELLULAR_SOCKET_OPTION_SET_LOCAL_PORT
Definition: cellular_types.h:330
@ CELLULAR_SOCKET_OPTION_PDN_CONTEXT_ID
Definition: cellular_types.h:329
@ CELLULAR_SOCKET_OPTION_MAX_IP_PACKET_SIZE
Definition: cellular_types.h:326
@ CELLULAR_SOCKET_OPTION_RECV_TIMEOUT
Definition: cellular_types.h:328
@ CELLULAR_SOCKET_OPTION_SEND_TIMEOUT
Definition: cellular_types.h:327
@ CELLULAR_IP_ADDRESS_V4
Definition: cellular_types.h:306
@ CELLULAR_IP_ADDRESS_V6
Definition: cellular_types.h:307
@ CELLULAR_RAT_EDGE
Definition: cellular_types.h:114
@ CELLULAR_RAT_GSM
Definition: cellular_types.h:112
@ CELLULAR_RAT_HSDPA
Definition: cellular_types.h:115
@ CELLULAR_RAT_WCDMA
Definition: cellular_types.h:113
@ CELLULAR_RAT_HSUPA
Definition: cellular_types.h:116
@ CELLULAR_RAT_LTE
Definition: cellular_types.h:118
@ CELLULAR_RAT_HSDPAHSUPA
Definition: cellular_types.h:117
@ CELLULAR_RAT_CATM1
Definition: cellular_types.h:119
@ CELLULAR_RAT_NBIOT
Definition: cellular_types.h:120
@ CELLULAR_RAT_MAX
Definition: cellular_types.h:121
@ CELLULAR_RAT_INVALID
Definition: cellular_types.h:122
@ CELLULAR_SOCKET_OPTION_LEVEL_TRANSPORT
Definition: cellular_types.h:317
@ CELLULAR_SOCKET_OPTION_LEVEL_IP
Definition: cellular_types.h:316
@ CELLULAR_SIM_CARD_REMOVED
Definition: cellular_types.h:131
@ CELLULAR_SIM_CARD_INSERTED
Definition: cellular_types.h:132
@ CELLULAR_SIM_CARD_STATUS_MAX
Definition: cellular_types.h:133
@ CELLULAR_SIM_CARD_UNKNOWN
Definition: cellular_types.h:134
@ CELLULAR_NO_MEMORY
Definition: cellular_types.h:95
@ CELLULAR_LIBRARY_ALREADY_OPEN
Definition: cellular_types.h:93
@ CELLULAR_INVALID_HANDLE
Definition: cellular_types.h:90
@ CELLULAR_TIMEOUT
Definition: cellular_types.h:96
@ CELLULAR_NOT_ALLOWED
Definition: cellular_types.h:102
@ CELLULAR_RESOURCE_CREATION_FAIL
Definition: cellular_types.h:100
@ CELLULAR_BAD_PARAMETER
Definition: cellular_types.h:94
@ CELLULAR_SOCKET_CLOSED
Definition: cellular_types.h:97
@ CELLULAR_LIBRARY_NOT_OPEN
Definition: cellular_types.h:92
@ CELLULAR_UNSUPPORTED
Definition: cellular_types.h:101
@ CELLULAR_UNKNOWN
Definition: cellular_types.h:103
@ CELLULAR_SOCKET_NOT_CONNECTED
Definition: cellular_types.h:98
@ CELLULAR_INTERNAL_FAILURE
Definition: cellular_types.h:99
@ CELLULAR_SUCCESS
Definition: cellular_types.h:89
@ CELLULAR_MODEM_NOT_READY
Definition: cellular_types.h:91
@ CELLULAR_PDN_CONTEXT_IPV4V6
Definition: cellular_types.h:242
@ CELLULAR_PDN_CONTEXT_IPV4
Definition: cellular_types.h:240
@ CELLULAR_PDN_CONTEXT_IPV6
Definition: cellular_types.h:241
@ CELLULAR_PDN_CONTEXT_TYPE_MAX
Definition: cellular_types.h:243
@ CELLULAR_SOCKET_DOMAIN_AF_INET6
Definition: cellular_types.h:265
@ CELLULAR_SOCKET_DOMAIN_AF_INET
Definition: cellular_types.h:264
@ CELLULAR_MODEM_EVENT_BOOTUP_OR_REBOOT
Definition: cellular_types.h:229
@ CELLULAR_MODEM_EVENT_POWERED_DOWN
Definition: cellular_types.h:230
@ CELLULAR_MODEM_EVENT_PSM_ENTER
Definition: cellular_types.h:231
@ OPERATOR_NAME_FORMAT_MAX
Definition: cellular_types.h:204
@ OPERATOR_NAME_FORMAT_SHORT
Definition: cellular_types.h:201
@ OPERATOR_NAME_FORMAT_NUMERIC
Definition: cellular_types.h:202
@ OPERATOR_NAME_FORMAT_LONG
Definition: cellular_types.h:200
@ OPERATOR_NAME_FORMAT_NOT_PRESENT
Definition: cellular_types.h:203
void(* CellularModemEventCallback_t)(CellularModemEvent_t modemEvent, void *pCallbackContext)
Callback used to inform about modem events.
Definition: cellular_types.h:789
void(* CellularUrcSignalStrengthChangedCallback_t)(CellularUrcEvent_t urcEvent, const CellularSignalInfo_t *pSignalInfo, void *pCallbackContext)
Callback used to inform about signal strength changed URC event.
Definition: cellular_types.h:766
void(* CellularSocketClosedCallback_t)(CellularSocketHandle_t socketHandle, void *pCallbackContext)
Callback used to inform that remote end closed the connection for a connected socket.
Definition: cellular_types.h:826
void(* CellularUrcPdnEventCallback_t)(CellularUrcEvent_t urcEvent, uint8_t contextId, void *pCallbackContext)
Callback used to inform about PDN URC events.
Definition: cellular_types.h:753
void(* CellularUrcNetworkRegistrationCallback_t)(CellularUrcEvent_t urcEvent, const CellularServiceStatus_t *pServiceStatus, void *pCallbackContext)
Callback used to inform about a Network Registration URC event.
Definition: cellular_types.h:740
void(* CellularSocketDataReadyCallback_t)(CellularSocketHandle_t socketHandle, void *pCallbackContext)
Callback used to inform that data is ready for reading on a socket.
Definition: cellular_types.h:813
void(* CellularSocketOpenCallback_t)(CellularUrcEvent_t urcEvent, CellularSocketHandle_t socketHandle, void *pCallbackContext)
Callback used to inform about the status of socket open.
Definition: cellular_types.h:801
CellularPktStatus_t(* CellularATCommandResponseReceivedCallback_t)(CellularHandle_t cellularHandle, const CellularATCommandResponse_t *pAtResp, void *pData, uint16_t dataLen)
Callback used to inform about the response of an AT command sent using Cellular_ATCommandRaw API.
Definition: cellular_types.h:726
void(* CellularUrcGenericCallback_t)(const char *pRawData, void *pCallbackContext)
Generic callback used to inform all other URC events.
Definition: cellular_types.h:778
struct CellularSocketContext * CellularSocketHandle_t
Opaque socket handle.
Definition: cellular_types.h:81
Represents A singly-lined list of intermediate AT responses.
Definition: cellular_types.h:473
struct CellularATCommandLine * pNext
Definition: cellular_types.h:474
char * pLine
Definition: cellular_types.h:475
Represents AT Command response.
Definition: cellular_types.h:483
CellularATCommandLine_t * pItm
Definition: cellular_types.h:485
bool status
Definition: cellular_types.h:484
Parameters involved in maintaining the context for the modem.
Definition: cellular_common_internal.h:111
Represents e-I-DRX settings.
Definition: cellular_types.h:572
uint8_t mode
Definition: cellular_types.h:580
uint8_t nwProvidedEdrxValue
Definition: cellular_types.h:612
uint8_t pagingTimeWindow
Definition: cellular_types.h:655
uint8_t rat
Definition: cellular_types.h:588
uint8_t requestedEdrxValue
Definition: cellular_types.h:611
Cellular Represents e-I-DRX settings Lists.
Definition: cellular_types.h:663
uint8_t count
Definition: cellular_types.h:665
Represents IP Address.
Definition: cellular_types.h:673
CellularIPAddressType_t ipAddressType
Definition: cellular_types.h:674
Modem information.
Definition: cellular_types.h:408
Represents a PDN config.
Definition: cellular_types.h:683
CellularPdnContextType_t pdnContextType
Definition: cellular_types.h:684
CellularPdnAuthType_t pdnAuthType
Definition: cellular_types.h:685
Represents status of a PDN context.
Definition: cellular_types.h:696
CellularIPAddress_t ipAddress
Definition: cellular_types.h:700
uint8_t contextId
Definition: cellular_types.h:697
uint8_t state
Definition: cellular_types.h:698
CellularPdnContextType_t pdnContextType
Definition: cellular_types.h:699
Public Land Mobile Network (PLMN) information.
Definition: cellular_types.h:387
Represents PSM settings.
Definition: cellular_types.h:493
uint32_t activeTimeValue
Definition: cellular_types.h:564
uint32_t periodicTauValue
Definition: cellular_types.h:515
uint8_t mode
Definition: cellular_types.h:498
uint32_t gprsReadyTimer
Definition: cellular_types.h:549
uint32_t periodicRauValue
Definition: cellular_types.h:532
Represents network service status.
Definition: cellular_types.h:454
CellularNetworkRegistrationStatus_t csRegistrationStatus
Definition: cellular_types.h:457
CellularRat_t rat
Definition: cellular_types.h:455
CellularPlmnInfo_t plmnInfo
Definition: cellular_types.h:459
CellularOperatorNameFormat_t operatorNameFormat
Definition: cellular_types.h:460
uint8_t psRejectionType
Definition: cellular_types.h:464
uint8_t csRejectionType
Definition: cellular_types.h:462
CellularNetworkRegistrationStatus_t psRegistrationStatus
Definition: cellular_types.h:458
uint8_t psRejectionCause
Definition: cellular_types.h:465
uint8_t csRejectionCause
Definition: cellular_types.h:463
CellularNetworkRegistrationMode_t networkRegistrationMode
Definition: cellular_types.h:456
Represents signal information.
Definition: cellular_types.h:440
uint8_t bars
Definition: cellular_types.h:446
int16_t rsrq
Definition: cellular_types.h:443
int16_t rsrp
Definition: cellular_types.h:442
int16_t ber
Definition: cellular_types.h:445
int16_t sinr
Definition: cellular_types.h:444
int16_t rssi
Definition: cellular_types.h:441
SIM Card information.
Definition: cellular_types.h:397
CellularPlmnInfo_t plmn
Definition: cellular_types.h:400
SIM Card status.
Definition: cellular_types.h:377
CellularSimCardState_t simCardState
Definition: cellular_types.h:378
CellularSimCardLockState_t simCardLockState
Definition: cellular_types.h:379
Represents socket address.
Definition: cellular_types.h:708
uint16_t port
Definition: cellular_types.h:710
CellularIPAddress_t ipAddress
Definition: cellular_types.h:709
Represents time.
Definition: cellular_types.h:422
uint8_t minute
Definition: cellular_types.h:426
uint8_t second
Definition: cellular_types.h:427
uint8_t month
Definition: cellular_types.h:423
uint8_t day
Definition: cellular_types.h:424
uint16_t year
Definition: cellular_types.h:428
uint8_t dst
Definition: cellular_types.h:430
int32_t timeZone
Definition: cellular_types.h:429
uint8_t hour
Definition: cellular_types.h:425