OS2 World.Com Forum
2012.02.04, 08:10:08 *
Welcome, Guest. Please login or register.

Login with username, password and session length
News:
 
   Home   Help Search Login Register  
Pages: [1] 2 3
  Print  
Author Topic: USB 3G EVDO Modem  (Read 19929 times)
cytan
Full Member
***
Posts: 213


View Profile
« on: 2009.07.03, 06:16:02 »

Hi all,
   I have a Cricket USB 3G EVDO Modem that works on MacOSX and Win$ for sure. I googled and found that it should also work in Linux if configured with:
******************
[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &D2 +FCLASS=0
Modem Type = USB Modem
Baud = 460800
Modem = /dev/ttyACMO
ISDN = 0
; Phone = #777
; Username = **********@mycricket.com
; Password = cricket
*******************
See http://ubuntuforums.org/showthread.php?t=928957

I was hoping the usbcom.sys will see the modem and then I can just ppp and dial in. However, although usbcom.sys was installed to com5, doing a
   mode com5
gives a sys0021: The drive is not ready. It also gives the same error for com3 and com4 because I don't have anything installed to these com slots. mode com1 and mode com2 shows the serial ports as expected.

Is there anything else in config.sys which I need to enable? Or is this a lost cause?

cytan
Logged
melf
Global Moderator
Hero Member
*****
Posts: 502



View Profile
« Reply #1 on: 2009.07.03, 07:24:44 »

Hi Cytan.
To install the com-port you have to add, in your case  /N:COM5 after the usbcom.sys line in config.sys . For some more ideas take a look at http://www.os2voice.org/vnl/past_issues/VNL0606H/feature_1.html#usbcom8

Logged

/Mikael
cytan
Full Member
***
Posts: 213


View Profile
« Reply #2 on: 2009.07.03, 15:34:55 »

Hi Cytan.
To install the com-port you have to add, in your case  /N:COM5 after the usbcom.sys line in config.sys . For some more ideas take a look at http://www.os2voice.org/vnl/past_issues/VNL0606H/feature_1.html#usbcom8



I did have /N:COM5 after usbcom.sys. I think for some reason, OS/2 thinks that the modem is a storage device because after the modem is connected to its USB port:

(a) if connected before the PC is powered up, ecomstation boots and stops before eCenter starts. Disconnecting the modem allows eCenter to start.

(b) Running sysinfo/2 with the modem connected, it would hang at scanning for disks unless the modem is unplugged.

Do I need to REM out anything in my config.sys, or is there a newer patched version of usbcom.sys which I should use? I'm using version 1.1 dated 18/5/2000.

cytan
Logged
ivan
Hero Member
*****
Posts: 519


View Profile
« Reply #3 on: 2009.07.04, 02:51:04 »

Check the specs for your USB modem.  I say that because some of them come with the software on what appears as a cd drive.  If the one you have is like that you will need the USBMSD.ADD with /REMOVABLES:<some number greater than 1> in your config.sys.  It might also help if you put /V after USBCOM.SYS to see what is says on loading.

You could also try the USBCOM_PL2303.zip from hobbes in case it is using the pl2303 com chip.
Logged
cytan
Full Member
***
Posts: 213


View Profile
« Reply #4 on: 2009.07.04, 03:47:56 »

Check the specs for your USB modem.  I say that because some of them come with the software on what appears as a cd drive.  If the one you have is like that you will need the USBMSD.ADD with /REMOVABLES:<some number greater than 1> in your config.sys.  It might also help if you put /V after USBCOM.SYS to see what is says on loading.

You could also try the USBCOM_PL2303.zip from hobbes in case it is using the pl2303 com chip.

Thanks for the pointer: you hit it right on the head that there is some software on the usb modem. When I first plugged in the usb modem on both a win$ machine or a Mac, it allowed me to install the cricket software from  it.

Unfortunately, adding /REMOVABLES:2 to usbmsd.add or /CDS:2 to usbcdrom.add did not allow the com port to be recognized. I did do a /V to usbcomm.sys to check that it did install to a com port.

I also tried putting in params /MAX_FLOPPY and /REMOVABLE_AS_FLOPPY but that didn't help at all ... :-(.

Any other pointers?

cytan

Update:
I installed Chris Wohlgemuth's cwusbmsd.add and it works better and now disk scanning by refresh removable hardware does not hang. Installing USBCOM_PL2303.zip's usbcom.sys did not allow the usb modem to be seen. My fear is that a new usbcom.sys must be built in order for the modem to be seen :-(.

« Last Edit: 2009.07.04, 04:38:51 by cytan » Logged
ivan
Hero Member
*****
Posts: 519


View Profile
« Reply #5 on: 2009.07.05, 02:20:26 »

You may be correct about needing a modified usbcom.sys depending on the com chip in the device.

One thing, with it plugged in what does USB Resource Manager say about it via the device report - if it finds it at all you will need a new usb.ids file to give all the details about it (you use the latest usb.ids file for linux http://www.linux-usb.org/usb.ids).

If you get full details from it post it here then we can see what it is we're dealing with.
Logged
cytan
Full Member
***
Posts: 213


View Profile
« Reply #6 on: 2009.07.05, 03:04:02 »

Here's what the usbresource manager says:
****************************
<<< Device Description >>>
 Type            : 01
 USB Rev         : 110
 Class           : Reserved (0)
 Subclass        : Reserved (0)
 Protocol        : Reserved (0)
  Device Information is defined at interface Level
 Max. packetsize : 40
 Vendor  ID      : 1F28
 Product ID      : 0021
 Device Release# : 0000
 Strings:
  Manufacturer Name : Cal-comp E&CC Limited
  Product Name      : USB Micro SD Storage
  Serial number     : 215973138300
 Number of Configurations : 1

 Configuration 0 :
  Lenght     : 32
  Name       : <NONE>
  Value      : 1
  Attributes : 0xC0
  Power      : 100 mA
  Interfaces : 1

  Interface 0
   Alt Setting : 0
   Name        : <NONE>
   Class       : Storage Device
   SubClass    : SCSI transparent command set
   Protocol    : Bulk-Only Transport
   Endpoints   : 2

   Endpoint 0:
    Address     : 87
    Attributes  : 02
    Packetsize  : 0040
    Interval    : 0

   Endpoint 1:
    Address     : 08
    Attributes  : 02
    Packetsize  : 0040
    Interval    : 0
************************

It seems to see only the USB storage interface but no serial interface ...
Is this bad?
Note that vendor id 1F28 is NOT in the latest copy of usb.ids which I downloaded form the linux site!

cytan
Logged
cytan
Full Member
***
Posts: 213


View Profile
« Reply #7 on: 2009.07.05, 03:12:24 »

On a Mac, I get the following which is quite different from what OS/2 sees:
*************************
Full Speed device @ 3 (0x1D100000): .............................................   Communication device: "Cal-comp CDMA USB Modem A600  "
    Device Descriptor   
        Descriptor Version Number:   0x0110
        Device Class:   2   (Communication)
        Device Subclass:   0
        Device Protocol:   0
        Device MaxPacketSize:   64
        Device VendorID/ProductID:   0x1F28/0x0020   (unknown vendor)
        Device Version Number:   0x0000
        Number of Configurations:   1
        Manufacturer String:   1 "Cal-comp E&CC Limited "
        Product String:   2 "Cal-comp CDMA USB Modem A600  "
        Serial Number String:   0 (none)
    Configuration Descriptor   
        Length (and contents):   189
        Number of Interfaces:   7
        Configuration Value:   1
        Attributes:   0xA0 (bus-powered, remote wakeup)
        MaxPower:   500 ma
        Interface #0 - Communications-Control   
        Interface #1 - Communications-Data/Unknown Comm Class Model   
        Interface #2 - Vendor-specific   
        Interface #3 - Vendor-specific   
        Interface #4 - Vendor-specific   
        Interface #5 - Vendor-specific   
        Interface #6 - Mass Storage/SCSI 
****************************
Interface #6 which is the mass storage is what OS/2 sees, I think ...
cytan 
« Last Edit: 2009.07.05, 03:17:33 by cytan » Logged
ivan
Hero Member
*****
Posts: 519


View Profile
« Reply #8 on: 2009.07.07, 13:56:04 »

From what I've been able to find out this is a mode switching device i.e. it starts as a MSD and then switches to an ACM device.

The fact it shows more information on the MAC is because the software does the switching.  How we can do that with OS/2 is beyond me at the moment.  There is a program available for linux that will do it http://www.draisberghof.de/usb_modeswitch/ which might be portable to OS/2.

Other than that I think you are stuck with using it on the MAC or windows - if we get a port of virtualbox with USB support then it would be a different story.
Logged
cytan
Full Member
***
Posts: 213


View Profile
« Reply #9 on: 2009.07.07, 16:38:44 »

From what I've been able to find out this is a mode switching device i.e. it starts as a MSD and then switches to an ACM device.

The fact it shows more information on the MAC is because the software does the switching.  How we can do that with OS/2 is beyond me at the moment.  There is a program available for linux that will do it http://www.draisberghof.de/usb_modeswitch/ which might be portable to OS/2.

Other than that I think you are stuck with using it on the MAC or windows - if we get a port of virtualbox with USB support then it would be a different story.

Thanks for doing the hard work for finding out what the problem is ... Unfortunately, this really does suck  Sad

cytan
Logged
RobertM
Global Moderator
Hero Member
*****
Posts: 1935



View Profile WWW
« Reply #10 on: 2009.07.08, 00:22:24 »

There is a program available for linux that will do it http://www.draisberghof.de/usb_modeswitch/ which might be portable to OS/2.

Well, compiling it seems to require 32bit GCC 4.3.2 and libusb-0.1.12 - Paul already has GCC 4.4.0 compiled, so maybe this isnt something too difficult to recompile for OS/2?

And if so, would it properly interact with OS/2's USB subsystem/drivers?

Logged

|
|
Kirk's 5 Year Mission Continues at:
Star Trek New Voyages
|
|

cytan
Full Member
***
Posts: 213


View Profile
« Reply #11 on: 2009.07.08, 00:32:07 »

There is a program available for linux that will do it http://www.draisberghof.de/usb_modeswitch/ which might be portable to OS/2.

Well, compiling it seems to require 32bit GCC 4.3.2 and libusb-0.1.12 - Paul already has GCC 4.4.0 compiled, so maybe this isnt something too difficult to recompile for OS/2?



I was actually able to compile it with gcc3.3.5 and Yuri Dario has libusb-0.1.10a-os2.zip on hobbes (unless there's a later version, please tell me where to download), I cannot get it to link.

gcc -Zomf -o usb_modeswitch.exe usb_modeswitch.o -llibusbpp_s.a -llibusb_s.a

I keep getting:

F:\tmp\ldconv_libusbpp_s_a_4654a53be7e161a80.lib(os2.obj) : error LNK2029: "UsbQueryDeviceReport" : unresolved external
F:\tmp\ldconv_libusbpp_s_a_4654a53be7e161a80.lib(os2.obj) : error LNK2029: "UsbQueryNumberDevices" : unresolved external
F:\tmp\ldconv_libusbpp_s_a_4654a53be7e161a80.lib(os2.obj) : error LNK2029: "UsbBulkRead" : unresolved external
F:\tmp\ldconv_libusbpp_s_a_4654a53be7e161a80.lib(os2.obj) : error LNK2029: "UsbBulkWrite" : unresolved external
F:\tmp\ldconv_libusbpp_s_a_4654a53be7e161a80.lib(os2.obj) : error LNK2029: "UsbCtrlMessage" : unresolved external
F:\tmp\ldconv_libusbpp_s_a_4654a53be7e161a80.lib(os2.obj) : error LNK2029: "UsbOpen" : unresolved external
F:\tmp\ldconv_libusbpp_s_a_4654a53be7e161a80.lib(os2.obj) : error LNK2029: "UsbClose" : unresolved external

I think it looks like compiler version mismatch ... I'll have to investigate this further. If anyone else have any clues as to what to do I'd appreciate it. The lib files that are in Yurio's directory are:

libusb.la     libusb_s.a    libusbpp.la   libusbpp_s.a

cytan
Logged
ivan
Hero Member
*****
Posts: 519


View Profile
« Reply #12 on: 2009.07.08, 02:17:11 »

You need libusb-1.0.2 to go with usb-modeswitch-1.0.2.  From reading the 'porting' info in libusb it has been designed for porting to other OSs.  I also notice the config file for modeswitch has your device listed in it.

Looking for the information for you got me started in looking up information on a couple of USB Webcams I have - found linux drivers for one but they talk of compiling it into the kernel when I need a stand alone driver.  Not being a programmer I don't know where to start unlike hardware which is my 'thing'.

Logged
cytan
Full Member
***
Posts: 213


View Profile
« Reply #13 on: 2009.07.08, 06:57:22 »

Guess what, I actually managed to compile usb_modeswitch! It turns out the stuff that was missing came from usbcalls library which I downloaded from

http://en.ecomstation.ru/projects/usbtools/?action=down

Once I got that library everything compiled. But the problem now is that usb_modeswitch returns error -22 when it tries to send the message to the modem to try to switch it from storage mode to modem mode. I'll have to see what's wrong ...

Perhaps I really need to use the latest version of libusb rather than Yuri Dario's. I'll have to see if my skills are sufficient to fix this.

cytan

« Last Edit: 2009.07.08, 06:59:48 by cytan » Logged
cytan
Full Member
***
Posts: 213


View Profile
« Reply #14 on: 2009.07.08, 07:26:58 »

Ooo-hoo, I replaced the original USBRESMG.SYS with the one from ecomstation.ru (link above), the error message went away and the usb device actually switched from storage to modem!!!!!!

I did a mode com4 (which I had set in usbcom.sys), it actually showed something. Looks promising, will try to see if I can actually talk to it with ppp. Will keep you guys posted. Plus I'll upload usb_modeswitch.exe to hobbes later once I know that it actually works.

Time to go to bed (or quit while I'm ahead Smiley )

cytan
Logged
Pages: [1] 2 3
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.14 | SMF © 2006-2011, Simple Machines LLC Valid XHTML 1.0! Valid CSS!