Microcom ISPorte or DeskPorte and mgetty?

Gert Doering (gert@greenie.muc.de)
Fri, 31 Oct 1997 18:40:08 +0100


Hi,

Milos Wimmer wrote:
> Is anyone using a Microcom ISPorte or DeskPorte FAX modem and mgetty?
> I have a problem with running them...
> 
> When I receive a fax which is longer than 1 page, mgetty reportes after
> first page
> "0 lines received, 0 lines bad, 0 bytes lost"

Your modem is broken.

> and it finishes the session (BTW - the received page is complete and it is
> O.k.)

Let's see in the log file below.

> I think it is a problem of Microcom Modems 
 
I agree.

[..]
> I tried to change the flow control and other things in configuration of
> mgetty - without success...

It's not likely to be related to something you can change in mgetty, most
likely it's a modem firmware problem.

[..]
> 10/25 13:18:29 yD2 fax_wait_for: string 'CONNECT'** found **
> 10/25 13:18:29 yD2 sending DC2
> 10/25 13:18:29 yD2 fax_get_page_data: wait for EOL, got: [0a][ff][e0][0a]sf[a0][02][9b]5[00]
> 10/25 13:18:29 yD2 fax_get_page_data: receiving /var/spool/fax/incoming/ff451d575D2-+420-19-7222425.01...
> 10/25 13:18:37 yD2 fax_get_page_data: page end, bytes received: 14393
> 10/25 13:18:37 yD2 fax_wait_for(OK)

Fax reception fine.

> 10/25 13:18:37 yD2 got:[0d][0a]+FPS:1,0,0,0[0d]
> 10/25 13:18:38 yD2 fax_wait_for: string '+FPS:1,0,0,0'
> 10/25 13:18:38 yD2 page status: +FPS:1,0,0,0

Modem reports "0 lines received" (and so on). This is nonsense.

> 10/25 13:18:38 yD2 fax_wait_for: string '+FET:0'
> 10/25 13:18:38 yD2 got:[0a][0d][0a]OK[0d]
> 10/25 13:18:38 yD2 fax_wait_for: string 'OK'** found **
> 10/25 13:18:38 yD2 Page doesn't look good, request retrain (MPS)
> 10/25 13:18:38 yD2 fax_send: 'AT+FPS=2'

"0 lines received" sounds like some bad transmission problems, so mgetty
asks the other side to send the page again.

> 10/25 13:18:38 yD2 fax_wait_for(OK)
> 10/25 13:18:38 yD2 got:[0a]AT+FPS=2[0d]
> 10/25 13:18:38 yD2 fax_wait_for: string 'AT+FPS=2'
> 10/25 13:18:38 yD2 got:[0d][0a]ERROR[0d]

The modem doesn't support the AT+FPS comand.

> 10/25 13:18:38 yD2 fax_wait_for: string 'ERROR'
> 10/25 13:18:38 yD2 ABORTING: line='ERROR'
> 10/25 13:18:38 yD2 fax_send: 'AT+FDR'
> 10/25 13:18:38 yD2 fax_wait_for(CONNECT): already hangup!

And mgetty gives up.

> Thank you _very_ much in advance for any help or suggestion.

You could modify faxrecp.c, the following part:

  if ( fhs_details &&
  ( fhs_lc < 50 || fhs_blc > (fhs_lc/10)+30 || fhs_blc > 500 ) )
  {
  lprintf( L_WARN, "Page doesn't look good, request retrain
(MPS)" );
  fax_command( "AT+FPS=2", "OK", fd );
	}

to read:

  if ( fhs_details && fhs_lc > 0 && 
  ( fhs_lc < 50 || fhs_blc > (fhs_lc/10)+30 || fhs_blc > 500 ) )

- that would make this problem go away. On the other hand, if you
*really* have a problem that would manifest in "0 lines received" (I have
seen this!), you wouldn't notice.


I think I'll add something to make sure that on generic Rockwelloid modems
the line count variable isn't trusted.

gert
-- 
USENET is *not* the non-clickable part of WWW!
           //www.muc.de/~gert/
Gert Doering - Munich, Germany      gert@greenie.muc.de
fax: +49-89-3545980     gert.doering@physik.tu-muenchen.de
.