Question vMC2 or Orb:connect Question

Thanatox

New member
Joined
Mar 2, 2011
Messages
10
Reaction score
0
Points
1
Hello,

I am a physics teacher interested in building a simple simpit / mission control setup for my class.

I am looking into vMC2 which seems promising but I can't quite make it work.
I downloaded it from here http://www.synchronous.co.uk/vmc/index.htm and followed the instructions in the documentation. however when I get to the part that says:

"Click the “TIMER” toolbar button. You should see the “Mission Timer” page in the vMC window, showing the name of the active spacecraft, the mission elapsed time and any debug messages displayed. This is a good test to check that your connection is operational."

I click on Mission Timer and get nothing but a black screen. The documentation says this is a good test but not what to do if it fails. Does anyone have vMC2 working that can help.

Alternatively does any one have a mission control solution working. I have looked at Orb:Connect options but that project seems to be stalled out.

I am a passable programmer in VB and Python so I would be willing to help out with working on front ends but I don't know enough about orbiter's guts to know where to start on my own.
 

jangofett287

Heat shield 'tester'
Joined
Oct 14, 2010
Messages
1,150
Reaction score
13
Points
53
The manual is copyright 2003, indicating that this was written for Orbiter 2001 version. This explains why it doesn't work. You will be pleased to know that there is a current Multiplayer system being developed. It doesn't have the same features as vMC, and is still a bit buggy, but more info can be found here:
http://www.orbiter-forum.com/forumdisplay.php?f=45
and
http://omp.dyndns-server.com/
 

Hielor

Defender of Truth
Donator
Beta Tester
Joined
May 30, 2008
Messages
5,580
Reaction score
2
Points
0
I think someone was working on a more updated version of vMC using Orb:Connect, but I don't remember who. Search around the forum for a bit and you might be able to find it.

Unfortunately, I don't think we ever finished updating Orb:Connect for Orbiter 2010, but as long as you don't need to call any Vessel3 functions or 2010-specific functionality you may still be able to use it to make a UI from scratch in any language that supports sockets.
 

Matrix52

New member
Joined
Jun 8, 2012
Messages
9
Reaction score
0
Points
0
Mission control

Hi,
I was thinking more of getting an Orbiter 2010 module to write all major parameters ( Thrust, engine burn time weight of vehicle talk pressure altitudes etc. ) to a text file to be read by the controlling laptop and a series of wireless connected laptops running Labview software which will emulate on one tab the flight controllers screen fido retro etc. And other tabs of the software will have lesson software (also written in executable Labview) Very easy to do the programs in Labview.
The hard part is getting a module to write the parameters to a file in real time.



Hello,

I am a physics teacher interested in building a simple simpit / mission control setup for my class.

I am looking into vMC2 which seems promising but I can't quite make it work.
I downloaded it from here http://www.synchronous.co.uk/vmc/index.htm and followed the instructions in the documentation. however when I get to the part that says:

"Click the “TIMER” toolbar button. You should see the “Mission Timer” page in the vMC window, showing the name of the active spacecraft, the mission elapsed time and any debug messages displayed. This is a good test to check that your connection is operational."

I click on Mission Timer and get nothing but a black screen. The documentation says this is a good test but not what to do if it fails. Does anyone have vMC2 working that can help.

Alternatively does any one have a mission control solution working. I have looked at Orb:Connect options but that project seems to be stalled out.

I am a passable programmer in VB and Python so I would be willing to help out with working on front ends but I don't know enough about orbiter's guts to know where to start on my own.
 

meson800

Addon Developer
Addon Developer
Donator
Joined
Aug 6, 2011
Messages
405
Reaction score
2
Points
18
Writing the module isn't particularly hard, as long as you know the API functions involved. I could possibly put together a small module which output the up-to-date values selected to a text file.

I would need a list of functions from Orbitersdk\doc\API_Reference.pdf

Look starting on page 334 for the vessel status functions. There are functions like GetElements for orbital elements; GetAltitude, GetPitch, GetBank for planet-specific values; GetAtmPressure and GetAtmTemperature for atmosphere values; GetThrusterISP and GetThrusterLevel for the thrust level of certain thrusters, and many many more functions.
 

Matrix52

New member
Joined
Jun 8, 2012
Messages
9
Reaction score
0
Points
0
Thanks Looks like I got some reading and research to do thanks again for giving me a starting point I will get the list as soon as I can.
 

Quick_Nick

Passed the Turing Test
Donator
Joined
Oct 20, 2007
Messages
4,088
Reaction score
204
Points
103
Location
Tucson, AZ
Can you confirm that the relevant port is forwarded for vMC?
 

Hielor

Defender of Truth
Donator
Beta Tester
Joined
May 30, 2008
Messages
5,580
Reaction score
2
Points
0
Text files aren't really designed for real time communications...
 

kamaz

