Orbiter-Forum  

Go Back   Orbiter-Forum > Orbiter Space Flight Simulator > Orbiter Web Forum > Simpit Forum
Register Orbinauts List Social Groups FAQ Projects Mark Forums Read

Simpit Forum Share & discuss simpit projects for Orbiter here!

Reply
 
Thread Tools
Old 04-20-2020, 10:47 AM   #1
Phil Smith
Donator
 
Phil Smith's Avatar
Default The Universal Flight Simulator

Hey guys!

As mentioned in another topic I've decided to start new one related to my sim-pit build.

Little introduction.
The Universal Flight Simulator will consist of several logical modules:
1) 2x 15" Primary MFDs;
2) 1x 10" AUX MFD (Vehicle monitoring);
3) Atmospheric side stick for controlling pitch and roll during atmospheric flights, mechanically similar to Airbus sticks;
4) Rudder pedals w/ Toe brakes;
5) Rotational hand controller;
6) Translational --//-- --//--;
7) Engine throttle quadrant.

It should work with Orbiter, specially with XR vessels, and other flight sims such as X-plane and DCS.
Right now I'm in the process of developing custom MFD panels, translational and rotational hand controllers (Apollo-style of course! ).

I start off with the Primary MFD Panel.

One panel breakdown:
1x 15'' IBM 6636-AB2 screen in portrait mode (2mfd's per monitor) - $5 (yep, I got a good bargain here - 2 of these monitors for 10 bucks);
1x Raspberry Pi - driving the LCD from VNCMFD addon - $10;
27x push buttons - $27;
1x Arduino Leonardo with MMjoy firmware emulating usb joystick - $8.
Total cost of electronics - 50 bucks (Excluding wiring and encoder).

After several days of tinkering with the adruino and MMjoy firmware, I've managed to connect it to PC and Orbiter (Using breadboard and 2 tablets).

Case is 3d Printed on my Tevo Tornado. Not pained yet )
Wiring of the buttons is still in the process, I'm waiting for 1n4148 diodes to arrive.

Drawing and circuit diagram of the panel are in the attachments as well.
After completion, I'll post all docs and CAD files with a little tutorial

Stay safe!
Attached Images
File Type: jpeg MFD frame WIP.jpeg (47.6 KB, 33 views)
File Type: jpeg 02.jpeg (65.9 KB, 35 views)
Attached Files
File Type: pdf UFS-MFD15-CD.pdf (55.4 KB, 31 views)
File Type: pdf UFS-MFD15-GA.pdf (862.3 KB, 21 views)

Last edited by Phil Smith; 04-20-2020 at 12:56 PM.
Phil Smith is offline   Reply With Quote
Old 04-21-2020, 08:47 PM   #2
TCR_500
Developer of Solar Lander
 
TCR_500's Avatar
Default

Orbiter only recognizes 4 joystick axis and zero buttons. I take it you're planning on writing an orbiter module to take care of that limitation. Also, I'd be interested in seeing how you get the MFD data out of orbiter and onto those displays. The hardware definitely sounds impressive.
TCR_500 is offline   Reply With Quote
Old 04-21-2020, 10:52 PM   #3
dbeachy1
O-F Administrator
 
dbeachy1's Avatar



Default

For joystick buttons you can use something like Joy2Key to remap any joystick button to any keypress -- it works great with Orbiter for me.
dbeachy1 is offline   Reply With Quote
Old 04-22-2020, 07:47 AM   #4
Phil Smith
Donator
 
Phil Smith's Avatar
Default

Quote:
Originally Posted by TCR_500 View Post
 Orbiter only recognizes 4 joystick axis and zero buttons. I take it you're planning on writing an orbiter module to take care of that limitation. Also, I'd be interested in seeing how you get the MFD data out of orbiter and onto those displays. The hardware definitely sounds impressive.
Actually MFDs and buttons are piece of cake to implement! (Thanks to Kamaz addons!! )
Here's a pic of 2 MFDs (on 10 tablets) fully controlled by 26 buttons and arduino leonardo on the breadboard. Works fine & dandy.
https://www.orbiter-forum.com/attach...2&d=1586456514

Axis inputs.. ok, I didn't dig them yet, but I think nothing is impossible

Here's a list of planned axes:
Code:
1. Control surfaces PITCH;
2. Control surfaces ROLL;
3. Rudder pedals (YAW);
4. Toe brake LEFT;
5. Toe brake RIGHT;
6. LEFT Main engine;
7. RIGHT Main engine;
8. LEFT Scram engine;
9. RIGHT Scram engine;
10. Hover engine.
My main concern is getting separate engine control.

Quote:
Originally Posted by dbeachy1 View Post
 For joystick buttons you can use something like Joy2Key to remap any joystick button to any keypress -- it works great with Orbiter for me.
Indeed!
Or use arduino leonardo or even uno with changed bootloader for being a Windows Human Interface Device.

Last edited by Phil Smith; 04-22-2020 at 09:09 AM.
Phil Smith is offline   Reply With Quote
Old 04-22-2020, 09:18 AM   #5
Fabri91
Donator
 
Fabri91's Avatar
Default

