Adding MultiModem-USB Support

Hello,

I recently found this old USB1 56k modem I would like to use. It is a MultiMobileUSB from MultiTech. Model Number MT5634MU. My hope was that it would be supported by umodem(4) but support for this device does not seem to be included as nothing is created in /dev I have no clue what would be required to add support for this or if it's even feasible. I'm not sure if this is the proper place to ask or discuss getting this device supported. I can provide additional info. As I am very new still to FreeBSD I may need more guidance to do so.

Thank you
Marc
 
When plugged in, what do you see in the output of usbconfig (run as root)? And what does dmesg say about it (the last lines after plugging in)?
 
Here is the output of usbconfig

Code:
ugen1.1: <Intel EHCI root HUB> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen0.1: <0x8086 XHCI root HUB> at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA)
ugen1.2: <vendor 0x8087 product 0x8001> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen1.3: <vendor 0x8087 product 0x0a2a> at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA)
ugen1.4: <CN0FHKK772487569CTE0A00 IntegratedWebcamHD> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)
ugen1.5: <Broadcom Corp 5880> at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA)
ugen0.2: <Multi-Tech Systems, Inc. MultiModemUSB> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (400mA)

And the last line output of dmesg after i plugged it in


Code:
ugen0.2: <Multi-Tech Systems, Inc. MultiModemUSB> at usbus0

That's the only line generated in dmesg
 
If no new entries /dev/cuaUn and /dev/ttyUn appear, it won´t work. You need usb.ko, umodem.ko and ucom.ko for this. Module usb.ko is loaded by default. Please check if # kldstat shows that umodem.ko and ucom.ko are loaded. If not, add modem_load="YES" and ucom_load="YES" to /boot/loader.conf and reboot.
 
I have added umodem_load="YES" already. I'll add ucom_load="YES" as well but I think it's gets loaded automatically when umodem is loaded since when I tried to load them manually (to confirm) using kldload it told me they where already loaded.
 
grondinm said:
it told me they where already loaded.
If both umodem.ko and ucom.ko are loaded, then you should get additional entries /etc/cuau. and /etc/ttyu. when you plug it in. Using pstat -t (as root) should show an entry ttyu for it.
If not, this may not be a hardware modem, but a so-called winmodem or softmodem. These modems come with closed-source drivers, FreeBSD does not support them for that reason. You're out of luck then.
 
On cellular modems with ProductID (PID) missing from usbdevs you must add the ProductID to usbdevs and u3g.c
So I have to wonder if there is an accompanying modem driver like 'umodem.c' that might also might need the PID entry.
You defiantly need the PID entry for usb device to work. So T-Daemon is on the right path.
This may sound complicated but it is not. Do the text edits (backing up original first) and compile your new kernel.
 
OK I grepped thru the source code for another supported MultiTech modem. Searched for the PID to that device to see if any other source files are involved. They are not.
grep -r "0xf101" /usr/src

So edit usbdevs -build kernel- and look for device under /dev/cuaU*
Next config PPP.
 
I must add some opinion here. You are really fighting an uphill battle here but what worries me is the modem spec.
V.90 and K56Flex
I seem to still have a bad taste in my mouth from these two.
V.92 was the one that you want. K56Flex i dunno. Something sounds fishy there.
My old slogan was "If its not USR trash it".

edit: Found a good article about k56flex.
 
In reading the manual it is a k56flex model. They did have a firmware flasher for it.
So this was a 'pre-V.90' 56K modem.
So if its been upgraded to V.90 that would be ideal.

Are you planning on connecting to an ISP with this modem? That would make V.90 more desirable.
Point to Point with two of these it wouldn't matter as much.
 
The product ID (F103) of modem is missing:

Without product ID the device driver, if supports the device, can't attach to device.

You could try adding the product ID neneath line 3371 in
/usr/src/sys/dev/usb/usbdevs
Code:
product MULTITECH MT5634MU 0xf103  MT5634MU MultiMobileUSB
and build and install new kernel.
Thank you for this. This is just what I was hoping for. Wish I would have checked this before I was walking out the door to come to work. Now I must wait 8hrs before I can try this out.
In reading the manual it is a k56flex model. They did have a firmware flasher for it.
So this was a 'pre-V.90' 56K modem.
So if its been upgraded to V.90 that would be ideal.

Are you planning on connecting to an ISP with this modem? That would make V.90 more desirable.
Point to Point with two of these it wouldn't matter as much.

My plan is simply to use it to connect to BBS systems that are still being maintained with dial-up access. I will have to look into upgrading it i suppose...just hope don't turn it into a brick.
Tho I can see the links for the Linux FlashWizzard I od not see any firmware files...I will probably just leave it be as long as i can get into a few bbs's just for fun that's all i care about.
 
Sadly adding the entry to usbdevs does not seems to have worked. Unless i did something wrong. Is there a way to query the device to confirm it's ID is F103?


I was sure this had high chance of working as it does work with linux using the CDC ACM module.
 
Back
Top