summaryrefslogtreecommitdiff
path: root/src/gsmd
Commit message (Collapse)AuthorAgeFilesLines
* From 5b7c50fd08b8f76f761958c8a8243e6c23118fa3 Mon Sep 17 00:00:00 2001laforge2007-08-165-31/+180
| | | | | | | | | | | | | | | | | | | | | From: Andrzej Zaborowski <balrog@zabor.org> Date: Thu, 12 Jul 2007 14:26:46 +0200 Subject: [PATCH] Incoming SMS events This is a proposed patch to emit a gsmd event when a new SMS arrives, also modifies libgsmd-tool to display the notification. It makes sms_cb.c compile but only really implements the bits necessary to make it build and for the notifications to work. I chose AT+CNMI mode 1 (i.e. store messages in memory and report the location through +CMTI, rather than print the message right away through +CMT) because the parser doesn't support multiline unsolicited responses - in fact it can't support those because in a situation when a normal command is executing and an unsolicited response comes in (which is the case when sending a message to yourself) it is impossible for the parser to distinguish whether the line after the unsolicited response is part of that response or part of the command's response. git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2711 99fdad57-331a-0410-800a-d7fa5415bdb3
* From 294d27e78680d497da22e3a8ad679f50d1ba29e5 Mon Sep 17 00:00:00 2001laforge2007-08-164-84/+455
| | | | | | | | | | | | | | | | | | | | | | | | | | From: Andrzej Zaborowski <balrog@zabor.org> Date: Wed, 11 Jul 2007 16:11:10 +0200 Subject: [PATCH] SMS support in gsmd and in libgsmd. This adds the proper support for sms related calls in libgsmd and their implementation in gsmd. I assumed that conversion between data coding schemes is to be done on the client side because the {packing,unpacking}* calls were exported. TEXT mode support is non-functional, but the code only has to be filled in the right places to make it work, if it is ever needed. I had been lucky to be able to test with the different kinds of messages with exotic formats because I just got a bunch of network messages today (urging to top-up the credit). I tried to not modify the libgsmd api, although I would prefer to have a totally different api, possibly with synchronous calls that just return the result of an operation, for a exmaple a whole list of messages, rather than the client waiting for an unknown number of events each with one message. git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2710 99fdad57-331a-0410-800a-d7fa5415bdb3
* From: Andrzej Zaborowski <balrog@zabor.org>laforge2007-08-164-55/+86
| | | | | | | | | | | | | | | | | | | | | Date: Wed, 11 Jul 2007 16:03:16 +0200 Subject: [PATCH] Multiline commands support. Miscellaneous bugs. This adds support for commands like +CMGS and +CMGW that span mroe than one line and the lines can't be sent to modem as separate commands because every next line has to wait for a "> " prompt from modem before writing (otherwise beginnings of the lines get eaten). This patch also corrects a number of miscellaneous glitches that I have hit. I can split them each out if needed, but they are all quite obvious. The cms_error variable is introduced because there are CME and possibly other errors with the same codes, which resulted in that when I was sending a message and got error 42 ("congestion") on sending, openmoko-dialer asked for PIN because CMS event 42 happens to be PIN inquiry. The change in libgsmd-tool fixes the issue described by Philipp Zabel on the list, with usock locking up. git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2709 99fdad57-331a-0410-800a-d7fa5415bdb3
* * Add missing parameter to writealphaone2007-08-101-1/+1
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2686 99fdad57-331a-0410-800a-d7fa5415bdb3
* gsmd.c: Send \r before draining tty so the modem discards any garbage thatalphaone2007-08-101-0/+3
| | | | | | | was sent before. git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2685 99fdad57-331a-0410-800a-d7fa5415bdb3
* Add '2nd try' of the multiline parser:laforge2007-07-311-20/+50
| | | | | | | | | | | | | | Every extended response causes a flush of the previous mlbuf and starts collecting new response lines. Also, final_cb is now really only reached for final responses and the code for case 'A' won't overwrite the command buffer with the response anymore. I throw in '\n' as a separator for multi-line responses, and the callback is called for each response this way. (Philipp Zabel) git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2581 99fdad57-331a-0410-800a-d7fa5415bdb3
* in some cases the Qualcomm chip in the HTC Universal switches to V0 modelaforge2007-07-312-2/+7
| | | | | | | | | behind our backs. We need support for "0" instead of "OK" in the synchronous initial command and in the alive check. Note that this nearly duplicates the "OK" check in atcmd.c. (Philip Zabel) git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2580 99fdad57-331a-0410-800a-d7fa5415bdb3
* don't power off the phone at gsmd startup.laforge2007-07-311-2/+0
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2579 99fdad57-331a-0410-800a-d7fa5415bdb3
* the latest gsmd sends the alive detector's ATE0 to the GSM modem, evenlaforge2007-07-312-3/+5
| | | | | | | | | if interpreter_ready == 0. The attached patch sees to it that if interpreter_ready is zero, gsmd_alive_start is only called once the "AT-Command Interpreter ready" message was seen. (Philipp Zabel) git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2578 99fdad57-331a-0410-800a-d7fa5415bdb3
* Use ATH instead of ATH0 for QC compatibility (Philipp Zabel)laforge2007-07-311-1/+2
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2577 99fdad57-331a-0410-800a-d7fa5415bdb3
* Add higher baudrates: 230k, 460k, 921k (Alex Osborne)laforge2007-07-311-0/+3
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2576 99fdad57-331a-0410-800a-d7fa5415bdb3
* * add GTA02 machine type definition for gsmdlaforge2007-06-181-0/+1
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2294 99fdad57-331a-0410-800a-d7fa5415bdb3
* Ignore 1:1 echos of commands sent. This is mainly to work around modems thatlaforge2007-06-061-0/+5
| | | | | | | | are initially in 'E1' state, i.e. have echo enabled. This means that our first ATE0V1 command will get echoed before we receive OK. (Philipp Zabel) git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2180 99fdad57-331a-0410-800a-d7fa5415bdb3
* first implementation (ugly) of operator name querylaforge2007-06-031-4/+23
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2135 99fdad57-331a-0410-800a-d7fa5415bdb3
* * add timeout to initial modem detectionlaforge2007-06-021-25/+41
| | | | | | | | * make sure we only fork into background after the modem has been detected * clean up the loglevel of some log statements git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2131 99fdad57-331a-0410-800a-d7fa5415bdb3
* Add 'modem alive' detection. We inquire every five minutes if the modem is ↵laforge2007-06-023-4/+352
| | | | | | still alive. git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2130 99fdad57-331a-0410-800a-d7fa5415bdb3
* remove stupid default serial port /dev/ttyUSB0laforge2007-06-021-5/+17
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2128 99fdad57-331a-0410-800a-d7fa5415bdb3
* implement manual override for vendor/machine typelaforge2007-06-022-19/+54
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2127 99fdad57-331a-0410-800a-d7fa5415bdb3
* follow automake/libtool convention for building dlopen'ed moduleslaforge2007-06-021-0/+5
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2126 99fdad57-331a-0410-800a-d7fa5415bdb3
* add machine / vendor plugin infrastructure (Philip Zabel)laforge2007-06-0210-16/+752
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2123 99fdad57-331a-0410-800a-d7fa5415bdb3
* gsmd: power off the phone when gsmd starts up to have a consistent starting ↵mickey2007-05-161-2/+2
| | | | | | point git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1964 99fdad57-331a-0410-800a-d7fa5415bdb3
* make CLIP/COLP numbers zero-terminated (Closes: #525)laforge2007-05-011-2/+4
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1892 99fdad57-331a-0410-800a-d7fa5415bdb3
* * compile fix (include sys/select.h) to make it build on *BSD (Holger Freyther)laforge2007-04-291-0/+1
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1870 99fdad57-331a-0410-800a-d7fa5415bdb3
* zero LAC and CI if +CREG is 0 / 2 (and not 1). (Closes: #454)laforge2007-04-251-1/+2
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1827 99fdad57-331a-0410-800a-d7fa5415bdb3
* The standard says that the parameter is not optional. Some modemslaforge2007-04-211-1/+1
| | | | | | | (correctly) return "ERROR" in response to "AT+COPS". (Philipp Zabel) git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1812 99fdad57-331a-0410-800a-d7fa5415bdb3
* parse numeric responses for RING, NO CARRIER and BUSY (Philip Zabel)laforge2007-04-151-5/+8
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1766 99fdad57-331a-0410-800a-d7fa5415bdb3
* * add (still incomplete) SMS and phonebook support from Sean Chianglaforge2007-04-152-0/+436
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1765 99fdad57-331a-0410-800a-d7fa5415bdb3
* add parsing of +CMS errors according to GSM 07.05 (Philipp Zabel)laforge2007-03-281-1/+13
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1529 99fdad57-331a-0410-800a-d7fa5415bdb3
* fix GSM signal strength parsing (Closes: 291)laforge2007-03-281-2/+1
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1520 99fdad57-331a-0410-800a-d7fa5415bdb3
* * add CTZV stublaforge2007-03-101-4/+11
| | | | | | | * dont escape % sign in non-format strings git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1317 99fdad57-331a-0410-800a-d7fa5415bdb3
* * include stdio from talloc.hlaforge2007-03-106-7/+377
| | | | | | | | | | * add new generic extended-response parser * add operator cache, using ext-resp-parser * add proper detection of supported %CPI modes and select highest available one * add %CTZV to vendor_ti init string git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1316 99fdad57-331a-0410-800a-d7fa5415bdb3
* * properly implement PIN/PUK handling throughout gsmd/libgsmd/utillaforge2007-03-102-5/+46
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1314 99fdad57-331a-0410-800a-d7fa5415bdb3
* * deal correctly with 'gsm power cycling'laforge2007-03-101-3/+6
| | | | | | | * consider % as prefix for extended response, even though non-standard git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1313 99fdad57-331a-0410-800a-d7fa5415bdb3
* fix typo in last commitlaforge2007-03-091-1/+1
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1309 99fdad57-331a-0410-800a-d7fa5415bdb3
* move CTZR into vendor_ti.c, since not all GSM Modems support it (Philipp Zabel)laforge2007-03-092-2/+2
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1307 99fdad57-331a-0410-800a-d7fa5415bdb3
* * introduce ciphering indication parsing and event generationlaforge2007-03-082-1/+38
| | | | | | | | * stubs for volume control * add data structure resembing gsm device state git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1281 99fdad57-331a-0410-800a-d7fa5415bdb3
* make AT%CPI parse tolerant to empty fieldslaforge2007-03-081-2/+3
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@1279 99fdad57-331a-0410-800a-d7fa5415bdb3
* Introduce new '-F' switch to enable/disable hardware flow controllaforge2007-01-311-3/+15
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@641 99fdad57-331a-0410-800a-d7fa5415bdb3
* - Add copyright / license notice to all source code fileslaforge2007-01-139-18/+210
| | | | | | | - Add some 'get operator name' skeleton git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@546 99fdad57-331a-0410-800a-d7fa5415bdb3
* - use talloc (of samba project) to debug memory allocations and simplify codelaforge2007-01-126-53/+240
| | | | | | | | | | | - introduce new ucmd_alloc() function - add DTMF support to gsmd, libgsmd and gsmd-util - fix crash of libgsmd when events don't have handlers registered - implement call progress for TI modem - split modem init string in separate commands to fit our parser git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@544 99fdad57-331a-0410-800a-d7fa5415bdb3
* add the 'talloc' memory allocator (from samba3)laforge2007-01-102-1/+1134
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@534 99fdad57-331a-0410-800a-d7fa5415bdb3
* gsmd is supposed to go into 'sbin' not 'bin'laforge2007-01-081-1/+2
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@518 99fdad57-331a-0410-800a-d7fa5415bdb3
* add sms skeletonlaforge2007-01-081-0/+182
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@517 99fdad57-331a-0410-800a-d7fa5415bdb3
* add missing file (thanks to Mickey)laforge2006-10-251-0/+3
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@121 99fdad57-331a-0410-800a-d7fa5415bdb3
* - clean up header files (all in include/gmsd now)laforge2006-10-2415-190/+307
| | | | | | | | - finish vendor plugin support - add call progress indicator and signal quality unsolicited support to vendor_ti.c git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@120 99fdad57-331a-0410-800a-d7fa5415bdb3
* first working revision of gsmd, libgsmd and libgsmd-toollaforge2006-10-233-22/+67
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@115 99fdad57-331a-0410-800a-d7fa5415bdb3
* more gsmd/libgsm implementationlaforge2006-10-233-16/+53
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@114 99fdad57-331a-0410-800a-d7fa5415bdb3
* gsmd passthrough mode now workinglaforge2006-10-228-47/+109
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@109 99fdad57-331a-0410-800a-d7fa5415bdb3
* - fix parsing of unsolicited codes laforge2006-10-224-14/+24
| | | | | | | - fix segfault due to missing zero-filled option in 'struct option' array git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@102 99fdad57-331a-0410-800a-d7fa5415bdb3
* add logging infrastructure to gsm daemonlaforge2006-10-226-387/+120
| | | | git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@98 99fdad57-331a-0410-800a-d7fa5415bdb3
personal git repositories of Harald Welte. Your mileage may vary