FSFIan Posted March 21, 2015 Posted March 21, 2015 (edited) To find out what you can do with DCS-BIOS, look at the intro video and the About DCS-BIOS section below. The latest release and documentation is always available from dcs-bios.a10c.de If you want to be notified when a new version of DCS-BIOS or related software is released, you can subscribe to this thread (and optionally enable e-mail notification). What to post where This thread is for the announcement of new software releases only. If you want to announce a new version of your DCS-BIOS-related software, post in this thread, including a link to your project's discussion thread. The preferred way to report bugs is to open a new issue on GitHub. Questions belong in a new thread. Let's avoid creating another 35-page monster. For anything else, you can use the DCS-BIOS Discussion Thread. Please do not PM me with DCS-BIOS-related questions. If the answer might also be useful to someone else (which is the case for most "how can I do X" questions), it belongs in a public thread where it can be discovered using the search function. I am subscribed to "Mission Builder's Corner", "Input and Output" and "Home Cockpits" and read at least the subject line of every thread that gets posted to one of those boards. Introduction Video 8vI_W0j_3uY About DCS-BIOS DCS-BIOS is an Export.lua file for DCS that provides a stable and documented interface for external hardware and software to interact with the clickable cockpit of a DCS: World aircraft. It comes with a software library for the popular Arduino microcontroller platform. Currently supported aircraft modules: A-10C, UH-1H, Mig-21Bis, Ka-50 If you would like to contribute support for another module, please get in touch! Without any programming experience, you can use DCS-BIOS and a $5 Arduino board to connect the following types of controls: momentary push buttons two- or three-position toggle switches multi-position rotary switches rotary encoders LED indicator lights If you have basic programming skills, you can also use the following: character displays (for example for the A-10C's CMSP display) 7-segment displays driven by the MAX7219 chip servo or stepper motors and anything else that can be controlled by an Arduino board Resources Downloads and documentation are available at dcs-bios.a10c.de Development takes place on GitHub original announcement post Related Projects If you have something to add to this list, PM me. BrassEm's VRi2DCSBIOS.exe allows you to use VRInsight devices such as the VRInsight CDU II as input devices for DCS: World The Flightpanels software by ArturDCS connects Saitek Pro Flight panels to DCS In this thread, agrasyuk describes a Raspberry Pi-powered A-10C CDU display How to display the fuel flow on a character LCD (this thread should have enough info to be applicable to other values that are exported by DCS-BIOS) Edited January 25, 2016 by [FSF]Ian DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
FSFIan Posted March 21, 2015 Author Posted March 21, 2015 Released DCS-BIOS v0.3.0. Thanks to wraith444, we now have Mig-21 support! DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
CeeGee Posted March 29, 2015 Posted March 29, 2015 (edited) Everything withdrawn..... Edited March 30, 2015 by CeeGee
FSFIan Posted September 21, 2015 Author Posted September 21, 2015 Released v0.4.0. Thanks to airtom, we now have Ka-50 support! This release also corrects the name of the Huey's 50 KHz selector knob on the UHF radio from "VHF_50KHZ" to "UHF_50KHZ" (so you have to update any sketch that uses that control). DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
BravoYankee4 Posted September 22, 2015 Posted September 22, 2015 Hi Ian Any news regarding the MIG-21 landing gear lights bug? I could of course solve it with some inverter circuits, but having the code fixed would be better :) Thanks for adding more aircrafts! :thumbup:
FSFIan Posted September 22, 2015 Author Posted September 22, 2015 Hi Ian Any news regarding the MIG-21 landing gear lights bug? I don't have the Mig-21, so I cannot look into this. Please use the DCS-BIOS Discussion Thread for comments and questions. This thread is meant for DCS-BIOS related news announcements only. The idea is to have separate threads for news and discussions. Any question where the answer is useful in the future (e.g. "How do I..." instead of bug reports and general comments) should be in a new thread, with a somewhat descriptive subject line, so it is easy to find again in the future. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
BravoYankee4 Posted September 22, 2015 Posted September 22, 2015 Ah, sorry. You can remove my post in this thread if you like, and I'll re enter it in the correct thread. Just wanted to have that specific question in the loop, since the Git hub issue report of it has been without a comment since April 18.
FSFIan Posted October 5, 2015 Author Posted October 5, 2015 Released v0.4.1. A-10C: add AIRSPEED_MAX_IAS, COMPASS_BANK, COMPASS_PITCH, COMPASS_HDG A-10C: fix CMSP toggle switches (the "held up" position sent a wrong command to DCS) avoid spamming dcs.log with errors when in a FC3 aircraft add first draft of pointer calibration tool Please post comments in the DCS-BIOS Discussion Thread. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
FSFIan Posted January 2, 2016 Author Posted January 2, 2016 Released v0.4.2. A-10C: Add SET_VHF_AM and SET_VHF_FM commands to directly set the radio frequencies for the AM and FM radios. Only works for valid frequencies for the given radio. A-10C: add ALT_PNEU_FLAG export value (position of the yellow PNEU flag in the Altimeter) Please post comments in the DCS-BIOS Discussion Thread. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
hannibal Posted February 24, 2016 Posted February 24, 2016 i been out of the loop with DCS BIOS. i started to look at all the pages and videos about DCS BIOS integration and code early last year, but with the on going transition of DCS to 2.0, i didnt want to spend too much time on something that might drastically change in the DCS code base. i like to get back to DCS BIOS to try to make some kind of speed indicator.. the last time i saw, only heading, altitude and position were in the binaries.. i tried to figure out how see where the exports take place, but have noooo clue :'( please please anyone! (cough cough, mr [FSF]Ian) please include airspeed in the common data! other than that, amazing work you are doing! find me on steam! username: Hannibal_A101A http://steamcommunity.com/profiles/76561197969447179
FSFIan Posted February 24, 2016 Author Posted February 24, 2016 please please anyone! (cough cough, mr [FSF]Ian) please include airspeed in the common data! Not going to happen, unless you can show me a piece of Lua code that can get the airspeed in any aircraft. The CommonData module is only for those pieces of data that can be reliably retrieved independent of the aircraft type. Also, please read the first post of this thread. It's meant for release announcements only, to give people a low-traffic thread to subscribe to. For questions, open a new thread. For general discussion, use the DCS-BIOS Discussion Thread. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
hannibal Posted February 25, 2016 Posted February 25, 2016 Ian;2690083']Not going to happen, unless you can show me a piece of Lua code that can get the airspeed in any aircraft. The CommonData module is only for those pieces of data that can be reliably retrieved independent of the aircraft type. Also, please read the first post of this thread. It's meant for release announcements only, to give people a low-traffic thread to subscribe to. For questions, open a new thread. For general discussion, use the DCS-BIOS Discussion Thread. sorry my friend, i thought this was the DCS BIOS Discussion Thread! my mistake! and thank you for the reply. find me on steam! username: Hannibal_A101A http://steamcommunity.com/profiles/76561197969447179
FSFIan Posted March 3, 2016 Author Posted March 3, 2016 Released DCS-BIOS v0.5.0 and the DCS-BIOS Arduino Library v0.2.0. There have been some changes from previous versions. The baud rate for serial communication is now 250000 bps. You should adapt your old sketches to the new version of the Arduino library and reflash your boards. Using the new version of the Arduino library is a bit simpler, because all communication code is now provided by the library by default. You can select which variant of that code you want by defining a preprocessor macro before including DcsBios.h. Here's the new MasterCaution example: /* use '#define DCSBIOS_DEFAULT_SERIAL' instead if your Arduino board * does not feature an ATMega328 or ATMega2650 controller. */ #define DCSBIOS_IRQ_SERIAL #include "DcsBios.h" DcsBios::Switch2Pos lampTestBtn("LAMP_TEST_BTN", 10); DcsBios::LED nmspIlsLed(0x1112, 0x0020, 13); void setup() { DcsBios::setup(); } void loop() { DcsBios::loop(); } By defining DCSBIOS_IRQ_SERIAL, we select the new interrupt-driven communication handling. You should always use this if possible (it only works on ATMega328 and ATMega2560 controllers). For other Arduino-compatible boards, you can define DCSBIOS_DEFAULT_SERIAL to fall back to the standard Serial class. You need to call DcsBios::setup() and DcsBios::loop() from your setup() and loop() functions respectively. RS-485 support is included, but not documented yet beyond what I had mentioned in the DCS-BIOS discussion thread in post #194. As always, please create a new thread for any questions and use the DCS-BIOS Discussion thread for general comments. This thread is meant as a low-traffic thing for people to subscribe to and is reserved for release announcements of DCS-BIOS related software. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
weeb Posted March 4, 2016 Posted March 4, 2016 Ian does that affect Developer Mode in Chrome?. Reference docs, does that need to be updated to latest library. Just asking because I'm sure some others will be asking the same but they may not be happy about asking. Cheers m8 :thumbup: Windows 7 64 Home Premium, i5 3570K (3.4 @ 4.4GHz), Asus P8Z77-V LX, 16GB dual channel 1600 ram, EVGA Nvidia GTX980ti, 240 GB OCZ SSD, 3 TB Raptor, Thrustmaster Warthog Hotas and Throttle, Saitek Pro Combat Rudder pedals.
FSFIan Posted March 25, 2016 Author Posted March 25, 2016 Released v0.2.1 of the Arduino library. This update only has a minor change: the MasterCaution example sketch has been fixed. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
FSFIan Posted April 14, 2016 Author Posted April 14, 2016 Released v0.2.2 of the Arduino library. fix a bug with the dirty bit logic in Int16Buffer. If no previous updates had been received (e.g. when the Arduino had just started up), a data update from DCS-BIOS that tried to set the value to zero would not mark the data as dirty, so getUpdatedData() would still return false. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
FSFIan Posted April 19, 2016 Author Posted April 19, 2016 Released v0.2.3 of the Arduino library. This fixes a bug that would lead to some outputs not working when combined with certain other outputs in the same sketch. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
Ghost46 Posted May 16, 2016 Posted May 16, 2016 Hey Ian My name is Ian aswell :) I wanted to say thank you for all the hard work you put into DCS BIOS, this is a crazy amount of information and will be so much help for my project. I have some issues getting simple things to work tho. I think i was able to manage to install DCS Bios library and all. moved scripts and lua file. Worked out fine. I hooked up an LCD, working with hello world and tried to run the code for UHF/Clock display. i adapted the COM-port in the BAT file, however all i get is this: Couldnt compute FAST_CWD pointer. Please report this problem to the public mailing list cygwin@cygwin.com do you have any idea what i am doing wrong. thanks so much guys cheers
erjdriver Posted May 30, 2016 Posted May 30, 2016 Looked at the github project and I think I could use this. For now just planning on DCS-BIOS - not the arduino library. Few questions... 1. The export data stream format - is that a DCS-BIOS format or DCS. 2. My understanding from the docs, is that the export data stream will only contain data/switches that got changed...so how does one initialize the program (and the displayed switches/buttons) when using DCS-BIOS when the mission starts. 3. Looking at the sample python project, you have the following line. Where are the offsets, masks for all the switches defined? # address = 0x10e4, mask = 0x3800, shift_by = 11 cmspMode = IntegerBuffer(parser, 0x10e4, 0x3800, 11, lambda i: print("CMSP MODE: ", i)) Thanks and appreciate the work put into this project.
FSFIan Posted May 31, 2016 Author Posted May 31, 2016 Looked at the github project and I think I could use this. For now just planning on DCS-BIOS - not the arduino library. Few questions... 1. The export data stream format - is that a DCS-BIOS format or DCS. 2. My understanding from the docs, is that the export data stream will only contain data/switches that got changed...so how does one initialize the program (and the displayed switches/buttons) when using DCS-BIOS when the mission starts. 3. Looking at the sample python project, you have the following line. Where are the offsets, masks for all the switches defined? # address = 0x10e4, mask = 0x3800, shift_by = 11 cmspMode = IntegerBuffer(parser, 0x10e4, 0x3800, 11, lambda i: print("CMSP MODE: ", i)) Thanks and appreciate the work put into this project. Short answers: 1. The data format is specific to DCS-BIOS. 2. If you are already listening to the export data stream when the mission starts, the very first update will include everything -- nothing has been transmitted before, so everything is considered to have changed. If you miss that first update, your application will be up-to-date within about ten seconds anyway, as DCS-BIOS deliberately re-sends some of the unchanged data with each update packet. 3. Set the Control Reference Documentation to "Advanced" view. Please create a new topic for things like this in the future (or if you have follow-up questions). This thread is for release announcements only, for two reasons: a) I wanted to give people a low-traffic thread to watch with the "subscribe to this thread" function b) I hate monster-threads in general, because I have wasted time in the past answering questions I knew I had answered before, but writing it down again took less time than finding the old answer in a thread of 30+ pages (and it starts to get really annoying when two or three discussions are going on at the same time in the same forum thread) There is also the DCS-BIOS Discussion Thread for feedback and general discussion (i.e. anything that I won't have to find again in the future to link to someone else). DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
FSFIan Posted June 7, 2016 Author Posted June 7, 2016 Released v0.2.4 of the Arduino Library. fix DcsBios::ActionButton (buttons would get stuck) fix DCSBIOS_RS485_SLAVE on ATMega328 controllers Please post comments in the DCS-BIOS Discussion Thread. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
FSFIan Posted August 4, 2016 Author Posted August 4, 2016 Released v0.2.5 of the Arduino Library. make SwitchMultiPos default to the last selected position instead of position 0 when none of the pins are pulled to ground. This avoids temporarily switching back to position 0 when you have a break-before-make rotary switch or if some of the positions on your physical rotary switch are unused. Please post comments in the DCS-BIOS Discussion Thread. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
weeb Posted August 5, 2016 Posted August 5, 2016 Thank you Jan Windows 7 64 Home Premium, i5 3570K (3.4 @ 4.4GHz), Asus P8Z77-V LX, 16GB dual channel 1600 ram, EVGA Nvidia GTX980ti, 240 GB OCZ SSD, 3 TB Raptor, Thrustmaster Warthog Hotas and Throttle, Saitek Pro Combat Rudder pedals.
FSFIan Posted November 3, 2016 Author Posted November 3, 2016 Released v0.2.6 of the Arduino Library. make IntegerBuffer::hasUpdatedData() public fix undefined behavior in DCSBIOS_DEFAULT_SERIAL mode add optional argument to select number of steps per detent to DcsBios::RotaryEncoder Please post comments in the DCS-BIOS Discussion Thread. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
FSFIan Posted December 12, 2016 Author Posted December 12, 2016 Released v0.2.7 of the Arduino Library. fix compiler warning when compiling the RS-485 master sketch Please post comments in the DCS-BIOS Discussion Thread. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
Recommended Posts