November 25, 20178 yr Is the transponder working with online clients like vPilot? Cheers Jan 9800X3D | Asus ROG Astral 5080 | 64GB G.Skill RipJaws | 1T/2T/4T Samsung 990 PRO | Windows 11 | MSFS
November 25, 20178 yr Hi, The transponder is synchronizing with the FltSim XPDR code. However, unlike our X-Plane version, the transponder mode is not synced with FltSim just because there is no XPDR mode in FltSim (it is assumed always ON and there is no SDK variable). To enhance the capabilities of our GTN, we're publishing our own XPDR mode simvar (along with IDENT and LIGHT simvars) to permit third party gauges/modules to interact with our GTN XPDR. Also, in our X-Plane version, there are further multiplayer support via PilotEdge and VATSIM, which permit displaying the RX/TX COM flag when communicating. There is none of this in our FltSim version yet simply because we can't get a hold on Keith (PilotEdge) for the last 6 months, nor it is clear at this time if any of third party online network clients are sharing any data to third parties for such integration. If you have further information on this, we'll be glad to evaluate!
November 25, 20178 yr Author Thank you for the explanation. Cheers Jan 9800X3D | Asus ROG Astral 5080 | 64GB G.Skill RipJaws | 1T/2T/4T Samsung 990 PRO | Windows 11 | MSFS
July 12, 20187 yr Bumping this thread: For us who use vPilot this is from the vPilot documentation, http://vpilot.metacraft.com/Documentation2.aspx#transponder: Quote If the add-on aircraft you are flying has SquawkBox transponder integration, then vPilot will detect transponder mode changes when you toggle the mode using the aircraft panel within the sim. If this happens, you'll see the Mode C button on the vPilot main window light up in green when the transponder is in Mode C. And from the older squawkbox documentation for FSUIPC offsets, http://www.squawkbox.ca/doc/sdk/fsuipc.php: Quote SquawkBox Specific Offsets Offset Size (in bytes) Description SquawkBox reads? SquawkBox writes? 0x7b91 1 Transponder mode 0 = normal 1 = standby SquawkBox reads this value to determine which transponder mode to send to the network. Your transponder gauge should set this offset when the user changes modes with your gauge. YES NO 0x7b92 1 ATC activity indicator. This value is normally set to 0. When SquawkBox receives a ping from a nearby ATC, it sets this value to 1. If you want your gauge control to flash your ident light you should check this value periodically. As soon as you notice the value is set to 1, you must reset it to 0. NO YES 0x7b93 1 Transponder Ident pressed. When the user presses the ident button on your transponder gauge, you should set this value to 1. When SquawkBox notices it is set to 1, it will transmit an ident on the network and reset the value to 0. YES YES And for my A2A aircraft which don't have squawkbox integration built in I use a LUA script found on the web: function sqmode(varname, value) avi_swtch = ipc.readLvar("AvionicsElecPower") if avi_swtch==1 and (value==4 or value==3) then --squawk mode charlie ipc.writeSB(0x7B91, 0) else --squawk mode stand by ipc.writeSB(0x7B91, 1) end --else --squawk mode stand by --ipc.writeSB(0x7B91, 1) --end end function sqident(varname, value) if value==1 then --squawk ident ipc.writeSB(0x7b93, 1) end end event.Lvar("L:xpdr_onoff_knob_pos", 500,"sqmode") event.Lvar("L:xpdr_ident_button", 500,"sqident") The question for RXP is then: Are there any variables in the GTN that can be used to implement this functionality, or update the LUA script? Otherwise, would it be very problematic to implement the variables, or make the software write the SB values? As you can see from the SB documentation there is also an offset for flashing the Ident light to simulate radars interrogating the transponder, (not sure if this is implemented in vPilot, but I see in the GTN manual that there is a rxp varable for this already 🙂 ) Bjørn Helge Småvollan
July 18, 20187 yr Hi, The RXP GTN already publishes variables for this (see p13 User's Manual): rxp.transponder.id boolean (squawking if true) rxp.transponder.light boolean (replying if true) rxp.transponder.mode enum (STBY=0,ON=1,GRND=2,ALT=3) You can write these vars and the GTN will work accordingly (supposedly!) However, we'll never support any FSUIPC interface. Third party vendors can easily open their online clients via L:vars (like we do).
April 18, 20197 yr Darn, so the RXP people don't want to support FSUIPC? well, what you gave is way better then the F1 people. Now with that out of the way, this is for the LUA script people, is there a good example of the script to take the RXP modes and send then out thru FSUIPC? By the way, vpilot and the new version of pilotedge client (basically a special version of vpilot) will use the fsuipc codes that squawkbox used. I can program buttons to change these, but would like to just change them in this program.
April 18, 20197 yr 1 hour ago, wings138 said: Now with that out of the way, this is for the LUA script people, is there a good example of the script to take the RXP modes and send then out thru FSUIPC? Hi, thank you for your kind words! For rxp.transponder.id: Use the GTN XPDR touchscreen controls to 'squawk' and rxp.transponder.id will be set to 1 during that time, and revert to 0 after a few seconds. Read rxp.transponder.id in a loop to set the online client state accordingly. Otherwise, use the online client 'squawking' controls and write 1 or 0 to rxp.transponder.id accordingly: the GTN XPDR controls will show this. For rxp.transponder.light, it is a little different (seems the manual is wrong): (Please note: our X-Plane version is using the actual X-Plane reply dataref and is synchronized with the host simulator but there is no such XPDR reply in P3D...) Write 0: it is simulating the 'R' (reply) flag in a realistic fashion Write 1: it turns 'R' off. Write 2: it turns 'R' on. For rxp.transponder.mode: Read rxp.transponder.mode and compare with previously read value. If it changes, update the online client with the newly read mode. Read the online client XPDR mode and compare with previously read value, if it changes write the new mode to rxp.transponder.mode and the GTN will change mode. Edited April 18, 20197 yr by RXP
April 18, 20197 yr Didn't mean it negatively, I think the RXP version of the 750 is the best. With true support for the external button control. I am buying the GTN 650 to pair up with my 750 tomorrow, so that I can use both together. I do a lot of sim flying and enjoy having a realistic GPS program. Ok let me do this and see if this will give me a response like I think it will. So if I take His LUA example and replace avi_switch with rxp.transponder.mode would this send the program a 1 for active and a 0 for de-active? I would like to see if I can get this working... This summer I'll be buying the realsimgear GTN750, and mounting these in my Home Cockpit, and would like to have this program run the client. I like using pilotedge and sense they are using just about the same program as vpilot and they both take the same fsuipc commands to work... There is no Ground or Altitude modes with either service...
April 18, 20197 yr I've just read your answer and you might have missed I've amended my post with more details. In short: these are bidirectional simvars with external priority: if an external program writes the values, the GTN changes, otherwise if the GTN changes it writes the values. Please note our GTN for X-Plane is compatible with both PiloteEdge and xSquawkbox for XPDR mode, XPDR ID and Reply, COM TX/RX flags as-is because this is standardized in X-Plane! The LUA script above seems to show how it was coded in this aircraft, so that this aircraft writes FSUIPC offsets when the user is pressing the gauge buttons. You might take a similar approach to directly write the GTN simvars instead, or, you can make a LUA script which main loop just 'synchronizes' the GTN and FSUIPC based on reading/writing the FSUIPC offsets on one hand and the GTN simvars on the other hand. I wish I could help more with this but I can't for now. The basics are easy though thanks to our simvars and their bi-directional sync nature.
April 18, 20197 yr 56 minutes ago, wings138 said: I get it, and will work on it and see what I can come up with. Thanks. @wings138 I fly PE all the time and I wrote this LUA script to take the RXP 750 transponder modes and pass to the PE P3DV4 client. I coded it so the both the Altitude and Ground modes are seen by PE as Mode C on, since the 750 automatically transitions to Ground mode after landing but PE wants to see Mode C on the ground on all movement areas. To implement simply put the LUA file in the Modules directory and add an Auto section as follows. Bruce [Auto] 1=Lua RXPGTN750_XPDR_MODE_C Spoiler function CheckTransponderState(name, value) if value == 3 then ipc.control(1120,1) end if value == 2 then ipc.control(1120,1) end if value == 1 then ipc.control(1119,1) end if value == 0 then ipc.control(1119,1) end end event.Lvar("rxp.transponder.mode", 700, "CheckTransponderState") [CPL] : I9-9900K @5.0GHz HT ON, Maximus XI Hero, ASUS TUF RTX4080 OC, 32GB DDR4 3200 14, 1TB NVMe SSD, 500GB SSD, 1TB HDD, 40" Samsung 4K TV, Honeycomb Alpha & Bravo, Logitech Rudder Pedals, WIN11
April 18, 20197 yr 27 minutes ago, bbuckley said: To implement simply put the LUA file in the Modules directory and add an Auto section as follows. Thank you for sharing. This sounds relatively easy once you get the initial directions: in which file do you add the 'Auto' section?
April 18, 20197 yr 52 minutes ago, RXP said: Thank you for sharing. This sounds relatively easy once you get the initial directions: in which file do you add the 'Auto' section? Sorry, the Auto section gets added to the FSUIPC5.ini file. I didn't implement the IDENT function since I have mapped that function to a yoke button. [CPL] : I9-9900K @5.0GHz HT ON, Maximus XI Hero, ASUS TUF RTX4080 OC, 32GB DDR4 3200 14, 1TB NVMe SSD, 500GB SSD, 1TB HDD, 40" Samsung 4K TV, Honeycomb Alpha & Bravo, Logitech Rudder Pedals, WIN11
April 30, 20197 yr On 4/18/2019 at 2:53 PM, bbuckley said: Sorry, the Auto section gets added to the FSUIPC5.ini file. I didn't implement the IDENT function since I have mapped that function to a yoke button. Sorry to be a pest, but what would the variable be for the IDENT anyone know? just wondering as I could always add that in if I want. Thanks.
April 30, 20197 yr @wings138 Hi, I think in addition to the User's Manual I've documented this in a post above!
Archived
This topic is now archived and is closed to further replies.