linux_huawei_unlocker icon indicating copy to clipboard operation
linux_huawei_unlocker copied to clipboard

Failure in unlock Huawei E303: Could not identify active port

Open Sucharitha81 opened this issue 12 years ago • 6 comments

I am running on Ubuntu 13.04. I was trying to unlock my Huawei E303 dongle. I found this application by posting a question on How to unloack a USB Broadband Modem ? at askubuntu.com.

I tried to unlock using this application. But the result was Could not identify active port.

In my system python-serial was already installed. There was python2.7 installed. I followed all the steps in README.

This is good work done by you. Wish you all the best to improve this further !

Below is the terminal dialogue :

`dumindumahawela@dumindumahawela:~$ su Password: root@dumindumahawela:/home/dumindumahawela# cd /home/dumindumahawela/Downloads/linux_huawei_unlocker-0.3 root@dumindumahawela:/home/dumindumahawela/Downloads/linux_huawei_unlocker-0.3# ./unlocker.py


Huawei modem unlocker
By Neil McPhail and dogbert
This is Free Software as defined by the GNU GENERAL PUBLIC
LICENSE version 2

This software comes with NO WARRANTY
This software can damage your hardware
Use it at your own risk

Not all modems can be unlocked with this software.
Users have reported problems with the following devices:
    E220, E353
Attempting to unlock these devices with this software is not
recommended. I hope to fix this in a later release.

If you wish to proceed, please type YES at the prompt

YES Trying to find which port is the active modem connection. Please be patient as this can take a while.

Could not identify active port. root@dumindumahawela:/home/dumindumahawela/Downloads/linux_huawei_unlocker-0.3#`

Sucharitha81 avatar Nov 24 '13 09:11 Sucharitha81

Thanks for taking the time to make a bug report.

I haven't heard of any previous successes or failures for that modem model. Can you confirm that you have placed a "foreign" SIM in the modem and that your network manager application is not set to automatically try to connect?

mcphail avatar Nov 24 '13 10:11 mcphail

This dongle is given by Mobitel (Sri Lanka) . I inserted a SIM of Dialog (Sri Lanka) . Network manager was not set to " Connect Automatically".

Further : I also having installed modemmanager application. This dongle works with its own SIM. unlocker.py can detect my other dongle which is already unlocked.(In a separate attempt)

On 11/24/13, Neil McPhail [email protected] wrote:

Thanks for taking the time to make a bug report.

I haven't heard of any previous successes or failures for that modem model. Can you confirm that you have placed a "foreign" SIM in the modem and that your network manager application is not set to automatically try to connect?


Reply to this email directly or view it on GitHub: https://github.com/mcphail/linux_huawei_unlocker/issues/5#issuecomment-29152378

Sucharitha81 avatar Nov 24 '13 10:11 Sucharitha81

I've been doing a bit of research about this model. It seems to be set up as a psuedo-ethernet device rather than a standard USB modem. I think it is possible to use some usb-modeswitch magic to make it work like a standard USB modem but I don't think my script can compute the unlock code for these devices anyway.

As far as I am aware, there is no freely available algorithm for computing unlock codes on the E3... devices. If anyone knows of one, please send me a link!

Sorry I can't help just now but consider this a work-in-(slow)-progress,

mcphail avatar Nov 24 '13 16:11 mcphail

Thanks for your kind intervention on my matter. I need your help from your knowledge. Can it use with usbmodeswitch with unlock code that are given in certain websites.?

I tried it with 5 attempts with Mobile Partner software which contain a Unlocking function. But wasnt succeed.

IMEI number of this dongle is 868988011401780 and a website given me the code 49311704. I tried with this software : http://nacitasyifa.web.id/content/download-mobile-partner-linux-20003-can-sms-and-voice-call-too

thanks On 11/24/13, Neil McPhail [email protected] wrote:

I've been doing a bit of research about this model. It seems to be set up as a psuedo-ethernet device rather than a standard USB modem. I think it is possible to use some usb-modeswitch magic to make it work like a standard USB modem but I don't think my script can compute the unlock code for these devices anyway.

As far as I am aware, there is no freely available algorithm for computing unlock codes on the E3... devices. If anyone knows of one, please send me a link!

Sorry I can't help just now but consider this a work-in-(slow)-progress,


Reply to this email directly or view it on GitHub: https://github.com/mcphail/linux_huawei_unlocker/issues/5#issuecomment-29158748

Sucharitha81 avatar Nov 24 '13 16:11 Sucharitha81

Without having one of these devices I cannot be sure. Nor do I know what the vendor-supplied firmware will be doing to things. If you are feeling brave you could try this as root:

usb_modeswitch -v 0x12d1 -v 0x14fe -M "55534243123456780000000000000011062000000100000000000000000000"

I have no idea whether this will help, break your modem, set fire to your home or kill your pet. It is taken from http://www.draisberghof.de/usb_modeswitch/.

Edit: This won't unlock your modem but might make it show up as a standard usb modem device.

mcphail avatar Nov 24 '13 17:11 mcphail

usb_modeswitch will not kill pets :-) but i am also not 100% sure of it

the port detection failurre can be some of these:

  1. you didn't ran it as sudo
  2. your stick has modem+sdcard, so USB1 will BREAK the script cuz will not respond to AT commands.

You can surround line 73 function like

def identifyPort():
    print "Trying to find which port is the active modem connection."
    print "Please be patient as this can take a while.\n\n"
    for p in glob.glob('/dev/ttyUSB*'):
        try:
            print "Testing port " + p
            ser = serial.Serial(port = p,
                    timeout = 15)
            ser.write('AT\r\n')
            activity = ser.read(5)
            if activity == '':
                print "\tNo activity\n"
                ser.close()
                continue
            
            print "\tActivity detected\n"
            ser.close()
            return p
        except Exception as e:
            pass
    return ''

erm3nda avatar Aug 24 '17 16:08 erm3nda