USR Prof.Mess. Firmw. 12.2.8 (unmotivated hang-ups solved?)

Kurt Garloff (garloff@kg1.ping.de)
Tue, 20 Oct 1998 17:32:14 +0200



--YZ5djTAD1cGYuMQK
Content-Type: text/plain; charset=us-ascii

Hi,

JFYI:
I downloaded the latest German USR 56k Professional Message Modem firmware
from 3Com. (ftp://ftp.3com.de/pub/USRobotics/modem/56k_professional_message).

It's revision is 12.2.8. I had some problems with unmotivated hangups before
(12.2.5) and the Doc tells me this is solved, now: (From "readme.txt")

 Behobene Fehler/Probleme
 ------------------------
 - Abbrueche beim Faxempfang und waehrend der Aufzeichnung von
   Nachrichten.

I have no experience yet, whether it helps.

Gert, do you know, if the +FCC=1,5,0,2,0,0,0,0,X bug is also solved by this
revision? I'm gonna try the next days ...


BTW:
I created a little program, aa, which does enable self-mode (AT+MCA=1) on
USR 56k Prof Mess / Sportster Mess Plus. I put it in the shutdown script, so
whenever Linux goes down, the self mode is enabled. vgetty uses ATZ to
init the modem and self mode is disabled upon ATZ, so vgetty works fine when
started. (Self mode docu can be found in smp_sdk.pdf in the above directory.)

Source code is appended. (It's the first time I did program a terminal
device, so the termbits may be bogus, but it works fine here.)

-- 
Kurt Garloff <K.Garloff@ping.de>  (Dortmund, FRG)
PGP key on http://student.physik.uni-dortmund.de/homepages/garloff
Unix IS user friendly - it's just selective about who its friends are!

--YZ5djTAD1cGYuMQK
Content-Type: text/plain; charset=us-ascii
Content-Description: aa.c
Content-Disposition: attachment; filename="aa.c"

/* aa.c */
/*
 * Enable Auto-Answer mode of USR Message Plus/ Prof. Mess. Modem
 */
/*
 * Kurt Garloff <K.Garloff@ping.de>, 98/10/20 
 */

#include <stdio.h>
#include <fcntl.h>
#include <termios.h>

char buf[64]; 

struct termios tios;

int main ()
{
   int err;
   int fdes = open ("/dev/ttyS1", O_RDWR|O_NONBLOCK);
   memset (buf, 0, 64);
   if (!fdes) return 1;
   fcntl (fdes, F_SETFL, O_RDWR);
   tcflush (fdes, TCIOFLUSH);
   tcgetattr (fdes, &tios);
   tios.c_cflag |= CRTSCTS | CS8; tios.c_cflag &= ~(PARENB|CSTOPB); 
   tios.c_iflag |= ICRNL; tios.c_lflag |= ICANON; tios.c_lflag &= ~ECHO;
   err = tcsetattr (fdes, TCSAFLUSH, &tios);
   err = write (fdes, "at+mca=1\r");
   err = read (fdes, buf, 63); 
   if (err > 0) { buf[err] = 0; printf ("%s", buf); };
   close (fdes);
};

--YZ5djTAD1cGYuMQK--