Hi Stan,
It's likely a daemon used for keyboard entry support. There is a work-around
that may be helpful. I've attached the details below.
Mike Akamine
Handspring DTS
When the Visor is placed in the serial cradle, it automatically detects this
state and starts up the keyboard daemon in the background, which opens the
serial port. This was done to facilitate keyboard support, but it gets in
the way of other serial applications. Since the serial port is open,
running a program that opens the serial port will fail with error 775 (port
already open). The work-around, which is a bit inconvenient, is to modify
the serial application to check if the app is running on the Visor and, if
so, call HsExtKeyboardEnable(false) to disable the keyboard daemon before
opening the serial port. The serial port is then closed and the app is free
to carry on as usual.
Example:
#include <HsExt.h>
...
// If on Handspring device, disable the keyboard
// thread before opening the serial library.
if (!FtrGet ('hsEx', 0, &ftrHSVersion))
HsExtKeyboardEnable (false);
...
(continue with SysLibFind(), SerOpen(), etc)
Note that there is no need to re-enable the keyboard support. It is
automatically re-enabled each time it is placed into the cradle.
A simple workaround is to have the app open the serial port BEFORE it is
placed in the cradle (e.g. start the app before putting it in the cradle).
The reason a soft-reset in the cradle also works is because the keyboard
daemon is started at the time the device is placed into the cradle, not just
from being in the cradle. Since the state hasn't changed since boot, the
daemon won't start.
-----Original Message-----
From: Stan Burton [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, March 27, 2001 3:49 PM
To: Palm Developer Forum
Subject: Serial Port Conflict
When I run my program, which opens the serial port, while my Visor is in its
cradle it claims the serial port is in use. When I run the same program
while holding the Visor in my hand it successfully opens the port. Obviously
I'm fighting with some other app for the serial port. Since it has to do
with the cradle, I'm guessing it is HotSync I'm fighting with. Is that
correct? What do I do about it?
Stan
--
For information on using the Palm Developer Forums, or to unsubscribe,
please see http://www.palmos.com/dev/tech/support/forums/
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/tech/support/forums/