7

I am on Kubuntu 20.04, I have a usb-connected fax modem, and I installed the following packages:

efax

efax-gtk

sl-modem-daemon

I ran: sudo gpasswd --add shmuel dialout

The modem is identified by VirtualBox as: Conexant System, Inc. USB HSF Modem

When I send a fax I get this output:

Socket running on port 9900
efax-0.9a: 19:30:51 opened /dev/ttyS0
efax-0.9a: 19:30:58 sync: dropping DTR
efax-0.9a: 19:31:02 sync: sending escapes
efax-0.9a: 19:31:08 Error: sync: modem not responding
efax-0.9a: 19:31:08 failed page /home/shmuel/Downloads/poa.pdf.001
efax-0.9a: 19:31:08 finished - no response from modem

I ran

lsusb

And I saw this entry:

Bus 001 Device 010: ID 0572:1300 Conexant Systems (Rockwell), Inc. SoftK56 Data Fax Voice CARP

Settings of efax-gtk look like this

enter image description here

/dev looks like this

enter image description here

enter image description here

1
  • It works on Windows 7
    – shmu
    Commented Jun 16, 2020 at 5:30

3 Answers 3

3

It's been some years since I did this process myself (also on Kubuntu, fortuitously), but a quick glance at your screenshot shows an absence of either dev/modem or dev/ttySHSF0 is suggesting to me that you either haven't installed the kernel module for your device, or if so then it is failing to load. I'm not sure what your thought process was regarding the sl-modem-daemon (for SmartLink chipsets, not Conexant), but I would start by uninstalling it.

It wouldn't surprise me to learn that sometime in the past decade that the driver had been upstreamed into the generic linux kernel, but since I have no concrete information to that effect, I'll lay out the process that I took back then and hope that it remains workable.

First, the driver download site and accompanying documentation:

While I don't suppose there's anything to lose by attempting to install one of the Debian packages they offer, the fact that they are for a 32-bit architecture and you likely have a 64-bit computer is a strong argument for skipping straight to Option C (extract tarball and compile manually) in my opinion. At least that source code is for 64-bit systems; considering all of it is over a dozen years old (written for Linux kernel 2.6 as opposed to version 5.4 in use by Kubuntu), I'd honestly be surprised if it compiles without needing at least a little patching. At least if you're going down that road though, I can speak to it being correct for the specific modem you have and the Linux distribution you're running. Best wishes.

2
  • 2
    Most posters I saw from recent years who reported success with their fax modems said that they didn't need to install drivers, but they needed to identify the right device.
    – shmu
    Commented Jun 7, 2020 at 14:37
  • 2
    Patching a manually compiled package from 10 years ago is probably beyond my level of linux competence
    – shmu
    Commented Jun 16, 2020 at 5:33
3
  • maybe it is still bound / attached to virtualbox while you try to send fax frome efax ( make sure nothing except you accesses /dev/ttyXXX with lsof)

  • the "real" device might also be /dev/modem /dev/ttySHSF0 /dev/ttySAC0 /dev/ttyUSB0 , sometimes there are multiple /dev/ttyusb serials exported by the hardware ( HSxPA / LTE Sticks) which even might to be "switched" to real identiy (e.g. from SD-Card-Reader to modem by usbmodeswitch

  • it might be related to udev , check it's logs ( permissions seem to work as you can write ) UDev Permission Entry Example

  • there s a ubuntu wiki page describing how how to install connexant drivers

  • to read/write from userland , your user has to be in the dialout group

one good trick to see where it goes would be ( on a root shell -> e.g. sudo -i or prepend sudo to dmesg) :

  • UNPLUG DEVICE
  • dmesg -c → to clear kernel log ringbuffer
  • PLUG DEVICE
  • dmesg

this should give you a little dirty talk and the device name e.g. :

[ 5277.997045] usbcore: registered new interface driver usbserial_generic
[ 5277.997158] usbserial: USB Serial support registered for generic
[ 5278.002889] usbcore: registered new interface driver pl2303
[ 5278.004349] usbserial: USB Serial support registered for pl2303
[ 5278.004403] pl2303 1-3.1.3:1.0: pl2303 converter detected
[ 5278.006801] usb 1-3.1.3: pl2303 converter now attached to ttyUSB0

10
  • 1
    I have lots of ttyS entries, from ttyS0 to ttyS31. Which one to choose? I pasted a screenshot into my post.
    – shmu
    Commented Jun 7, 2020 at 3:11
  • you might open a terminal and enter dmesg shortly after you plugged it , there might be an entry "mystrange devicename attached to /dev/ttyUSB " if you are lucky , there are many ways to find out who is who on /dev/ttyXXX , a simple try in modern systems would be: udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSB0) , but just read the answers here : unix.stackexchange.com/questions/144029/… Commented Jun 16, 2020 at 11:13
  • 1
    ( your user has to be in the dialout group wiki.debian.org/SystemGroups ) also the ttyS0 does not necesarily have to be the port ( e.g. your mainboard has one ) and also it is showing up wuickly after boot (0.4sec) .. the conexant page is bit outdated -> help.ubuntu.com/community/DialupModemHowto/Conexant , alternate source: linuxant.com/drivers/hsf/index.php Commented Jun 16, 2020 at 19:43
  • 1
    Nope, it looks like I had bad luck. Linux seems to have dropped support for the HSF type of softfax modem.
    – shmu
    Commented Jun 20, 2020 at 18:27
  • 1
    I left a message for you in the chat
    – shmu
    Commented Jun 22, 2020 at 3:43
1

I had recently the need to install a faxmodem. I chose a Conexant USB device. Very little information is available to Linux users, causing me many hours of frustration. But I succeeded. In the event this may be of help, this is what I did and why...

1/ Use the terminal commands only.

2/ Connect the USB device. Verify your machine sees the device by entering: lsusb.
If recognised, proceed. If not, obtain a different device.

3/ List all tty ports by entering: ls -l /dev/tty*.

My system showed the device was connected to ttyS0.

4/ Install efax-gtk from flatpak.

You can try the deb version. But on my machine, the deb version had menus and icons too small to read.

5/ Open efax, file menu,settings, and enter the ttyS0 as the port to use.

6/ Attempt to connect to the fax device by clicking the standby button on the efax main page. IF the port is correct, you will connect.

In my case, the ttyS0 was incorrect, and I could find no means to tell me why. So I had to do the following...

7/ Install wvdial by entering: sudo apt install wvdial.

8/ Configure wvdial by entering: sudo wvdial.conf /etc/wvdial.conf

This will tell you which is the real port to use. In my case, the real port is ttyACM0. Complete the config. (ACM = abstract control module)

9/ Open efax again, and change the setup to ttyACM0.

10/ The fax should now respond. Attempt the standby again.

11/ IF you get a message about no permissions, you need to change the permission for ttyACM0, by entering: sudo chown $USER: /dev/ttyACM0

12/ All should be working now. IF you want a fax log, enter the directory and name in the efax setup menu.

update...

13/ IF everything in efax appears to be correctly setup, and you cannot send faxes because of timeout during transmission, then chances are you need to alter the efax initialisation string. Use the settings menu, and see if the parameters default string begins with &FE. Change this parameter to &F0 or &F1 or &F2 (depending upon your fax card) (in my case, &F1 worked).

I hope this is of help to people.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .