2017.09.04 Update - 
I found a few small bugs, but as Juerg reports there probably is some sort of race condition which messes things up when doing the initial connect.  I have "seen" the publishPortNames null pointer exception - but its elusive.  I have a pan-tilt kit which was attached to my puter over night.  This morning, I was very surprised to see the port missing !  Arduino IDE could not see it either. Unplugging and plugging the cable back in fixed the issue.  But leaves me wondering .. hmmmm.  Smells of a hardware or operating system driver issue to me...

 


 

Tracking is worky for me ..  but I used a small pan-tilt-kit  (arduino + 2 servos + usb camera)

I also did not use a script but have been using the "main" method in the Tracking service, I created an equivalent script.  I could only get the Sarxos frame grabber to work with my usb camera - all the rest could only run my integrated camera on the laptop and not the pan-tilt kit.  (mileage will vary) ;)

[[home/GroG/workyTracking.py]]

CheekyMonkey's (aka Acapulco Rolf) version for I2C

[[home/CheekyMonkey/tracking-i2c.py]]

moz4r

6 years 7 months ago

My assistant testing inmoov things !

Core seem worky

I use setMinMax instead of map(0,180,x,y) because I had a lot of pid errors.

I notice this issue :

  i01.startEyesTracking(MyLeftPort,22,24)
  i01.startHeadTracking(MyLeftPort,12,13)
  i01.headTracking.faceDetect()
  i01.eyesTracking.faceDetect()

no worky, no errors, but tracking did not start

  i01.startHeadTracking(MyLeftPort,12,13)
  i01.headTracking.faceDetect()
 

this is ok. seem we cannot use 2 tracking at same time ?

 

Thanks for investigating moz4r .

Cute girl detector works ! :)

In the past 2 trackings worked at the same time.

When faceDetect was running, the pid controllers of each tracking had different values, such that, the eyes QUICKLY would move, and the head would more SLOWLY track ... 

It would be nice to get this to work as it did ...

I'll start trying with the InMoov service and see what happens..  I'll start thinking on how to make a pan-tilt inside a pan-tilt emulating head/eyes tracking in InMoov

GroG

6 years 7 months ago

tried again to follow program flow during the connection and saw, that some events only get logged with activated Debug log level.
 
I am still a bit confused that we have a log entry
  waiting for boardInfo lock.....
 
then we get a number of onByte events with values
  10 19 8 0 12 5 29
  
next is in my opinion a valid version message
  170 9 3 56 1 255 255 25 83 0 0
 
which is however logged as version null (might be a timing issue and we are faster with the log then with setting the version number)? 
 
and therafter the message
  waited 885 ms for Arduino ArduinoCom3 to say hello
 
the next version message received logs then "goodtimes" and we are fine.
 
not sure but could we - while having version == null - wait for the first onByte with value 170 before trying to interprete message content?
 
It would at least get rid of the somehow ugly message errors during the connection phase.