Quote:
Originally Posted by dbeachy1 View Post
 For joystick buttons you can use something like Joy2Key to remap any joystick button to any keypress -- it works great with Orbiter for me.
Only thing I'm worried about is it losing compatibility with new Orbiter versions.

I'm not familiar with Orbiter's SDK though - is this a risk at all?
Fabri91 is offline   Reply With Quote
Old 04-22-2020, 12:08 PM   #6
Phil Smith
Donator
 
Phil Smith's Avatar
Default Primary MFD

Quote:
Originally Posted by Fabri91 View Post
 Only thing I'm worried about is it losing compatibility with new Orbiter versions.

I'm not familiar with Orbiter's SDK though - is this a risk at all?
Hmm, I've been working with Orbiter 2016 right now, and it works, for now


Initial display test is passed (see attachment below).
Attached Images
File Type: jpeg test.jpeg (112.6 KB, 25 views)
Phil Smith is offline   Reply With Quote
Old 04-23-2020, 04:39 AM   #7
dbeachy1
O-F Administrator
 
dbeachy1's Avatar



Default

Quote:
Originally Posted by Fabri91 View Post
 Only thing I'm worried about is it losing compatibility with new Orbiter versions.

I'm not familiar with Orbiter's SDK though - is this a risk at all?
Don't worry, Joy2Key doesn't use any custom APIs; it's just a normal Win32 application: all it does is read a joystick button press and send the corresponding, mapped keypress to the active foreground window, just as though you had typed it. You can even test it out using Notepad, for example.
dbeachy1 is offline   Reply With Quote
Old 04-23-2020, 10:03 AM   #8
TCR_500
Developer of Solar Lander
 
TCR_500's Avatar
Default

Impressive. I am working on implementing joystick data for a project of my own (irrelevant to Orbiter), perhaps I should make it into a DLL or static library (when I get it working that is). That would solve all of the problems with joystick input limitations.


Do I understand correctly that those screens are simply small monitors that the MFDs have been dragged onto? Or are you going for something a bit more advanced?
TCR_500 is offline   Reply With Quote
Old 04-23-2020, 01:48 PM   #9
Phil Smith
Donator
 
Phil Smith's Avatar
Default

Quote:
Originally Posted by TCR_500 View Post
 Impressive. I am working on implementing joystick data for a project of my own (irrelevant to Orbiter), perhaps I should make it into a DLL or static library (when I get it working that is). That would solve all of the problems with joystick input limitations.
Sounds nice!


Quote:
Originally Posted by TCR_500 View Post
 Do I understand correctly that those screens are simply small monitors that the MFDs have been dragged onto? Or are you going for something a bit more advanced?
Not exactly. That's done by VNC.
Orbiter sends MFD information via VNCMFD addon ( https://www.orbiter-forum.com/showthread.php?t=28474 ), Raspberry Pi just connects to 2 VNC ports (via VNC viewer) showing MFDs. Simple as that. It can be any device - phone, tablet, laptop - as long as it has Ethernet / WiFi connectivity.
Phil Smith is offline   Reply With Quote
Old 05-06-2020, 07:59 PM   #10
Phil Smith
Donator
 
Phil Smith's Avatar
Default MFD Panels

Good day!
A Little update on MFD panels.

Finally I've painted them - 3 layers of filler, 2 layers of dark grey paint (RAL 7012) and 1 layer of clear coat, but there's always a "but".. :-)
Meh, this clear coat gave me strange result - almost all surfaces got some nasty wrinkles and cracks.. So Lessons learnt - dont use a coating on 3d printed parts - just a filler and a paint are more than enough.
I got an idea to "mask" those perfections - VELCRO (Every spacecraft should have it right?? ) - simple yet elegant. I've ordered a roll of it and wait for delivery from my local hardware store. So, stay tuned!

Cheers!
Attached Images
File Type: jpeg 14.jpeg (134.3 KB, 4 views)
File Type: jpeg 12.jpeg (108.4 KB, 4 views)
File Type: jpeg 15.jpeg (157.9 KB, 4 views)
Phil Smith is offline   Reply With Quote
Reply


Thread Tools

Posting Rules
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
Forum Jump


All times are GMT. The time now is 04:52 PM.

Quick Links Need Help?


About Us | Rules & Guidelines | TOS Policy | Privacy Policy

Orbiter-Forum is hosted at Orbithangar.com
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.
Copyright 2007 - 2017, Orbiter-Forum.com. All rights reserved.
X vBulletin 3.8.11 Debug Information
  • Page Generation 0.10292 seconds
  • Memory Usage 5,541KB
  • Queries Executed 13 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (4)navbar_link
  • (41)option
  • (8)postbit_attachment
  • (10)postbit_legacy
  • (10)postbit_onlinestatus
  • (10)postbit_wrapper
  • (5)showthread_similarthreadbit
  • (1)showthread_similarthreads
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • fetch_musername
  • bbcode_parse_start
  • postbit_imicons
  • postbit_attachment
  • postbit_display_complete
  • tag_fetchbit_complete
  • showthread_similarthread_query
  • showthread_similarthreadbit
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete