GSM Modem USSD Check Balance Getting CME Error 100

2019-06-24 05:39发布

I'm trying to check the SIM Card Balance via USSD using Huawei E1550 3G modem

But when i always send

   AT+CUSD=1,"*100#",15

I Get

   +CME Error: 100

And yes my modem support USSD because i have a dashboard application for the modem and i can check the balance and also recharge the SIM Card.

I'm using GSMComm library in C# i've also tried it in putty termainl but keep getting the same error

I searched for the error 100 and found that it's "Unknown Error" no really helpful :)

I did also tried changing text mode to pdu mode before sending but nothing changed

   AT+CMGF=0

Note: I've also tried

  AT+CUSD=1,"*100#"

the same error

and the response of

   AT+CUSD=?

is

  (0-2)

UPDATE

I've Converted the request "*100#" to 7bit "2A31303023" like this

 AT+CUSD=1,"2A31303023" ,15

response

 +CUSD: 2

I believe that the problem is about to be solved but what the response mean ?

2条回答
2楼-- · 2019-06-24 06:07

You have to encode the message to PDU format

gsmcomm PDUConverter can be used to do this

https://github.com/welly87/GSMComm/blob/master/PDUConverter/GsmComm.PduConverter/SmsPdu.cs

查看更多
ら.Afraid
3楼-- · 2019-06-24 06:12

I solve this problem by using atz it's like this

AT+CMGF=1
ATZ
At+cusd=1,"*100#",15

And it works great

查看更多
登录 后发表回答