Jump to content
Sign in to follow this  
Bert Pieke

F1VC.xml - 3D Cockpit Knobs and Keys - tips and tricks

Recommended Posts

I have a similar problem, replaced the entries in the panel.cfg for the A2A PA28

They work ok, also included the gauge entry as follows beneath.  I have the rxpGTN.xml in a folder as advised.

I have the GTN in the VC and in a popup ok, but the 3d bexel knobs and buttons are inop...

Any ideas please?  Thanks K

------------------------------------------

[Window13]
Background_color=0,0,0
size_mm=937,887
ident=14401
window_pos= 0.660, 0.160
window_size= 0.340, 0.580
zorder=99
gauge00=rxpGTN!GTN_750_1, 0, 0,937,887    

[VCockpit03]
size_mm=1024,1024
pixel_size=1024,1024
texture=$GTN750
background_color=0,0,0
gauge00=rxpGTN!GTN_750_1, 0, 0,677,794,NO_BEZEL

gauge01=A2A_PA28!code_pa28_r, 1,1,1,1
gauge02=A2A_PA28!status1,2,2,2,2
gauge03=A2A_PA28!damage,    3,3,3,3
gauge04=accusim_xml!code_s,    4,4,4,4
gauge05=A2A_Accusim!lua,    5,5,5,5
gauge06=A2A_Accusim!AVS,    6,6,6,6
gauge07=A2A_Accusim!events,    7,7,7,7
gauge08=A2A_Accusim!random,    8,8,8,8
gauge09=A2A_Accusim!storage,    9,9,9,9
gauge10=A2A_PA28!code_pa28_m, 1,1,1,1
gauge11=gps!gps_500,    0, 0, 1065, 675
gauge12=A2A_PA28!number, 779, 502, 240, 67
gauge13=Cherokee!avionics, 0, 576, 1024,447  //AVIONICS DLL
gauge14=A2A_PA28!GPS_F1_750, 1, 1, 1, 1
gauge15=rxpGTN!f1vc,0,0,1,1

rxpGTN.xml
<Gauge Name="RXP_Buttons_Knobs" Version="3">

<!-- Reality XP GTN Buttons Bridge -->
<!-- Bridges Reality XP GTN 750/650 Touch with f1 3D bezel -->
<!-- Credits: Reality XP, Sean Moloney, Ryan Butterworth and Bert Pieké -->

<Element>
  <Select>
    <Value>
        (L:F1GTNMOUSE,bool) 0 !=
        if{

     (L:F1GTNMOUSE, number)  129539 ==  if{
     1 (>K:GPS_DIRECTTO_BUTTON)
     0 (>L:F1GTNMOUSE, number) }

    (L:F1GTNMOUSE, number)  129537 ==  if{
    1 (>K:GPS_MENU_BUTTON)
    0 (>L:F1GTNMOUSE, number) } }

   (L:F1GTNMOUSE,bool) 0 !=
        if{
            (L:F1GTNMOUSE,bool) 0x0001FA01 - sp0
            l0 28 / int sp1 l0 28 % sp0
            <!-- map F1 model to RXP GTN unit -->
            <!-- use: 8 0 8 0 for 652=unit2, 651=unit1, 752=unit2, 751=unit1 -->
            <!-- use: 8 8 0 0 for 652=unit2, 651=unit2, 752=unit1, 751=unit1 -->
      		8 0 8 0
      		4 l1 case 4 2 l0 1 &amp; ? + sp1
            l0 0 == l0 1 == or if{ l1 (>K:GPS_MENU_BUTTON) }
            l0 2 == l0 3 == or if{ l1 (>K:GPS_DIRECTTO_BUTTON) }                
            l0 4 == l0 10 == or if{ l1 8 &amp; (>K:GPS_BUTTON2) }
            l0 6 == l0 11 == or if{ l1 8 &amp; (>K:GPS_BUTTON3) }
            l0 8 == l0 9 == or if{ l1 (>K:GPS_BUTTON1) }
            l0 12 == l0 18 == or if{ l1 8 &amp; (>K:GPS_GROUP_KNOB_DEC) }
            l0 14 == l0 19 == or if{ l1 8 &amp; (>K:GPS_GROUP_KNOB_INC) }
            l0 20 == l0 26 == or if{ l1 8 &amp; (>K:GPS_PAGE_KNOB_DEC) }
            l0 22 == l0 27 == or if{ l1 8 &amp; (>K:GPS_PAGE_KNOB_INC) }
            l0 24 == l0 25 == or if{ l1 (>K:GPS_CURSOR_BUTTON) }    
            l0 16 == l0 17 == or if{ l1 (>K:GPS_CURSOR_BUTTON) }    
            0 (>L:F1GTNMOUSE,bool)            
        }           
    </Value>      
  </Select>
</Element>
</Gauge>

 


Kevin Firth - i9 10850K @5.2; Asus Maximus XII Hero; 32Gb Cas16 3600 DDR4; RTX3090; AutoFPS; FG mod

Beta tester for: UK2000; JustFlight; VoxATC; FSReborn; //42

