{"id":20018794,"url":"https://github.com/hamarituc/realsimgear","last_synced_at":"2025-05-04T23:31:22.893Z","repository":{"id":57771827,"uuid":"526358377","full_name":"hamarituc/realsimgear","owner":"hamarituc","description":"Linux X-Plane plugin for RealSimGear flight simulator devices","archived":false,"fork":false,"pushed_at":"2023-03-01T05:55:53.000Z","size":398,"stargazers_count":7,"open_issues_count":5,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-08T14:07:49.282Z","etag":null,"topics":["flight-simulator","realsimgear","xplane","xplane-flight-simulator","xplane11"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hamarituc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-08-18T20:07:48.000Z","updated_at":"2024-08-07T20:05:06.000Z","dependencies_parsed_at":"2024-11-13T08:25:12.416Z","dependency_job_id":"91016d40-139b-4a4f-a5d8-7a498b86726b","html_url":"https://github.com/hamarituc/realsimgear","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hamarituc%2Frealsimgear","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hamarituc%2Frealsimgear/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hamarituc%2Frealsimgear/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hamarituc%2Frealsimgear/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hamarituc","download_url":"https://codeload.github.com/hamarituc/realsimgear/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252414246,"owners_count":21744070,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["flight-simulator","realsimgear","xplane","xplane-flight-simulator","xplane11"],"created_at":"2024-11-13T08:24:20.525Z","updated_at":"2025-05-04T23:31:17.923Z","avatar_url":"https://github.com/hamarituc.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"RealSimGear X-Plane Plugin for Linux\n====================================\n\nAbout the Plugin\n----------------\n\n### What it is\n\nThis plugin maps input controls of RealSimGear flight simulator devices to\nX-Plane simulator commands.\n\n### What it is not\n\nThis plugin doesn't help you detaching simulator windows and automatically\nplacing them onto the screen of your flight simulator device.\n\n\nShowcase\n--------\n\n![](images/pfd.jpg)\n\n![](images/mfd.jpg)\n\n\nInstallation\n------------\n\nThe following software is required:\n\n * GCC C Compiler\n * GNU make\n * Lua 5.1\n\nTo build the plugin, open a terminal and just type `make` in the root directory\nof this repo. You will find the compiled plugin at\n`build/realsimgear/64/lin.xpl`\n\nCopy the plugin to you X-Plane folder.\n\n```\n$ cp -r build/realsimgear \"/opt/xplane/X-Plane 11/Resources/plugins/\"\n$ cp realsimgear.lua \"/opt/xplane/X-Plane 11/Resources/plugins/realsimgear/\"\n```\n\nWe assume X-Plane is installed at `/opt/xplane/X-Plane 11`. Replace the path\naccording to your installation location.\n\n\nUsage\n-----\n\nBefore flying, you need to configure the plugin according to your flight\nsimulator setup. The configuration is done in the file `realsimgear.lua`. The\nconfiguration already contains samples for all supported devices. You just need\nto insert the device file paths for the simulator devices you want to use.\n\nThe configuration consists of the Lua list `devices` containing a table for\neach simulator device.\n\n```lua\ndevices =\n{\n  -- G1000: Pilot PFD\n  {\n    device = \"/dev/ttyACM0\",\n    mapping = {} -- Insert mapping here\n  },\n\n  -- G1000: Co-Pilot PFD\n  {\n    device = nil,\n    mapping = {} -- Insert mapping here\n  },\n\n  -- G1000: MFD\n  {\n    device = nil,\n    mapping = {} -- Insert mapping here\n  },\n}\n```\n\nEach devices has the following attributes:\n\n * `device`: the linux device path\n * `mapping`: maps the input actuators to X-Plane commands\n\nJust insert the path of the serial device file of your simulator device into\nthe relevant block. If `device` evaluates to `nil`, this device is considered\ndisabled. So you don't need to delete the devices blocks which are not\napplicable for you.\n\nEach time you push a button or turn a knob on your simulator device, a specific\ncontrol string is sent via the serial device. This string has to be mapped to a\nX-Plane command. You will find a list of available simulator command at\nhttps://www.siminnovations.com/xplane/command/. This mapping is done with the\n`mapping`-attribute, which is itself a Lua table.\n\nThis is a sample mapping for a G1000 primary flight display (pilot side of the)\ncockpit. Not all mappings are shown here for reason of simplicity.\n\n```lua\ndevices =\n{\n  -- G1000: Pilot PFD\n  {\n    device = \"/dev/ttyACM0\",\n    mapping =\n    {\n      [\"ENC_NAV_VOL_DN\"]   = \"sim/GPS/g1000n1_nvol_dn\",\n      [\"ENC_NAV_VOL_UP\"]   = \"sim/GPS/g1000n1_nvol_up\",\n      [\"ENC_COM_VOL_DN\"]   = \"sim/GPS/g1000n1_cvol_dn\",\n      [\"ENC_COM_VOL_UP\"]   = \"sim/GPS/g1000n1_cvol_up\",\n      [\"BTN_NAV_VOL\"]      = \"sim/GPS/g1000n1_nvol\",\n      [\"BTN_NAV_FF\"]       = \"sim/GPS/g1000n1_nav_ff\",\n      [\"ENC_NAV_INNER_UP\"] = \"sim/GPS/g1000n1_nav_inner_up\",\n      [\"ENC_NAV_INNER_DN\"] = \"sim/GPS/g1000n1_nav_inner_down\",\n      [\"ENC_NAV_OUTER_UP\"] = \"sim/GPS/g1000n1_nav_outer_up\",\n      [\"ENC_NAV_OUTER_DN\"] = \"sim/GPS/g1000n1_nav_outer_down\",\n      [\"BTN_NAV_TOG\"]      = \"sim/GPS/g1000n1_nav12\",\n      [\"ENC_HDG_UP\"]       = \"sim/GPS/g1000n1_hdg_up\",\n      [\"ENC_HDG_DN\"]       = \"sim/GPS/g1000n1_hdg_down\",\n      [\"BTN_HDG_SYNC\"]     = \"sim/GPS/g1000n1_hdg_sync\",\n      -- further mappings\n    }\n  },\n\n  -- more devices\n}\n```\n\nA G1000 MFD would send the same control strings, because it uses the same\nhardware with the same actuators. But they actions to be performed are\ndifferent und thus have to be mapped to diffent simulator commands. In our case\nthe term `g1000n1` has just to be replaced by `g1000n3` to route all input\nevents to the MFD instead of the pilots PFD.\n\n\nMiscellaneous\n-------------\n\n### Disclaimer\n\nThis plugin is not officially linked to RealSimGear. It's was founded by a user\nof the hardware independently from the vendor. Thus it comes without warranty.\n\n### Limitations\n\nThe configuration of your input devices is global. Currently there is no way to\ndefine profiles for different aircrafts. You have to edit the configuration\nfile by hand each time you alter you simulator setup, for example when changing\nbetween a C172 with a GNS430 and and one equipped with a G1000.\n\nIf you use multiple devices, please ensure the device paths are stable. You\ncan ensure this by plugging in the devices in a fixed order.\n\nCurrently the following devices are supported:\n\n - G1000 XFD\n\nVirtually no modification of the plugin should be necessary to support other\ndevices. The configuration file just needs to be extend. Please contact me if\nyou own an unsupported device.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhamarituc%2Frealsimgear","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhamarituc%2Frealsimgear","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhamarituc%2Frealsimgear/lists"}