You're using Sun Rays with a Solaris desktop?  Odd. Just kidding.

I've asked some questions to our utseriald engineer. I'll see what he responds with.

Niki W. Waibel wrote:
below ...
-------- Original-Nachricht --------
Datum: Tue, 29 Sep 2009 06:39:22 -0700
Von: Craig Bender <[email protected]>
An: SunRay-Users mailing list <[email protected]>
Betreff: Re: [SunRay-Users] 2fs serial port: baudrate?

Hi Niki,
Tim is wrong there, it's not true that only 9600 is possible. What you are seeing though is the safe mode of utseriald which is 9600, 8, N, 1.

okay.

However in order to use a different setting the program controlling the serial device much properly set the port speed. What program is controlling the device? I'm guessing it's a windows program?

it is ntpd (4.2.4p7) and its companion test program: 
ntp-4.2.4p7/parseutil/testdcf.c (on solaris, the ray server).

testdcf.c works okay with a real physical serial port on a pc with linux, but 
fails ie on the same hw/os with a prolific usb/serial converter (which supports 
only 75baud and up).

50baud setup is necessary. this is what testdcf.c does:
===
int baudrate = B50;
cfsetispeed(&term, baudrate);
cfsetospeed(&term, baudrate);
===
return codes of the cfsetXspeed() functions are okay, but i've doupts that 50 
baud setting works on the ray.

Typically in the windows world, developers rely on the end user to set the port speeds via control panel vs properly setting the IOCTL's in the code (noted exceptions are things like Palm software that you choose the baud, parity, etc through the program). This is a problem for remote serial connections as there really isn't mechanism for specifying the speeds and feeds over RDP.

... it is not about windows or RDP -- the device is directly attached to the 
ray, which displays a CDE solaris/sparc desktop.

The work-around in this case is to set the device to the known safe speed of utserial.

the device works with 50baud only. it is impossible to change that.

There's one other workaround which I haven't tried but was suggested by one of our developers. Basically you hold the port open with stty.

stty 50 < $DTDEVROOT/unit/dev/term/a

this stops the output of the test program:
===
nwai...@m5000-1:/tmp/ntp-4.2.4p7/parseutil $ ./testdcf /tmp/SUNWut/units/IEEE802.00144f3ba896/dev/term/a
  setting RTS/DTR for GudeADS Expert mouseCLOCK ...

  DCF77 monitor 4.11 - Copyright (C) 1993-2006, Frank Kardel

  PTB private....RADMLSMin....PHour..PMDay..DayMonthYear....P
  ---------------RADMLS1248124P124812P1248121241248112481248P
| -#################################......................... *** INCOMPLETE / ####################....................................... ===

there should be something else then # ...

A couple of things to remember:

When you hotdesk, the port is automatically reset to 9600, 8, N, 1
When you hotdesk, the ownership of the port changes
When you hotdesk, windows expects the speed, stop bits, parity, to be the same as when the session was opened. You're probably going to have to mess around with utaction to do a pkill on stty on session disconnect and then another stty command upon session connection to get the port right again.

sure. read that.

Give it a shot and let me know how it goes.

done.

niki

Niki W. Waibel wrote:
hi,

i am trying to run a DCF77 serial clock device (www.gudeads.de) on a
sunray 2fs (without success so far). it seems that device needs a baudrate
setting of 50.

http://ebberstwork.blogspot.com/2008/08/sun-ray-and-peripherals-page-2.html
states that only 9600 is possible.

can someone confirm / give more info?

thanks in advance,
niki
_______________________________________________
SunRay-Users mailing list
[email protected]
http://www.filibeto.org/mailman/listinfo/sunray-users

Reply via email to