xaP1VAU.png

Share this post


Link to post
Share on other sites
1 hour ago, kevinfirth said:

I have a similar problem, replaced the entries in the panel.cfg for the A2A PA28

They work ok, also included the gauge entry as follows beneath.  I have the rxpGTN.xml in a folder as advised.

I have the GTN in the VC and in a popup ok, but the 3d bexel knobs and buttons are inop...

Any ideas please?  Thanks K

I believe the problem lies in the filename!

Please make sure to review the readme, especially:

1 hour ago, kevinfirth said:

gauge15=rxpGTN!f1vc,0,0,1,1

compare with the readme:

Quote

 

1) Extract the .zip archive into the aircraft panel folder. The following files are expected:

SimObjects\Airplanes\[Aircraft Name]\
 panel\
 |__ rxpGTN\
 |   |__ f1vc.xml
 |
 |__ panel.cfg
 |__ readme (rxpGTN_f1vc).txt

 

 

  • Upvote 1

Jean-Luc | reality-xp.com
This message from Reality XP is protected by a disclaimer: reality-xp.com/aboutrealityxp/email.html

Let your voice be heard and help us make a difference for you: Vote !
Open up communications with Reality-XP (Microsoft Flight Simulator Forums)

Share this post


Link to post
Share on other sites
1 hour ago, kevinfirth said:

<Gauge Name="RXP_Buttons_Knobs" Version="3">

@Bert Pieke

I don't recall the reasons but why did you add these first 2 tests?!?

     (L:F1GTNMOUSE, number)  129539 ==  if{
     1 (>K:GPS_DIRECTTO_BUTTON)
     0 (>L:F1GTNMOUSE, number) }

    (L:F1GTNMOUSE, number)  129537 ==  if{
    1 (>K:GPS_MENU_BUTTON)
    0 (>L:F1GTNMOUSE, number) } }

 

It looks like they are meant to handle DTO and MENU buttons "release" event, but these are already handled in the original code?!?

 


Jean-Luc | reality-xp.com
This message from Reality XP is protected by a disclaimer: reality-xp.com/aboutrealityxp/email.html

Let your voice be heard and help us make a difference for you: Vote !
Open up communications with Reality-XP (Microsoft Flight Simulator Forums)

Share this post


Link to post
Share on other sites
5 minutes ago, RXP said:

@Bert Pieke

I don't recall the reasons but why did you add these first 2 tests?!?


     (L:F1GTNMOUSE, number)  129539 ==  if{
     1 (>K:GPS_DIRECTTO_BUTTON)
     0 (>L:F1GTNMOUSE, number) }

    (L:F1GTNMOUSE, number)  129537 ==  if{
    1 (>K:GPS_MENU_BUTTON)
    0 (>L:F1GTNMOUSE, number) } }

 

It looks like they are meant to handle DTO and MENU buttons "release" event, but these are already handled in the original code?!?

 

I believe this is a hash of several versions..


Bert

Share this post


Link to post
Share on other sites
36 minutes ago, RXP said:

@Bert Pieke

I don't recall the reasons but why did you add these first 2 tests?!?


     (L:F1GTNMOUSE, number)  129539 ==  if{
     1 (>K:GPS_DIRECTTO_BUTTON)
     0 (>L:F1GTNMOUSE, number) }

    (L:F1GTNMOUSE, number)  129537 ==  if{
    1 (>K:GPS_MENU_BUTTON)
    0 (>L:F1GTNMOUSE, number) } }

 

It looks like they are meant to handle DTO and MENU buttons "release" event, but these are already handled in the original code?!?

 

I copied it off page 1 of this thread?

But I think I think I discovered the real problem, I hadn't checked 'use simulator GPS commands' DOH, next time I'll RTFM 😉  Thankyou for your forebearance...

  • Like 2

Kevin Firth - i9 10850K @5.2; Asus Maximus XII Hero; 32Gb Cas16 3600 DDR4; RTX3090; AutoFPS; FG mod

Beta tester for: UK2000; JustFlight; VoxATC; FSReborn; //42

xaP1VAU.png

Share this post


Link to post
Share on other sites
15 minutes ago, kevinfirth said:

I copied it off page 1 of this thread?

It got cleaned up later.. just in case:

<Gauge Name="f1vc" Version="2.05">

<!-- Reality XP GTN Buttons Bridge -->
<!-- Bridges Reality XP GTN 750/650 Touch with f1 3D bezel -->
<!-- Credits: Reality XP, Sean Moloney and Ryan Butterworth, Bert Pieké -->

