GSM Codes unter Linux nutzen?

Stefan U. Hegner stefan at hegner-online.de
Sun Feb 14 13:12:47 CET 2016


Moin JBG,

... lange nicht mehr mit Dir gemailt. - Schön von Dir zu hören.

Am 13.02.2016 um 18:46 schrieb Jan-Benedict Glaw:
> [Probleme mit Modem-Manager-GUI beim senden von USSD/GSM Codes]
>> Im Syslog finde ich dann folgende Fehlermeldungen:
>>
>> 	Feb 13 12:42:11 mbiribuku ModemManager[934]: charset_iconv_to: assertion 'charset != MM_MODEM_CHARSET_UNKNOWN' failed
>> 	Feb 13 12:42:11 mbiribuku ModemManager[934]: mm_modem_charset_byte_array_append: assertion 'iconv_to !=	NULL' failed
> Kurz mal in die Sourcen gucken :)
... schön, wenn man das mal eben "kurz" so kann ...
> Anscheinend will man Daten vom Modem abholen und die via
> mm_modem_charset_byte_array_append() an einen Buffer hängen. Das
> wiederum nutzt charset_iconv_to(), um ivonv()-Datenstrukturen zu
> bekommen. charset_iconv_to() wiederum holt sich dazu das (vorher
> abgefragten bzw. gesetzten) Charset aus internen Datenstrukturen. Da
> allerdings ist noch der initiale Wert (MM_MODEM_CHARSET_UNKNOWN), mit
> dem man nichts anfangen kann.
>
>   Anscheinend gibt's nur einen Weg, worüber
> mm_modem_charset_byte_array_append() aufgerufen wird, ohne daß
> explizit ein Charset mitgegeben ist. Verfolgt man den Rückwärts, muß
> vorher ein "AT+CSCS"-Kommando fehlgeschlagen sein.
>
>   Du könntest selbst mal per Hand (--> minicom) absetzen:
>
> 	* AT+CSCS=?	(fragt unterstützte Charsets ab)
> 	* AT+CSCS?	(fragt das aktuelle Charset ab)
> 	* AT+CSCS=GSM	(Setzt das "GSM"-Charset)
>
> Herauskommen sollte eine Zeile, die mit "+CSCS:" beginnt. Die wertet
> der modemmanager aus. Kommt die nicht, wird das Charset nicht erkannt
> und Du landest in der von Dir gefundenen Fehlermeldung.
Also habe Minicom installiert und gestartet. Musste das allerdings als
root machen, denn der NetworkManager-Kram oder so greift ja schon drauf zu

    $ minicom -D /dev/ttyACM0
    minicom: Fehler beim Öffnen der Datei »/dev/ttyACM0«: Das Gerät oder
    die Ressource ist belegt

Dachte erst, dass da vielleicht eine Berechtigung fehlt, aber mein User
ist in "dialout":

    $ ls -la /dev/ttyACM0
    crw-rw---- 1 root dialout 166, 0 Feb 14 12:57 /dev/ttyACM0

Egal, zum Test meinetwegen auch so: # minicom -D /dev/ttyACM0, Lokales
Echo mit CTRL-A-E an und dann Feuer:

    AT+CSCS=?                                                                

                                                                             

    +CSCS: ("UCS2", "IRA", "HEX",
    "GSM")                                     
                                                                             

    OK                                                                       

    AT+CSCS?                                                                 

                                                                             

    +CSCS:
    "IRA"                                                             
                                                                             

    OK
    AT+CSCS="GSM"

    OK

Mit Ausnahme, dass ich aus Deinem AT+CSCS=GSM ein  AT+CSCS="GSM"
gemacht, scheint das gut zu laufen. ... Oder sind evtl. die
Anführungszeichen das Problem?

... Guter Ansatz, aber damit komme ich noch nicht weiter.

Gruß

Stefan.

-- 
Stefan U. Hegner
         <stefan at hegner-online.de>
              * * *
D-32584 Löhne --- good ole Germany
internet: http://www.hegner-web.de
              * * *
GPG-Key | 048D 7F64 0BEB 73B1 2725
F-Print | C05E 4F77 9674 EF11 55FE

-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 213 bytes
Beschreibung: OpenPGP digital signature
URL         : <http://lug-owl.de/pipermail/linux/attachments/20160214/c3aa4970/attachment.sig>


More information about the Linux mailing list