FlightGear TQPanel: Difference between revisions

From FlightGear wiki
Jump to navigation Jump to search
No edit summary
(19 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Stub}}
{{Infobox Software
 
| title              = FlightGear TQPanel
<!--
| logo                =
 
| image               = Kivy_TQ_Panel_v2.png
FIXME: use infobox software here
| alt                =
 
| developedby        = [[User:Laserman|d-laser]], Michat
-->
| initialrelease      = 01/2014
{{infobox subsystem
| latestrelease      =
<!--
| writtenin          =  
|image =Canvas GUI Demo.png
| os                  = Linux, Windows, Mac, Android, iOS
-->
| platform            =
|name =FlightGear TQPanel
| developmentstatus  = Under active development as of 02/2014
|started= 02/2014  
| developmentprogress =
|description =  
| type                =
|status = Under active development as of 02/2013
| license            =
|maintainers  = [https://gitorious.org/flightgear-tq-panel-made-with-kivy repository]
| website            = https://gitlab.com/flightgear-tq-panel-made-with-kivy/flightgear-tq-panel-made-with-kivy
|developers = d-laser
}}
}}


d-laser(pommesschranke) started a python/kivy app that can be used to control FlightGear aircraft.
'''FlightGear TQPanel''' is a python/kivy app by d-laser(aka pommesschranke) and Michat that can be used to control various FlightGear aircraft.


It is a multi-touch App, so you can move each throttle alone or both together using 2 fingers. Use 2 fingers for the toe-brakes, or only one for differential braking.  
It is a multi-touch App, so you can move each throttle alone or both together using 2 fingers. Use 2 fingers for the toe-brakes, or only one for differential braking.  


Kivy apps run on Linux, Windows, Mac, android, iOS
Kivy apps run on Linux, Windows, Mac, android, iOS
For details, see the gitorious repository at: https://gitorious.org/flightgear-tq-panel-made-with-kivy
About "FGPanel without FG" I just had another Idea:
Use the Blender game engine and blenderplayer - then I could use the original 3D models which are also used inside FlightGear.
Just like the kivy app, this would run on Platforms that can't run FlightGear like Raspberry Pi and Android for example.


With my kivy TQ I can now control..  
With my kivy TQ I can now control..  
Line 41: Line 34:
* gear up/down
* gear up/down
* change view
* change view
(12 nodes in the protocol xml file)


I developed and tested on Linux(800x600) and it runs without changes on an
I developed and tested on Linux(800x600) and it runs without changes on an
Android tablet (1024x600)
Android tablet (1024x600)
== Gallery ==
<gallery mode=packed widths=180px heights=180px>
Kivy TQ Panel v2.png|multitouch app to control FlightGear aircraft
Kivy TQ Panel V1.0.png|alternative style
Panel-blue.png|alternative style
</gallery>


== Installation & Setup ==
== Installation & Setup ==
copy the 2 xml files to the Protocol folder of your FlightGear data directory.
requirements:
python and kivy or kivy launcher


start the panel:
* download/git repo:
 
https://gitlab.com/flightgear-tq-panel-made-with-kivy/flightgear-tq-panel-made-with-kivy
 
* copy the 2 xml files to the Protocol folder of your FlightGear data directory.
 
* start the panel:
<pre>
<pre>
python main.py
python main.py
</pre>
</pre>


start flightgear:
* start FlightGear:
<pre>
<pre>
fgfs  --generic=socket,in,10,HOSTNAME,9009,udp,from_kivy  
fgfs  --generic=socket,in,10,,9009,udp,from_kivy  
</pre>
</pre>
(replace HOSTNAME with your IP-Address or hostname)


== Todo ==
== Todo ==
<strike>* some python code that talks UDP and/or Telnet with FlightGear</strike> DONE
* config dialog and config file for the IP address of the computer running FlightGear.  - DONE, works on Linux but not yet on android :-(
<strike>* add more buttons and switches</strike> One screen is full :-)
* add all the light switches to the protocol
* make everything look more real - Michat works on additional graphics
* on startup of the panel read the state of the aircraft, like park brake postions and the number of views
* I started some code to make it bi-directional but run into "race-conditions" when using with FlightGear. Between 2 panels it does work (one master and one slave panel)
I disabled that for now. atm the panel only writes values to FlightGear but does not read anything.
* speed brake does not work on F-16c ?


although it is not a hardware TQ I it is more fun to use than the PC-keyboard. And it is nice to have visual indicators for the position of speed brakes, throttle, flaps, gear  
== Conclusion ==
Although it is not a hardware TQ (throttle quadrant), I think it is more fun to use than the PC-keyboard. And it is nice to have visual indicators for the position of speed brakes, throttle, flaps, gear  


{{#ev:youtube|UxyHnvBo07s|400}}
{{#ev:youtube|UxyHnvBo07s|400}}


[[Category:Software]]
== Related content ==
* [[Yoke for FlightGear]]
 
[[Category:Android apps]]
[[Category:IOS apps]]
[[Category:GPL software]]

Revision as of 23:51, 16 January 2017

FlightGear TQPanel
Kivy TQ Panel v2.png
Developed by d-laser, Michat
Initial release 01/2014
OS Linux, Windows, Mac, Android, iOS
Development status Under active development as of 02/2014
Website

FlightGear TQPanel is a python/kivy app by d-laser(aka pommesschranke) and Michat that can be used to control various FlightGear aircraft.

It is a multi-touch App, so you can move each throttle alone or both together using 2 fingers. Use 2 fingers for the toe-brakes, or only one for differential braking.

Kivy apps run on Linux, Windows, Mac, android, iOS

With my kivy TQ I can now control..

  • speed brake
  • 2 x throttle
  • elv. trim
  • flaps
  • field of view (zoom)
  • parking brake
  • thrust reverser
  • 2 x toe brake
  • gear up/down
  • change view

(12 nodes in the protocol xml file)

I developed and tested on Linux(800x600) and it runs without changes on an Android tablet (1024x600)

Gallery

Installation & Setup

requirements: python and kivy or kivy launcher

  • download/git repo:

https://gitlab.com/flightgear-tq-panel-made-with-kivy/flightgear-tq-panel-made-with-kivy

  • copy the 2 xml files to the Protocol folder of your FlightGear data directory.
  • start the panel:
python main.py
  • start FlightGear:
fgfs   --generic=socket,in,10,,9009,udp,from_kivy 

Todo

  • config dialog and config file for the IP address of the computer running FlightGear. - DONE, works on Linux but not yet on android :-(
  • add all the light switches to the protocol
  • on startup of the panel read the state of the aircraft, like park brake postions and the number of views
  • I started some code to make it bi-directional but run into "race-conditions" when using with FlightGear. Between 2 panels it does work (one master and one slave panel)

I disabled that for now. atm the panel only writes values to FlightGear but does not read anything.

  • speed brake does not work on F-16c ?

Conclusion

Although it is not a hardware TQ (throttle quadrant), I think it is more fun to use than the PC-keyboard. And it is nice to have visual indicators for the position of speed brakes, throttle, flaps, gear

Related content