Unicorn hunter
Addon Developer
Joined
Mar 31, 2012
Messages
2,298
Reaction score
4
Points
0
Alternatively does any one have a mission control solution working. I have looked at Orb:Connect options but that project seems to be stalled out.

I'd say that Orb::Connect is functionally complete -- it will send you simulation status over the socket just fine. You just need to write your own mission control app. Can be easily done in Python or VB.

If you want to write your own modules, you can use this add on which synchronizes state between several instances of Orbiter as a starting point -- the source is included in the download.
 

Matrix52

New member
Joined
Jun 8, 2012
Messages
9
Reaction score
0
Points
0
Thanks for helping

Hi,
I have a short list just to have something so I can test the other parts of the software I can write in Labview. Instead of typing all 7 down here is the page number and bullet number of the functions. I assume it would be faster for you to just cut and paste from the reference doc (I hope) When I get that to work if you include a text doc of the code you compile I can edit it with the values I need. There should not be too many of them but I need to seriously think about which functions/data I need. Thank you again for helping me so much. I haven't programmed in C or anything other than Labview in 15 years.

Here you are Page 333 Bullet function #5, 334 #4, 335, #3 #5 #13, 341, #11 #15

Hope that is easy enough The text file can be placed in any Orbiter folder I guess. or make one. Text file name "Flightdatatest"

Thanks again. My hardware project this winter is a LM flight controller joystick. Someone in Spain made one I am in contact with hime to make one for this project!

Thank you again John









Writing the module isn't particularly hard, as long as you know the API functions involved. I could possibly put together a small module which output the up-to-date values selected to a text file.

I would need a list of functions from Orbitersdk\doc\API_Reference.pdf

Look starting on page 334 for the vessel status functions. There are functions like GetElements for orbital elements; GetAltitude, GetPitch, GetBank for planet-specific values; GetAtmPressure and GetAtmTemperature for atmosphere values; GetThrusterISP and GetThrusterLevel for the thrust level of certain thrusters, and many many more functions.


---------- Post added at 01:53 AM ---------- Previous post was at 01:52 AM ----------

Hi,
I have a short list just to have something so I can test the other parts of the software I can write in Labview. Instead of typing all 7 down here is the page number and bullet number of the functions. I assume it would be faster for you to just cut and paste from the reference doc (I hope) When I get that to work if you include a text doc of the code you compile I can edit it with the values I need. There should not be too many of them but I need to seriously think about which functions/data I need. Thank you again for helping me so much. I haven't programmed in C or anything other than Labview in 15 years.

Here you are Page 333 Bullet function #5, 334 #4, 335, #3 #5 #13, 341, #11 #15

Hope that is easy enough The text file can be placed in any Orbiter folder I guess. or make one. Text file name "Flightdatatest"

Thanks again. My hardware project this winter is a LM flight controller joystick. Someone in Spain made one I am in contact with hime to make one for this project!

Thank you again John















Writing the module isn't particularly hard, as long as you know the API functions involved. I could possibly put together a small module which output the up-to-date values selected to a text file.

I would need a list of functions from Orbitersdk\doc\API_Reference.pdf

Look starting on page 334 for the vessel status functions. There are functions like GetElements for orbital elements; GetAltitude, GetPitch, GetBank for planet-specific values; GetAtmPressure and GetAtmTemperature for atmosphere values; GetThrusterISP and GetThrusterLevel for the thrust level of certain thrusters, and many many more functions.
 

meson800

Addon Developer
Addon Developer
Donator
Joined
Aug 6, 2011
Messages
405
Reaction score
2
Points
18
Attached is a quick module I made. It outputs, line by line, the following once per simulation second into a file named "Flightdatatest.txt" in the orbiter root (where Orbiter.exe is).
Code:
SimulationTime,FocusVesselName,COG_Elevation,Mass,GlobalVelX,GlobalVelY,GlobalVelZ,GlobalOrientationX,GlobalOrientationY,GlobalOrientationZ,TotalPropellentMass,TotalPropellentFlowRate

Just unzip into your Orbiter installation and enable the module!

Hope it helps! :tiphat:
 

Attachments

  • Flightdatatest.zip
    134.9 KB · Views: 11

yagni01

Addon Developer
Addon Developer
Donator
Joined
Feb 8, 2008
Messages
463
Reaction score
0
Points
16
Location
Atlanta, GA
I'd say that Orb::Connect is functionally complete -- it will send you simulation status over the socket just fine. You just need to write your own mission control app. Can be easily done in Python or VB.

If you want to write your own modules, you can use this add on which synchronizes state between several instances of Orbiter as a starting point -- the source is included in the download.

Yes, Orb:Connect is stalled but not forgotten (and vMC never really worked with it). My wife passed away this time last year, and I haven't been dedicating much time to 'hobbies' since then. The O:C v2.0 is updated for Orbiter2010, albeit with an earlier API, and I will try to get back into the game by spring - integrating Kamaz's VNC and orbiter-sync projects as well as my hardware projects continue to call my name.

I hope you'll bear with me.
 

