I don't have experience with Vicon, but can you get the tracker definition within the built-in VRPN Server?
Maybe the name you are using to connect isn't the correct one, or the server is somehow inaccessible.
I would advise you to give a try with a simple VRPN client application to see if the communication with the server is ok.
Em sexta-feira, 19 de abril de 2013 00h11min09s UTC+1, jim smith escreveu:
Hi everyone,
Sorry if this is a dumb question but could some one explain what I'm doing wrong here?
Setup:
1) A system on the network running Vicon Tracker 1.2 (which I have confirmed is reachable, and from what I understand has a VRPN server built in).
2) I have replaced our tracking configuration file (see changes below) to track the user's head and wand using our Vicon system rather than DTrack.
ORIGINAL works:
<?xml version="1.0" encoding="UTF-8"?>
<?org-vrjuggler-jccl-settings configuration.version="3.0"?>
<configuration xmlns="http://www.vrjuggler.org/jccl/xsd/3.0/configuration" name="Configuration" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.vrjuggler.org/jccl/xsd/3.0/configuration http://www.vrjuggler.org/jccl/xsd/3.0/configuration.xsd">
<elements>
<input_manager name="Input Manager" version="2">
<driver_path>/usr/lib64/gadgeteer/drivers/</driver_path>
<driver>DTrack_drv</driver>
</input_manager>
<alias name="VJWand" version="1">
<proxy>Wand Proxy</proxy>
</alias>
<position_proxy name="Wand Proxy" version="1">
<device>DTrackDevice0</device>
<unit>0</unit>
<position_filters>
<position_transform_filter name="Position Filters" version="1">
<pre_translate>0.0</pre_translate>
<pre_translate>0.0</pre_translate>
<pre_translate>0.0</pre_translate>
<pre_rotation>0.0</pre_rotation>
<pre_rotation>0.0</pre_rotation>
<pre_rotation>0.0</pre_rotation>
<custom_scale>1.0</custom_scale>
<device_units>1.0</device_units>
<post_translate>0.0</post_translate>
<post_translate>0.0</post_translate>
<post_translate>0.0</post_translate>
<!---
<post_rotation>-90.0</post_rotation>
<post_rotation>-90.0</post_rotation>
<post_rotation>90.0</post_rotation>
<post_rotation>-45.0</post_rotation>
-->
<post_rotation>0.0</post_rotation>
<post_rotation>0.0</post_rotation>
<post_rotation>0.0</post_rotation>
</position_transform_filter>
</position_filters>
</position_proxy>
<position_proxy name="Head Proxy" version="1">
<device>DTrackDevice0</device>
<unit>1</unit>
<position_filters>
<position_transform_filter name="Position Filters" version="1">
<pre_translate>0.0</pre_translate>
<pre_translate>0.0</pre_translate>
<pre_translate>0.0</pre_translate>
<pre_rotation>0.0</pre_rotation>
<pre_rotation>0.0</pre_rotation>
<pre_rotation>0.0</pre_rotation>
<custom_scale>1.0</custom_scale>
<device_units>1.0</device_units>
<post_translate>0.0</post_translate>
<post_translate>0.0</post_translate>
<post_translate>0.0</post_translate>
<!--
<post_rotation>-90.0</post_rotation>
<post_rotation>-90.0</post_rotation>
-->
<post_rotation>0.0</post_rotation>
<post_rotation>0.0</post_rotation>
<post_rotation>0.0</post_rotation>
</position_transform_filter>
</position_filters>
</position_proxy>
<digital_proxy name="Button 0 Proxy" version="1">
<device>DTrackDevice0</device>
<unit>0</unit>
</digital_proxy>
<digital_proxy name="Button 1 Proxy" version="1">
<device>DTrackDevice0</device>
<unit>1</unit>
</digital_proxy>
<digital_proxy name="Button 2 Proxy" version="1">
<device>DTrackDevice0</device>
<unit>2</unit>
</digital_proxy>
<digital_proxy name="Button 3 Proxy" version="1">
<device>DTrackDevice0</device>
<unit>3</unit>
</digital_proxy>
<digital_proxy name="Button 4 Proxy" version="1">
<device>DTrackDevice0</device>
<unit>4</unit>
</digital_proxy>
<digital_proxy name="Button 5 Proxy" version="1">
<device>DTrackDevice0</device>
<unit>5</unit>
</digital_proxy>
<analog_proxy name="Analog 0 Proxy" version="1">
<device>DTrackDevice0</device>
<unit>0</unit>
</analog_proxy>
<analog_proxy name="Analog 1 Proxy" version="1">
<device>DTrackDevice0</device>
<unit>1</unit>
</analog_proxy>
<alias name="VJHead" version="1">
<proxy>Head Proxy</proxy>
</alias>
<alias name="VJButton5" version="1">
<proxy>Button 0 Proxy</proxy>
</alias>
<alias name="VJButton4" version="1">
<proxy>Button 1 Proxy</proxy>
</alias>
<alias name="VJButton0" version="1">
<proxy>Button 2 Proxy</proxy>
</alias>
<alias name="VJButton1" version="1">
<proxy>Button 3 Proxy</proxy>
</alias>
<alias name="VJButton2" version="1">
<proxy>Button 4 Proxy</proxy>
</alias>
<alias name="VJButton3" version="1">
<proxy>Button 5 Proxy</proxy>
</alias>
<alias name="VJAnalog0" version="1">
<proxy>Analog 0 Proxy</proxy>
</alias>
<alias name="VJAnalog1" version="1">
<proxy>Analog 1 Proxy</proxy>
</alias>
<dtrack name="DTrackDevice0" version="1">
<receive_port>5000</receive_port>
<server_name>DTRACK SERVER'S IP</server_name>
<command_port>PORT NUMBER</command_port>
<min>-1.0</min>
<max>1.0</max>
<!-- <device_host>vismini</device_host> -->
</dtrack>
</elements>
</configuration>
with a NEW VRPN config:
<?xml version="1.0" encoding="UTF-8"?>
<?org-vrjuggler-jccl-settings configuration.version="3.0"?>
<configuration xmlns="http://www.vrjuggler.org/jccl/xsd/3.0/configuration" name="Configuration" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.vrjuggler.org/jccl/xsd/3.0/configuration http://www.vrjuggler.org/jccl/xsd/3.0/configuration.xsd">
<elements>
<input_manager name="Input Manager" version="2">
<driver_path>/usr/lib64/gadgeteer/drivers/</driver_path>
<driver>VRPN_drv</driver>
</input_manager>
<alias name="VJHead" version="1">
<proxy>Head Proxy</proxy>
</alias>
<alias name="VJWand" version="1">
<proxy>Wand Proxy</proxy>
</alias>
<position_proxy name="Head Proxy" version="1">
<device>Vrpn</device>
<unit>1</unit>
<position_filters>
<position_transform_filter name="Position Filters" version="1">
<pre_translate>0.0</pre_translate>
<pre_translate>0.0</pre_translate>
<pre_translate>0.0</pre_translate>
<pre_rotation>0.0</pre_rotation>
<pre_rotation>0.0</pre_rotation>
<pre_rotation>0.0</pre_rotation>
<custom_scale>1.0</custom_scale>
<device_units>1.0</device_units>
<post_translate>0.0</post_translate>
<post_translate>0.0</post_translate>
<post_translate>0.0</post_translate>
<!--
<post_rotation>-90.0</post_rotation>
<post_rotation>-90.0</post_rotation>
-->
<post_rotation>0.0</post_rotation>
<post_rotation>0.0</post_rotation>
<post_rotation>0.0</post_rotation>
</position_transform_filter>
</position_filters>
</position_proxy>
<position_proxy name="Wand Proxy" version="1">
<device>Vrpn</device>
<unit>0</unit>
<position_filters>
<position_transform_filter name="Position Filters" version="1">
<pre_translate>0.0</pre_translate>
<pre_translate>0.0</pre_translate>
<pre_translate>0.0</pre_translate>
<pre_rotation>0.0</pre_rotation>
<pre_rotation>0.0</pre_rotation>
<pre_rotation>0.0</pre_rotation>
<custom_scale>1.0</custom_scale>
<device_units>1.0</device_units>
<post_translate>0.0</post_translate>
<post_translate>0.0</post_translate>
<post_translate>0.0</post_translate>
<!---
<post_rotation>-90.0</post_rotation>
<post_rotation>-90.0</post_rotation>
<post_rotation>90.0</post_rotation>
<post_rotation>-45.0</post_rotation>
-->
<post_rotation>0.0</post_rotation>
<post_rotation>0.0</post_rotation>
<post_rotation>0.0</post_rotation>
</position_transform_filter>
</position_filters>
</position_proxy>
<vrpn name="Vrpn" version="2">
<tracker_server>Tracker0@IP ADDRESS</tracker_server>
<button_server>Button0@IP ADDRESS</button_server>
<analog_server>Analog0@IP ADDRESS</analog_server>
<tracker_count>2</tracker_count>
<button_count>0</button_count>
<analog_count>0</analog_count>
<min>-1.0</min>
<max>1.0</max>
<position_filters>
<position_transform_filter name="Position Filters" version="1">
<pre_translate>0.0</pre_translate>
<pre_translate>0.42672</pre_translate>
<pre_translate>0.0</pre_translate>
<pre_rotation>90.0</pre_rotation>
<pre_rotation>0.0</pre_rotation>
<pre_rotation>0.0</pre_rotation>
<custom_scale>1.0</custom_scale>
<device_units>1.0</device_units>
<post_translate>0.0</post_translate>
<post_translate>0.0</post_translate>
<post_translate>0.0</post_translate>
<post_rotation>0.0</post_rotation>
<post_rotation>0.0</post_rotation>
<post_rotation>0.0</post_rotation>
</position_transform_filter>
</position_filters>
</vrpn>
</elements>
</configuration>
This just produces "VRPN Warning(n) Tracker0: No response from server for >= t seconds" over and over.
So, does anyone have experience configuring vicon with vrjuggler? If so could you provide a copy of your configuration file? I know with the ViconDataStreamSDK you can just supply the object and address to get an object's position/orientation
ie: object_name@ip_address, but I'm not sure how that works with vrpn.
Thank you for any help you can provide!