SteveG wrote 34 lines
>
> But when I involve a USB connected serial port (which I have to do if
> I undock my laptop) I get all kinds of strange errors, basically no
> communications at all! I have two different ones but both are
> problematic (ATEN RS232USB and SUNIX 4-port ComHub).
>
> Do you know of any problems related to SynaSer via USB connected RS232
> adapters on Windows7 or WindowsXP?
>
> Right now I am moving the Lazarus application around to different
> computers (real and virtual) and different COM ports (real or USB
> connected) to try to figure out why it is so hard making it always
> work. And this is when I found that I tried ports that were already
> reserved for the virtual machine or actually unplugged without
> SdpoSerial saying anything about it....
>
Dont know if its any help at all, but I am also having serial port
problems using USB adaptors.
I am developing under Ubuntu using synaser and have found that I can
only connect to the port about once every 5 or so trys.
Cant say if it is directly related SynaSer/ USB adaptor though, as I
dont have an onboard one to test against.
side notes -
if I use 'serial port terminal' it connects every time.
if I use 'cat /dev/ttyUSB0 > /tmp/test.txt' it tends to not connect more
than it connects (similar to synaser)
Suggests it may be necessary to 'reset' the port somehow before using
I have a small sample program for testing if anybody wants it
It is very strange how Windows handles the com ports... Somehow there seems to be some hidden deeper issues that makes some components not work in some situations. Examples:
We used a 3rd party serial component in Delphi for many years without real problems (WinNT4, Win95, Win2000 and now XP).
But then we encountered a case where the component simply would not trigger any reception events. This happened on a Panasonic wireless gadget that was an extension of a WinXP PC with a touch screen and a few extras like a serial port. We used the serial port for an RFID reader and it simply would not read. If I added a timer and let it poll the component for data then I could make it work for this simple case, but that was a real kludge..
So then I modified the program to use AsyncPro instead and it started working. Don't know why the difference.
Later, around 2008, I had another problem with an automation program communicating with a machine tool via RS232. At that time I *was* using AsyncPro, and it worked just fine on my laptop when connected to the machine. But the same software running on the customer's PC:s refused to communicate. These PC:s had *real* com ports and were running XP. So as a test I switched this program over to using the old serial component we used before, and amazingly then it worked just fine!
Now I have problems with USB attached serial ports and lazarus programs using SdpoSerial as described in this thread. In this case the comm works fine as long as I use the *real* com port in my docking station. But won't work if I use one of the 4 com ports in my newly bought SUNIX ComHub UTS2009P4 or for that matter if I use a USB single channel com port adapter from ATEN. But the latter can be used if it is not transferred to the virtual machine where I develop the software.
Really very confusing, and I was not planning on doing research into this. I was programming a comm application for data collection....
Do you think there is any chance of using my old serial component (housed in a single pas file) with lazarus?
It is a Delphi component and I don't know what you need to do in order to use it with lazarus. I realize that it would not work as a cross-platform unit but could be interesting for testing.
In the end of course what I need to do is to get it working on the embedded ARM system with Linux.
Bo Berglund
Developer in Sweden