I have had another look at this from a code point of view, and I cannot see what is being done differently in the PLS driver. I guess the next step from here is to log the raw data being sent over the serial port for both versions so we can see what is different...


2009/5/27 Nicholas Hawes <N.A.Hawes@cs.bham.ac.uk>
Hi Toby,

> I fixed up the CMake lists file and have set the parity for all speed
> changes. Can you test that I did these correctly. Also I had a look at
> ChangeLaserSpeed method from the old pls driver and the only real
> difference
> I could see is the PLS version set the laser to configuration mode first.
> have added this to the LMS driver when in PLSMode so see if that helps.

I've just tested this (svn rev #7726), but I'm afraid it still doesn't
work. Connecting and transferring at 9600 still works fine, but attempting
to change speed gives the following output:

Laser initialising (/dev/ttyR6)
Connection attempt #0
connecting at 9600
warning : ioctl() failed while trying to get serial port info
sending LMS stop continuous mode [RequestLaserStopStream()]
listening on 6665
Listening on ports: 6665
waiting for acknowledge
connected at 9600!
laser operating at 9600; changing to 38400
sending configuration mode request to laser [SetLaserMode()]
waiting for acknowledge
warning : ioctl() failed while trying to get serial port info
laser ready
timeout on select (1)
warning : timeout
timeout on select (1)
warning : timeout
timeout on select (1)
warning : timeout
error   : laser not responding; exiting laser thread
laser shutdown

This happened about 5 times in a row, so I guess it's not a fluke. It's
interesting that it reports "laser ready". It seems to me that although
there are no errors reported when changing transfer speed, this step is
failing. I say this because when I re-run player, it re-connects at 9600
with no problems (making it look like it was at 9600 all along). Do you
want me to try any other tests? Or is the SICK connection process
documented somewhere so I can try to work out what is missing?



Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
is a gathering of tech-side developers & brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing, &
iPhoneDevCamp as they present alongside digital heavyweights like Barbarian
Group, R/GA, & Big Spaceship. http://p.sf.net/sfu/creativitycat-com
Playerstage-users mailing list

This email is intended for the addressee only and may contain privileged and/or confidential information