Internal PNP modem and Linux

Hi! Linux doesn't recognize my internal Phoenix 56IVER modem (uses ESS ES-56X chipset , supports v.90, x2, software upgradable).
The customer service guy *seem* to think it is NOT a Winmodem (that is, not UART-less modem, but the manufacturer home page [] calls it "controllerless" modem, whatever it is), but doesn't want to give any support on Linux.
Yeah, it does work under Win 98. Here is what I tried to do/ what I know:
1. read all appropriate HOWTOs (serial etc) and hardware compatibility lists, modem and chipset makers pages
2. tried setserial
3. disabled "PNP-aware OS" in BIOS and then tried setserial
4. used isapnptools package, then see tried setserial
5. tried to enforce Win 98 settings for IRQ and addresses by seteserial (it uses COM4 under Win 98)
6. tried adjusting /cua? /ttyS? /modem settings and looked for available interrupts, cat /proc/*, dmesg | grep tty etc
7. tried hitting it with a sledgehammer  ;-)

The funny things are:
a. at bootup Linux mentions "PNP board ID <here goes the number> detected" (that number refers to the modem board - same as reported by isapnptools, that also give out the correct maker name and modem name - ESS)
b. detected/recommended settings by isapnptools are THE SAME as used by Windoze 98 (!).

I would be incredibly grateful if somebody answers this.


Who is Participating?

Improve company productivity with a Business Account.Sign Up

alfarrisConnect With a Mentor Commented:
Based on the manufacturer specs, I can tell you that this modem
won't work under Linux. The specs specifically mention 'drivers' for windows 95/98/NT in addition to the other software it ships
with. That and the fact that the ESS is a DSP chipset leads me to believe that some/all Modem functions are handled in software. From the looks of the specs, it's not as dumb as a WinModem, but still requires software drivers to operate.  
What does isapnp display at boot up,

antoshkaAuthor Commented:
Comment to strmtrpr:

I do not know whether it is isapnp that gives out the message at bootup, since I installed the isapnptools later and start them using pnpdump > /etc/isapnp.conf etc commands.

I am not sure whether any kind of PNP software is in the kernel (Redhat 5.1,kernel 2.0.34), but it seems likely since the message that looks (APPROXIMATELY [I do not have my computer now in front of me]) like "Board has an identity ?? ?? ?? ?? " . The ?? stand for a bunch of 2 digit numbers (hex?). There are actually 2 of these messages (for modem and the PNP sound card - I also had trouble with it - solved only using commercial OSS driver).

I now remember, that the numbers reported in this startup  message are the same as the ones given in the pnpdump output.

I can give you the exact numbers (and the message itself) later when I get to my computer. BTW, none of the software (pnptools ot setserial) complain about anything (neither does the modem - just doesn't work  ;-( )

The 14th Annual Expert Award Winners

The results are in! Meet the top members of our 2017 Expert Awards. Congratulations to all who qualified!

If at bootup, Linux mentions about board ID...

Make sure at your /etc/isapnp.conf you uncomment this line:

# ACT Y  <--- uncomment this

then save it, and then from shell type 'isapnp isapnp.conf'

shutdown -r now

and now your modem should work.

Here is what I did to test if my modem has worked, it's kinda stupid test, but it worked.

% more /dev/ttyXX (in my case, ttyS0 <-- com1)

then I heard 'click' from my modem :)

after you are sure that your modem is working, make a symbolic link from /dev/modem to /dev/ttyXX

% ln -s /dev/ttyXX /dev/modem

antoshkaAuthor Commented:
Comment to kobo:

I am sorry to disappoint you and I am very grateful for your help, but I DO read man pages before experimenting with any software (yeah, however boring it may sound). So, evidently, I saw a warning from the isapnptools author about ACT Y, since that is the command that actually applies the changes. Thanx for the test advice though. I'll try it today.

this is what I did to get my modem working.
1. pnpdump >> isapnp.conf then uncomment the lines you  need double check your file ACT Y
2. in the boot script that starts the serial ports I entered the lines  
isapnp  /etc/isapnp.conf
    setserial /dev/???   irq??  autoconfig
    setserial /dev/???  spd_hi
    setserial /dev/???
just replace the ??? with your info
I entered the lines right around where the script was initializing the serial ports.
now depending on what distribution on LINUX your are using the boot scripts may have this
line already in it and maybe it just has to be commented out.
let me know if you need clarification on the instructions, I will be glad to help.

antoshkaAuthor Commented:
Comment to strmtrpr:
I tried something similar to what you advised before, and tried exactly what you advised yesterday - no result (no *positive*  result, that is). As I understand, the chances that I DO have a Winmodem are getting higher and higher (the only method of determining it, as I was told, is the following: if one tries everything and it doesn't work than it is a Winmodem).
I still have some minor doubts about the following: I tried mostly /dev/cua3 (since in Win98 the modem is on COM4). I tried ttyS3 too, not being sure about the difference. Does it make sense to try the rest of the /dev/cua? and /dev/ttyS? ?

Thank you for your help
I would try your ttys?? I read somewhere that these are you output devices where the cua are your input devices.
My modem doesn't use the same settings in linux and windows95. give it a try
let me know what happens
If you have a soundcard... remove it from your computer, run your isapnptools and detect it. Then, reinstall your soundcard and reconfigure it.

antoshkaAuthor Commented:
Dear _HAL_ and strmtrpr:

To HAL: I tried removing the sound card and then detecting the modem. Nothing changed, isapnp tools detect it etc (as described in my previous messages), but it doesn't work anyway.

To strmprtr: I tried ttyS? and the other cua? (all, but the one that  has the mouse). isapnptools and setserial work, but modem doesn't (as before). I use the recommended settings is isapnptools (I also tried some others, especially those of IRQ and memory addresses)and  they do not give any error messages, as befoire. Neither does setserial (I ran it with or without auto_irq and config options).

I am ALMOST convinced it is a WinModem (or some nasty variety of it). Now, since W98 crashes all the time(2-3 a day), I plan to try NT 4.0. According to the modem manual, chances that it will work under NT are not 100%. I'll try. I've heard that the new beta of NT 5.0 has recently been released (I only have old and expired beta from last year).

Thank you very much, and if you know anything else I would really appreciate hearing it, because I really like Linux and prefer it to NT.

antoshkaAuthor Commented:
It still doesn't work, BUT, when I was trying to make it work under NT once it got detected as standard modem type and it worked => it means that the modem is definitely NOT a WinModem, so it should work under Linux.
But it doesn't.

Any more ideas?

Thank you very much again.

antoshkaAuthor Commented:
comment to talwyn:

I was aware of that, but luck was on my side - my modem had drivers available for NT. So it works.

Unfortunately, no such luck with Linux: in some newsgroup I eventually found the message that my modem is MOST PROBABLY some new kind of winmodem, and so life sucks.

Thanks for the comment
get ppp-setup at - it autoconfigures your modem - and connects you to your isp after some prompts. - should work - it always do :)
antoshkaAuthor Commented:
Thanks hallstein, I'll try this utility
antoshkaAuthor Commented:
comment to hallstein: this program does nothing, that is , it has nothing to do with hardware configuration, I tried it (with no results) and then looked on the code - it just remebers phone numbers etc. Thanks for help anyway.

   Is there any reason why a kernel module could not be written to support Win modems?  Seems like we need to get on the ball to do this.... anyone know how to get the specs for a winmodem?

  Basically as I understand it the Bios code is run by the OS instead of the Uart ....

Antoshka... try contacting the manufacturer agaiin and see if you can't get some software specs... tell 'em you're interested in writing support for it into Linux and that they can have the source code to the driver when you're finished.   It should be a short project.

antoshkaAuthor Commented:
Adjusted points to 538
antoshkaAuthor Commented:
to alfaris:

Thank you very much for your help.

I am closing this question, since it was around for several months already. I got a lot of new information and that was fun too. Modem is working under NT and I am sort of happy about it. I will probably upgrade to NT 5.0/Win 2000 soon, and it will stop blue-screening me every once in a while (Do I believe that? Hmmm...) You get all the credit for the answer ;-)

Also, I have one more aspect of this issue that is not entirely clear, I read somewhere that some modems "require special drivers for high speed operation and/or for special features".
As you correctly pointed out this modem is "harder" than a classic WinModem, but still "soft" enough for not working under Linux.
I also looked at the ESS webstite, where they call this modem a "controlerless modem". References to DSP and "designed for Win" are also there.
So, I am wondering what are the chances of it working at least as a standard modem (low speed, no fax, voice etc)? See, I got one good sign of that: when I was trying to make it work under NT (it was no-BS thing too), once it got recognized as a "standard mdoem type" - and it worked. I later screwed up this setup and succeded in setting it as ES56X (had to reinstall NT for that...). I think(!), the DSP driver was not loaded, but NT pnp support was.

Now, I am not longer sure that really happened or maybe NT loaded the driver and didn't mention it.

What do you think about it?

I'd say try to continue messing around with pnpdump. Each time you make a change, try checking all of the ports /dev/cua*, /dev/ttyS*, but use a terminal program like minicom in an attempt
to send simple AT commands. There's also a slim chance that you could create a Win95 boot disk that would load the modem drivers,
and initialize them and then run something like loadlin to bootstrap linux. I recall that some pnp cards require that you boot into dos or 95 just to load the drivers and then you can
'warm boot' into linux once the card had properly been initallized (I'd change your bios back to PnP OS installed btw.)

do a search for 'loadlin' if you have problems finding it let me know.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.