GSM communication with Huawei E3531

Hi guys,

I just received (last Friday) my very first emonBase and its three emonTH ; everything is working fine at the moment, I can easily monitor each sensor from the local emoncms. Well played by the way: everything is just plug and play, you’ve done a pretty good job.

As part of a company project I needed an internet connection without being dependent of an established network so I also bought a Huawei E3531 (the E3231 & E3131 models seeming more difficult to find in my country).

The usb modem is plugged and indicates an effective internet connection (3G), however when I try to check the USB stick status with : sudo python ./
I obtain : Can't find a Huawei HiLink device on
(I replaced the IP address into the script by the usb stick one - wasn’t ).

The weirdest part is that my connection seems to work. Indeed I can ping,,, etc.
Something might be different with the E3531 USB dongle that false the is_hilink function and prevent the script execution.
I tried to access (when plugged on my desktop) and I get a raw html page (containing some informations) which should return a 200 status code.

There might be a problem around request

I feel like I am missing something, does anyone have some advice for me ?


How far are you in your investigations?
What is the output of the following command:


If not already done, you may check this thread in the Raspberry forum.
Let us know.


Hi Walter,

Well, my dongle is kind of working well : my emonBase is sending data over GSM network to a Heroku server so I didn’t push any further my investigations, truth be told.

Here is the output of lsusb :
Bus 001 Device 015: ID 12d1:14dc Huawei Technologies Co., Ltd.

As you can see the target product is not “14db” but “14dc” which is the same operating mode but with SD card support added. It could come from this but I kinda doubt it.

Thank you for the link, but as stated before : my dongle is perfectly working. Only the python script isn’t seeing it as a Huawei HiLink device.

I also played a little with the python script and found that an exception was raised when trying to retrieve information from http://device.ip/api/device/information it looks like this :
Exception: Received error code 125002 for URL

Thanks again for you help,