Find network name from given network code.
Find country name from given country code.
Converts feature value to string.
Parameters:
- feature -
GSM_Feature to convert.
Return: Pointer to static string with string for specified feature, NULL on failure.
Converts feature string to value.
Parameters:
- feature -
GSM_Feature string to convert.
Return: GSM_Feature value, 0 on failure.
Checks whether phone supports features.
Parameters:
- model -
Model information (you can get it using GSM_GetModelInfo).
- feature -
GSM_Feature to check for.
Return: True if phone has defined this feature.
Adds feature to phone configuration.
Parameters:
- model -
Model information (you can get it using GSM_GetModelInfo).
- feature -
GSM_Feature to check for.
Return: True if phone has defined this feature.
Reads manufacturer from phone.
Parameters:
- s -
State machine pointer.
- value -
Pointer where to store manufacturer name
Return: Error code.
Reads model from phone.
Parameters:
- s -
State machine pointer.
- value -
Pointer where to store model name
Return: Error code.
Reads model info from state machine.
Parameters:
- s -
State machine pointer.
Return: Pointer to phone information structure.
Reads firmware information from phone.
Parameters:
- s -
State machine pointer.
- value -
Pointer where to store revision text
- date -
Pointer where to store revision date
- num -
Pointer where to store revision number
Return: Error code.
Reads IMEI/serial number from phone.
Parameters:
- s -
State machine pointer.
- value -
Pointer where to store IMEI, NULL to ignore.
Return: Error code.
Gets date and time from phone.
Gets month when device was manufactured.
Gets product code of device.
Gets hardware information about device.
Gets PPM (Post Programmable Memory) info from phone (in other words for Nokia get, which language pack is in phone)
Gets SIM IMSI from phone.
Gets information about batery charge and phone charging state.
Reads signal quality (strength and error rate).
Gets network information.
Acquired display status.
GSM_NetworkInfo_State enum
Status of network logging
Values:
- GSM_HomeNetwork = = 1 -
Home network for used SIM card.
- GSM_NoNetwork -
No network available for used SIM card.
- GSM_RoamingNetwork -
SIM card uses roaming.
- GSM_RegistrationDenied -
Network registration denied - card blocked or expired or disabled.
- GSM_NetworkStatusUnknown -
Unknown network status.
- GSM_RequestingNetwork -
Network explicitely requested by user.
GSM_GPRS_State enum
Status of GPRS connection.
Values:
- GSM_GPRS_Detached = = 1 -
GRPS is detached.
- GSM_GPRS_Attached -
GRPS is attached.
Structure for getting the current network info.
Public Memberschar CID[10]
Cell ID (CID)
char NetworkCode[10]
GSM network code.
GSM_NetworkInfo_State State
Status of network logging. If phone is not logged into any network, some values are not filled
char LAC[10]
LAC (Local Area Code).
unsigned char NetworkName[15 *2]
Name of current network like returned from phone (or empty).
GSM_GPRS_State GPRS
GPRS state.
char PacketCID[10]
Cell ID (CID) for packet network
GSM_NetworkInfo_State PacketState
Status of network logging for packet data. If phone is not logged into any network, some values are not filled
char PacketLAC[10]
LAC (Local Area Code) for packet data.
Information about signal quality, all these should be -1 when unknown.
Public Membersint SignalStrength
int SignalPercent
Signal strength in percent.
int BitErrorRate
Bit error rate in percent.
GSM_ChargeState enum
Power source
Values:
- GSM_BatteryPowered = = 1 -
Powered from battery
- GSM_BatteryConnected -
Powered from AC, battery connected
- GSM_BatteryCharging -
Powered from AC, battery is charging
- GSM_BatteryNotConnected -
Powered from AC, no battery
- GSM_BatteryFull -
Powered from AC, battery is fully charged
- GSM_PowerFault -
Power failure
GSM_BatteryType enum
Power source
Values:
- GSM_BatteryUnknown = = 0 -
Unknown battery
- GSM_BatteryNiMH = = 1 -
NiMH battery
- GSM_BatteryLiIon -
Lithium Ion battery
- GSM_BatteryLiPol -
Lithium Polymer battery
Battery status
Public Membersint BatteryPercent
Signal strength in percent, -1 = unknown
GSM_ChargeState ChargeState
Charge state
int BatteryVoltage
Current battery voltage (in mV).
int ChargeVoltage
Voltage from charger (in mV)
int ChargeCurrent
Current from charger (in mA)
int PhoneCurrent
Phone current consumption (in mA)
int BatteryTemperature
Battery temperature (in degrees Celsius)
int PhoneTemperature
Phone temperature (in degrees Celsius)
int BatteryCapacity
Remaining battery capacity (in mAh)
GSM_BatteryType BatteryType
Battery type
GSM_DisplayFeature enum
Display feature
Values:
- GSM_CallActive = = 1 -
- GSM_SMSMemoryFull -
blinking envelope
- GSM_FaxCall -
- GSM_UnreadSMS -
- GSM_DataCall -
- GSM_VoiceCall -
- GSM_KeypadLocked -
Display features
Public Members
GSM_Feature enum
Phone features definition. This is usually used for things, which can not be determined on run time.
Values:
- F_CAL33 = = 1 -
Calendar,3310 style - 10 reminders, Unicode, 3 coding types
- F_CAL52 -
Calendar,5210 style - full Unicode, etc.
- F_CAL82 -
Calendar,8250 style - “normal”, but with Unicode
- F_RING_SM -
Ringtones returned in SM format - 33xx
- F_NORING -
No ringtones
- F_NOPBKUNICODE -
No phonebook in Unicode
- F_NOWAP -
No WAP
- F_NOCALLER -
No caller groups
- F_NOPICTURE -
No Picture Images
- F_NOPICTUREUNI -
No Picture Images text in Unicode
- F_NOSTARTUP -
No startup logo
- F_NOCALENDAR -
No calendar
- F_NOSTARTANI -
Startup logo is not animated
- F_POWER_BATT -
Network and battery level get from netmonitor
- F_PROFILES33 -
Phone profiles in 3310 style
- F_PROFILES51 -
Phone profiles in 5110 style
- F_MAGICBYTES -
Phone can make authentication with magic bytes
- F_NODTMF -
Phone can’t send DTMF
- F_DISPSTATUS -
Phone return display status
- F_NOCALLINFO -
Phone does not return call info
- F_DAYMONTH -
Day and month reversed in pbk, when compare to GSM models
- F_PBK35 -
Phonebook in 3510 style with ringtones ID
- F_PBKIMG -
Phonebook in 7250 style with picture ID
- F_PBKTONEGAL -
Phonebook with selecting ringtones from gallery
- F_PBKSMSLIST -
Phonebook with SMS list
- F_PBKUSER -
Phonebook with user ID
- F_6230iCALLER -
Caller groups like in 6230i
- F_RADIO -
Phone with FM radio
- F_TODO63 -
ToDo in 6310 style - 0x55 msg type
- F_TODO66 -
ToDo in 6610 style - like calendar, with date and other
- F_NOMIDI -
No ringtones in MIDI
- F_BLUETOOTH -
Bluetooth support
- F_NOFILESYSTEM -
No images, ringtones, java saved in special filesystem
- F_NOMMS -
No MMS sets in phone
- F_NOGPRSPOINT -
GPRS point are not useable
- F_CAL35 -
Calendar,3510 style - Reminder,Call,Birthday
- F_CAL65 -
Calendar,6510 style - CBMM, method 3
- F_WAPMMSPROXY -
WAP & MMS settings contains first & second proxy
- F_CHAT -
Phone with Chat settings
- F_SYNCML -
Phone with SyncML settings
- F_FILES2 -
Filesystem version 2
- F_NOFILE1 -
No filesystem version 1
- F_6230iWAP -
WAP, MMS, etc. settings like in 6230i - unknown now
- F_PROFILES -
Profiles support available
- F_SERIES40_30 -
Series 40 3.0
- F_SMS_FILES -
SMS are read from filesystem files like in Series 40 3.0
- F_3220_MMS -
MMS storage as in 3320
- F_VOICETAGS -
Voice tags available
- F_CAL62 -
Calendar,6210 style - Call,Birthday,Memo,Meeting
- F_NOTES -
Notes supported
- F_SMSONLYSENT -
Phone supports only sent/unsent messages
- F_BROKENCPBS -
CPBS on some memories can hang phone
- F_M20SMS -
Siemens M20 like SMS handling
- F_SLOWWRITE -
Use slower writing which some phone need
- F_SMSME900 -
SMS in ME start from location 900 - case of Sagem
- F_ALCATEL -
Phone supports Alcatel protocol
- F_OBEX -
Phone can switch to OBEX protocol from AT mode
- F_IRMC_LEVEL_2 -
Phone supports IrMC level 2 even if it doesn’t report it
- F_MODE22 -
Switching to OBEX mode is done using AT+MODE=22
- F_SMS_LOCATION_0 -
Locations of SMS memories start from 0
- F_NO_UCS2 -
Phone does not support UCS2 even if it reports it.
- F_FORCE_UTF8 -
Phone returns strings in utf-8 even if it reports GSM.
- F_SMS_SM -
Phone supports SM storage for SMS even if it does not report so.
- F_SMS_ME -
Phone supports ME storage for SMS even if it does not report so.
- F_XLNK -
Switching to OBEX mode is done using AT+XLNK.
- F_SUBMIT_SIM_ONLY -
Submit messages can be saved on SM memory only.
- F_PBK_UNICODE -
Prefer Unicode for phone book manipulations.
- F_SQWE -
Switching to OBEX mode using AT^SQWE=3.
- F_NO_ATOBEX -
Do not use OBEX/AT switching even if available.
- F_LENGTH_BYTES -
Length of text for contact is in bytes and not chars.
- F_BROKEN_CMGL -
CMGL does not list real locations for CMGR, these should be sequential.
- F_EXTRA_PBK_FIELD -
Phonebook has extra numeric field at the end.
- F_CKPD_NO_UNICODE -
Key presses can not be in unicode.
- F_CPROT -
OBEX switching using AT+CPROT even if phone does not report it properly.
- F_PBKFAVORITEMESSAGE -
Phonebook with favorite messaging numbers
- F_PBKNOPOSTAL -
No support for postal entry in phonebook.
- F_PBK_ENCODENUMBER -
Encode number in HEX charset.
- F_NO_CLIP -
Do not use CLIP (phone hangs on it).
- F_ENCODED_USSD -
USSD propmts and responses are encoded like PDU in SMS (packed 7-bit GSM encoding).
- F_USE_SMSTEXTMODE -
Phone has better support for SMS text mode (rather than PDU mode)
- F_CPIN_NO_OK -
Phone does not end CPIN reply with OK/ERROR.
- F_FOUR_DIGIT_YEAR -
Phone require four digit year in time.
- F_SMS_NO_ME -
Phone does not have a phone SMS memory even if it reports so.
- F_SMS_NO_SM -
Phone does not have a SIM SMS memory even if it reports so.
- F_SIEMENS_PBK -
Phone supports Siemens style phonebook even if it does not tell so.
- F_NO_ATSYNCML -
Disable AT+SYNCML probing.
- F_MOBEX -
Phone supports m-obex (usually Samsung phones).
- F_TSSPCSW -
Phone supports m-obex (usually Samsung phones) using AT$TSSPCSW=1.
- F_DISABLE_GETNEXT -
Disable GetNext* operations on the dummy phone.
- F_DISABLE_GETNEXTSMS -
Disable GetNextSMS operations on the dummy phone.
- F_DISABLE_CMGL -
CMGL hangs, so should not be used.
- F_NO_UTF8 -
Phone does not support UTF8 even if it reports it.
- F_SAMSUNG_UTF8 -
Samsung B2100 in UCS-2 mode provides a garbled UTF-8 instead.
- F_SMS_UTF8_ENCODED -
SMS text is always UTF-8 encoded.
- F_NO_STOP_CUSD -
Avoid forcibly stopping CUSD session.
- F_READ_SMSTEXTMODE -
Reading og SMSes in text mode.
- F_LAST_VALUE -
Just marker of highest feature code, should not be used.
Model identification, used for finding phone features.
Public Membersconst char * model
Model as returned by phone
const char * number
Identification by Gammu
const char * irdamodel
Model as used over IrDA
GSM_Feature features[GSM_MAX_PHONE_FEATURES+1]
List of supported features