'GSM Modem USSD Check Balance Getting CME Error 100

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 ?



Solution 1:[1]

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

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

And it works great

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Arman Yeghiazaryan