kamaz

Unicorn hunter
Addon Developer
Joined
Mar 31, 2012
Messages
2,298
Reaction score
4
Points
0
Hi Matrix52,

Attached is a client for Orb::Connect written natively in LabView. Enable Orb::Connect in Orbiter and start client.vi to see the demo. See the Orb::Connect manual for command names to extract other parameters you may need.

Done in LabView 2012SP1. I have also saved it as LV 8.0 in case you have an old version.

Enjoy :)
 

Attachments

  • orbconnect.png
    orbconnect.png
    431.5 KB · Views: 26
  • OrbConnect.zip
    52.9 KB · Views: 4
  • OrbConnect_LV8.0.zip
    49.5 KB · Views: 2

Matrix52

New member
Joined
Jun 8, 2012
Messages
9
Reaction score
0
Points
0
Hi,
I loaded the zip file into Orbiter root and extracted here. I ran the sim and paused the sim as Apolls 11 was nearly into orbit, I found no txt file in the root directory.
I ran it again and no joy. I checked and manually put the dll's from the module/plugin folder into the same place in Orbiter, I also did the same for the Orbitersdk/FlightDataLogger folder. I checked the Misc/Flightdatalogger check box in the plugin modules list.

I fell like such a noob. help!





Attached is a quick module I made. It outputs, line by line, the following once per simulation second into a file named "Flightdatatest.txt" in the orbiter root (where Orbiter.exe is).
Code:
SimulationTime,FocusVesselName,COG_Elevation,Mass,GlobalVelX,GlobalVelY,GlobalVelZ,GlobalOrientationX,GlobalOrientationY,GlobalOrientationZ,TotalPropellentMass,TotalPropellentFlowRate

Just unzip into your Orbiter installation and enable the module!

Hope it helps! :tiphat:


---------- Post added at 10:59 PM ---------- Previous post was at 10:52 PM ----------

Opps Hold the phone. Sorry never mind I got it to work I had to un check the "Flightdata" button under the Tools and dialogs section in the Plugin modules list.

Thanks again

John












Attached is a quick module I made. It outputs, line by line, the following once per simulation second into a file named "Flightdatatest.txt" in the orbiter root (where Orbiter.exe is).
Code:
SimulationTime,FocusVesselName,COG_Elevation,Mass,GlobalVelX,GlobalVelY,GlobalVelZ,GlobalOrientationX,GlobalOrientationY,GlobalOrientationZ,TotalPropellentMass,TotalPropellentFlowRate

Just unzip into your Orbiter installation and enable the module!

Hope it helps! :tiphat:


---------- Post added 12-18-13 at 09:23 AM ---------- Previous post was 12-17-13 at 10:59 PM ----------

True But I need only a very low sample rate and it is only a starting point for me trying to get data out so I can get the rest of the software to see something. Thanks for the input. Any suggestions that would be compatible with Labview would be most welcome.

---------- Post added at 09:38 AM ---------- Previous post was at 09:23 AM ----------

Hi,
Correction I got it to work twice. I tried clearing the saves, restarting the computer and do not speed up the simulation. I run orbiter about 440 sec only got two flightdata text files created. The second one gave me a AS-506_Angel message after I killed the 1st stage engines 20 sec into the flight. Any suggestions? Sorry for being a noob.
 

kamaz

Unicorn hunter
Addon Developer
Joined
Mar 31, 2012
Messages
2,298
Reaction score
4
Points
0
Correction I got it to work twice. I tried clearing the saves, restarting the computer and do not speed up the simulation. I run orbiter about 440 sec only got two flightdata text files created.

Looking at meson800's code, it appears that there is a bug: lastSimt variable is never initialized, which means that it may refuse to start logging randomly. It will also not re-start logging if you stop the simulation, roll back to the launch pad and start again, because lastSimt still remembers the last run. You'd have to exit Orbiter completely (i.e. exit launchpad) and restart it again.

Unfortunately I cannot fix it right now because I am at work.
 

meson800

Addon Developer
Addon Developer
Donator
Joined
Aug 6, 2011
Messages
405
Reaction score
2
Points
18
Yep :facepalm:

Attached is the bug-free version; lastSimt is set to zero at SimulationStart. I didn't notice this during testing, as I have "Terminate Orbiter process" set as my shutdown behavior.
 

Attachments

  • Flightdatatest.zip
    137.2 KB · Views: 7

kamaz

Unicorn hunter
Addon Developer
Joined
Mar 31, 2012
Messages
2,298
Reaction score
4
Points
0
Hi Matrix52,

Did you try my LabView code / are thinking about using it?

Just curious :)
 

Matrix52

New member
Joined
Jun 8, 2012
Messages
9
Reaction score
0
Points
0
Hello,
I am working on that very concept, Using the Labview programming language and a simple adon to get flight data from Orbiter once a second. Then process the data on sever PC and have students with laptops receive the data and process it like the real mission control Flight dynamics propulsion etc.
 
Top