<Element>
  <Select>
    <Value>
        (L:F1GTNMOUSE,bool) 0 !=
        if{
            (L:F1GTNMOUSE,bool) 0x0001FA01 - sp0
            l0 28 / int sp1 l0 28 % sp0
            <!-- map F1 model to RXP GTN unit -->
            <!-- use: 8 0 8 0 for 652=unit2, 651=unit1, 752=unit2, 751=unit1 -->
            <!-- use: 8 8 0 0 for 652=unit2, 651=unit2, 752=unit1, 751=unit1 -->
      8 0 8 0
      4 l1 case 4 2 l0 1 &amp; ? + sp1
            l0 0 == l0 1 == or if{ l1 (>K:GPS_MENU_BUTTON) }
            l0 2 == l0 3 == or if{ l1 (>K:GPS_DIRECTTO_BUTTON) }                
            l0 4 == l0 10 == or if{ l1 8 &amp; (>K:GPS_BUTTON3) }
            l0 6 == l0 11 == or if{ l1 8 &amp; (>K:GPS_BUTTON2) }
            l0 8 == l0 9 == or if{ l1 (>K:GPS_BUTTON1) }
            l0 12 == l0 18 == or if{ l1 8 &amp; (>K:GPS_GROUP_KNOB_DEC) }
            l0 14 == l0 19 == or if{ l1 8 &amp; (>K:GPS_GROUP_KNOB_INC) }
            l0 20 == l0 26 == or if{ l1 8 &amp; (>K:GPS_PAGE_KNOB_DEC) }
            l0 22 == l0 27 == or if{ l1 8 &amp; (>K:GPS_PAGE_KNOB_INC) }
            l0 24 == l0 25 == or if{ l1 (>K:GPS_CURSOR_BUTTON) }    
            l0 16 == l0 17 == or if{ l1 (>K:GPS_CURSOR_BUTTON) }    
            0 (>L:F1GTNMOUSE,bool)            
        }           
    </Value>      
  </Select>
</Element>
</Gauge>

 

 

  • Like 1
  • Upvote 1

Bert

Share this post


Link to post
Share on other sites
1 hour ago, Bert Pieke said:

It got cleaned up later.. just in case

Sir, you're a star, thanks! K

  • Like 2

Kevin Firth - i9 10850K @5.2; Asus Maximus XII Hero; 32Gb Cas16 3600 DDR4; RTX3090; AutoFPS; FG mod

Beta tester for: UK2000; JustFlight; VoxATC; FSReborn; //42

xaP1VAU.png

Share this post


Link to post
Share on other sites

Thanks all.   I've set up the bezel control knobs great using the methodology outlined above.  No problems there.

However, when I've duplicated that same process for the Milviz PC6 Porter, the GTN display itself is fine, but some of the controls go awry.

For anyone using this you will need to comment out the existing gauge which seems to be conflicting.

[Vcockpit02]
//gauge04=Console!console_GTN750_650,  0,0,1,1
gauge11=rxpGTN!f1vc,0,0,1,1

 

  • Like 1

Kevin Firth - i9 10850K @5.2; Asus Maximus XII Hero; 32Gb Cas16 3600 DDR4; RTX3090; AutoFPS; FG mod

Beta tester for: UK2000; JustFlight; VoxATC; FSReborn; //42

xaP1VAU.png

Share this post


Link to post
Share on other sites

@kevinfirth

thank you for sharing this tip! Eventually you could use the same gauge## number too like this:

[Vcockpit02]
//gauge04=Console!console_GTN750_650,  0,0,1,1
gauge04=rxpGTN!f1vc,0,0,1,1

 

Ideally, aircraft vendor should favor implementing direct handling in the 3D model. I understand it is not always easy and it is time consuming to re-update older models that were released already for many months, but there are good reasons to do so nonetheless:

1) The RXP system is using true events, instead of an L:var.

This permits capturing every single user interaction no matter how many times you repeat the action within a single gauge update loop (i.e. how many time you click or turn a knob in 1000/18 = 55ms)

2) The RXP system is conveniently dividing the input groups in terms of unit #1 and unit #2, regardless of the model.

This permits implementing the set of controls in the 3D model once only, regardless if you offer a 430 or a 530 variation.

3) The RXP system is using the stock GPS events.

This means the aircraft vendor only has to implement for example the 530 RXP events for each 530 buttons, and this will work as-is for both the RXP GNS and the stock GNS.

4) The RXP system is the only one which is supported for the foreseeable future.

 

To make it easy for aircraft vendor, we're shipping a ready-made modeldef file with all the events ready to be used in the 3D model, which gets installed here:

C:\Program Files (x86)\Reality XP\GNS Simulation\FltSim\modeldef (RealityXP GNS V2).xml

Edited by RXP
  • Upvote 1

Jean-Luc | reality-xp.com
This message from Reality XP is protected by a disclaimer: reality-xp.com/aboutrealityxp/email.html

Let your voice be heard and help us make a difference for you: Vote !
Open up communications with Reality-XP (Microsoft Flight Simulator Forums)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Tom Allensworth,
    Founder of AVSIM Online


  • Flight Simulation's Premier Resource!

    AVSIM is a free service to the flight simulation community. AVSIM is staffed completely by volunteers and all funds donated to AVSIM go directly back to supporting the community. Your donation here helps to pay our bandwidth costs, emergency funding, and other general costs that crop up from time to time. Thank you for your support!

    Click here for more information and to see all donations year to date.
×
×
  • Create New...