{"id":22048998,"url":"https://github.com/schnoog/joystick_f16_sidestick","last_synced_at":"2025-05-08T23:07:22.571Z","repository":{"id":84511367,"uuid":"440803511","full_name":"schnoog/joystick_F16_sidestick","owner":"schnoog","description":"My F-16 force sensing Sidestick, based (electronic wise) on Arduino Micro Pro, MCP23017, load cells, INA122P amplifier and an ADS1115 ","archived":false,"fork":false,"pushed_at":"2023-11-02T21:25:03.000Z","size":6070,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-05-08T23:07:09.305Z","etag":null,"topics":["arduino","diy","diy-electronics","f-16","force-sensing","hotas","joystick","usb-joystick"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/schnoog.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2021-12-22T09:28:20.000Z","updated_at":"2025-03-20T13:09:54.000Z","dependencies_parsed_at":"2023-03-02T22:15:23.472Z","dependency_job_id":"589e89b6-3472-48db-9453-549af5090f94","html_url":"https://github.com/schnoog/joystick_F16_sidestick","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/schnoog%2Fjoystick_F16_sidestick","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schnoog%2Fjoystick_F16_sidestick/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schnoog%2Fjoystick_F16_sidestick/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schnoog%2Fjoystick_F16_sidestick/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/schnoog","download_url":"https://codeload.github.com/schnoog/joystick_F16_sidestick/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253160777,"owners_count":21863629,"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":["arduino","diy","diy-electronics","f-16","force-sensing","hotas","joystick","usb-joystick"],"created_at":"2024-11-30T14:14:00.133Z","updated_at":"2025-05-08T23:07:22.516Z","avatar_url":"https://github.com/schnoog.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# My F16 Sidestick\n\n![Joystick](Hardware/JoyStick.jpg)\n\nThis repository holds (almost) all the information about my DIY F16 Force Sensing Sidestick I use mainly in DCS\n\nThe stick itself is printed from **https://www.thingiverse.com/thing:4544115**\n\nI used different switches (navigation switches which I had laying around together with fitting PCBs. If those wouldn't have already existed in my drawer I would have used the switch designs included in the Thingiverse project.\n\nMy initial version was based on the well known olukelo gimbal with hall effect sensors, so I used the adapter I had on the gimbal for my force sensing approach too.\n\n## Components\nbeside the F16 Grip \u0026 Adapter\n### Mechanic components\n**Metal parts**\n![Alu parts](Hardware/ForceSensingBase.jpg)\n\n* **1x Ground plate** (BodenPlatte.dxf)\n* **1x Ground distance plate** (BodenDist.dxf) - ensures distance between the load cells and the ground plate)\n* **1x Top cross** (Topkreuz.dxf) -connects the upper sides of the load cells in the center)\n* **1x Top plate** (Joyplate.dxf) \n\nI ordered the aluminum parts at Xometry made out of 3mm sheets of EN AW-6060 / 3.3206 / Al-MgSi\nAll 4 parts in the folder Hardware\\Metal_parts together came with a total order value of  68.78 Euro\n\n**Other**\n\n* A unknown amount of M4 and M3 screws and nuts ;)\n* **4 rubber buffers** (15mm diameter, 15mm lenght, M4 screw thread ![Buffer](Hardware/Rubberbuffer.jpg)\n\n**Load cells**\n\n* **4 x 80mm Load Cells** (mine are 3kg, but that's personal preference). Be aware that **there are 80mm and 75mm versions available, I designed it using the 80mm** I already had at home \n\n### Case\n![Buffer](Hardware/WithCover.jpg)\nThe case consists of \n* 4 **Side parts** (Seiten_thin.stl - all 4 attached together)\n* 4 **Corners** (Ecken_thin.stl- all 4 attached together)\n* 1 **Lid** (Deckel_nd.stl)\n\nThe lid has small ramps to which I attached 4 WS2812B LEDs I cut from a strip I had laying around.\n\n### Electronics\n\n* **Arduino Pro Micro (Clone)** If you need to buy one, be sure to buy one with 5V (there are 3.3V and 5V available) and USB-C socket (the damn micro USB sockets are only SMD attached to the circuit boad and rip off easily)\n\n* **1x ADS1115 16bit ADC Modul** for example by AZ delivery. But there are dozen other manucaturers which use the same board layout (ADS1115.jpg)\n![ADS1115](Hardware/ADS1115.jpg)\n* **2x MCP 23017 IO Expander moduls**  \n* **2x INA 122P instrument amplifier** (I used sockets, but can be soldered directly to the PCB\n* **1x Potentiometer \u003e=10k type  3296 - 3/8 ? Square Trimpot** \n* **2x Potentiometer (same 3296 type, but 100 or 200 Ohm)**\n\n\n* **1x Base PCB** That's the printed circuit board which holds all components in the base. \n![PCB](Hardware/PCB_3D.jpg)\n(the PCB has some additional ports, for up to 4 analog and 8 digital inputs, I connected 3 additional digital inputs to buttons. One for recalibration of the center position and noise and 2 for ingame functions)\n\n**Stick internal wiring**\n\nInternally all the buttons in the stick are wired up to 2 MCP23017 boards (as shown in Wire-connection.png). That means I only have 4 wires going out of the joystick into my PCB\n![Wiring](Hardware/Wire-connection.png)\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fschnoog%2Fjoystick_f16_sidestick","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fschnoog%2Fjoystick_f16_sidestick","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fschnoog%2Fjoystick_f16_sidestick/lists"}