Giter Site home page Giter Site logo

iacopobaroncini / fstamtam Goto Github PK

View Code? Open in Web Editor NEW
5.0 2.0 0.0 49.08 MB

Freeware Cross-Platform Data Exchange Framework, for FSX and Prepar3D cockpit makers

License: GNU General Public License v3.0

HTML 5.91% JavaScript 22.12% C++ 5.86% C 39.71% Java 26.40%
fsx prepar3d simconnect arduino java cplusplus pmdg-ngx pmdg simulator simulation

fstamtam's Introduction

FsTamTam

Freeware Cross-Platform Data Exchange Framework, for FSX and Prepar3D cockpit makers

A computational light-weight Java AWT/Swing FsTamTam Server provides your cockpit elements (FsTamTam Clients or devices) a sort of “plug-and-play” data connectivity to your Flight Simulator via SimConnect.

You don’t need any other additional software in between your devices and your Flight Simulator.

Thanks to the programming guidelines in this document, the software components, and the templates provided in this distribution, you can develop devices in several forms, all sharing the same programming principles and using the same low-level protocol while communicating with FsTamTam Server.

Possible device forms are:

  • Physical elements driven by an Arduino board (i.e. panels with switches, selectors, rotary encoders, leds, etc) - Programming language C++ - Connection type: USB - USB server-side: it automatically detects FsTamTam client devices, and implements the FsTamTam data exchange protocol.
  • C++ program - Programming language: C++ - Connection type: TCP - TCP server-side: it accepts TCP connections only from FsTamTam client devices, and implements the FsTamTam data exchange protocol.
  • Java program - Programming language: Java - Connection type: TCP - TCP server-side: it accepts TCP connections only from FsTamTam devices, and implements the FsTamTam data exchange protocol.
  • Web application - Programming languages: HTML5, CSS, JavaScript - Connection type: HTTP and Websocket - HTTP server-side: it acts as a regular web server, delivering HTML documents, style sheets, images and scripts to the requesting web browser on which the web application actually runs. - TCP server-side: provides Wesocket connectivity, and implements the FsTamTam data exchange protocol.

By using an interface class, your device:

  • Is notified when connects-to/disconnects-from the FsTamTam Server.
  • Is notified when a simulation starts/stops running on your Flight Simulator.
  • Is notified when data (upon subscription) is available:
    • SimConnect Variables (read only), and SimConnect Lists such as AI Waypoint, and Facility Airport/Waypoint/NDB/VOR/TACAN.
    • PMDG-NGX Variables, and PMDG-NGX CDU Screen Data.
    • 8 FsTamTam Global Variables (32-bit integers) all devices could share for exchanging info of “common” interest, if needed.
  • Can trigger SimConnect Events, and PMDG-NGX Events.
  • Can set the value of the 8 FsTamTam Global Variables (32-bit integers).

The distribution includes:

  • FsTamTam Server – A Java AWT/Swing application.
  • FsTamTam Console – A web-based application for getting basic information and programming hints on variables/events and, during simulation sessions, monitoring variables and sending events. Basically, it is a very useful tool for understanding what kind of variable and event data your device shall deal with.
  • FsTamTam CDU device – A fully featured web device that implements the left or right CDU. It could be also used in the palm of your hand, on your mobile phone or tablet.
  • Device programming guides and templates for the various platforms and languages.

FsTamTam Data Exchange Framework is the result of a 2-year long work, started in 2018, along the development of 4 devices for my son’s simulator, made for Boeing 737 PMDG-NGX models running on FSX-SE:

  • STAND – Arduino Mega 2560, switches, push button, motorized throttles and speed break levers, NeoPixel, 3D printing, wood.
  • MCP – Arduino Mega 2560, switches, push buttons, encoders, leds, 3D printing, laser cutting, plexiglass.
  • CDU – Arduino Uno, push buttons, leds, 3D printing.
  • MAIN Panel – Sparkfun Pro Micro, switches, selectors, NeoPixels, 3D printing, wood and metal.

For any further explanation, or if have any suggestions, do not hesitate to contact me.

Have fun!

Ciao,

Iacopo Baroncini

Other projects of mine

  • SoyuzSim - Paid app for iOS and Android - A very realistic space simulator for whom wants to learn how to manually manoeuvre the legendary Soyuz spacecraft during on-orbit operations around the International Space Station (ISS). Video trailer: https://www.youtube.com/watch?v=V33kDNQ6fDU
  • ISS Tracker - Development for the European Space Agency. The most viewed ISS Tracker on Earth, with 350 million-views between 2015 and 2020. It has been selected by NASA and embedded in the NASA HDEV web page that streams live footage from outside the ISS: https://eol.jsc.nasa.gov/ESRS/HDEV/

fstamtam's People

Contributors

iacopobaroncini avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

fstamtam's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.