Jump to content

DCS-BIOS: Overview and Announcements


Recommended Posts

  • Replies 134
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Starting from here: https://github.com/RobinMLi/DCS-CDU-Display I ended up with a 4 inch TFT, driven by an USB powered NANO.   Regards, Vinc    

My real Mi-8 SPU-7 connected to DCS via an Arduino Board Sorry for the wrong orientation of the movie https://youtu.be/cI_8djqOK6s  

I'm still trying to piece the facts together.

Not heard anything from official sources, they seem to have gone radio silent over the last few years..

 

It seems that the official / original DCS bios github is still occasionally active, in particular adding / updating the modules (Viper, Tomcat etc..).

 

As far as support and maintenance outside of modules goes it's complete silence.

 

DCS BIOS core has a latest release of Nov 13 2019 - not all that old or unreasonable.

Unresponded issue go back to Jan 2019

 

DCS BIOS Arduino Library latest release April 30 2017

There are multiple unresponded pull requests for it going back to 2017

 

Far as the Arduino Library goes, Talbot McInnis (https://github.com/talbotmcinnis/dcs-bios-arduino-library) has been making strides.

Latest code is a week old at the time of this post.

 

Have also been advised that Flightpanels is also looking after some DCS BIOS code.

https://github.com/DCSFlightpanels/dcs-bios

 

My current situation, just had a massive cleanup, need to put back together my workbench.

Will be a thing i do in about 2 weeks.

At that point I'll be right on to testing the Arduino library that includes STM32 support using an STM Blue Pill.

Not everyone's cup of tea, but a ~$3 micro with more performance than Arduino could be handy.

After this I'll be looking to test some STM dev boards with higher pin counts.

 

Kudos to DCS BIOS people for their time and effort.

Might just be taking a well deserved break?

 

Edit to add.. Dead might be and exaggeration.. as mentioned above there are multiple forks and others are continuing the work.
There was talk of the DCS BIOS guys wanting to ditch Arduino and go with some kind of RS485 solution, not my bag baby, i already have Arduinos and similar coming out my ears.


Edited by v81

R7 3800X - 32Gig RAM -- All SSD -- GTX1070 -- TM Warthog, MFG Crosswinds & TiR

Link to post
Share on other sites
  • 3 weeks later...

Hi,

I will start very soon my first connection of a Teensy card with DCS-BIOS.
The goal is to connect the SPU-7 of the HIP.

There seems to be a conflict in the export.lua file when playing multiplayer with the use of SRS.
Has anyone experienced this problem before and is there a solution?
Thank you in advance...

 

Link to post
Share on other sites
  • 3 weeks later...

OLED with DCS-BIOS works fine. The beginning was a little confused. When all parameters are okay, the result looks perfect. The 20 x 2 OLED comes with a very large backplate. I elongated the wires. This was tricky. If you like it, my arduino code is below. I also used OLED on UHF and Total Fuel Gauge on my A-10 Mainpanel. The special characters are included! Important: the Reset on OLED-Board must be everytime on hight 3.3V level.

Now I'm looking for a nice solution for the CDU-screen.

Michael


code for Arduino Uno

//#define DCSBIOS_IRQ_SERIAL
#define DCSBIOS_DEFAULT_SERIAL
#include <DcsBios.h>
#include "I2cCharDisplay.h"
#include "Wire.h"

///////////////////////// SETUP //////////////////////////////////////////////////////////////
#define OLEDADDRESS    0x3c                    // i2c address for the oled display
I2cCharDisplay oled(OLED_TYPE, OLEDADDRESS, 2); // create an oled object for a 2 line display
#define TESTNUM

  


void setup() {
  Wire.begin();                     // initialize i2c

  uint8_t mm[8]  = {0x11,0x1b,0x15,0x11,0x11,0x00,0x1F,0x00}; // m
  uint8_t ss[8]  = {0x0e,0x10,0x0e,0x01,0x1e,0x00,0x1F,0x00}; // s
  uint8_t aa[8]  = {0x04,0x0a,0x11,0x1f,0x11,0x00,0x1F,0x00}; // a
  uint8_t xx[8]  = {0x11,0x0a,0x04,0x0a,0x11,0x00,0x1F,0x00}; // x
  oled.createCharacter(0, mm);
  oled.createCharacter(1, ss);
  oled.createCharacter(2, aa);
  oled.createCharacter(3, xx);
  
  oled.begin();                     // initialize the oled
  oled.clear();
  oled.setBrightness(255);
  
  oled.cursorMove(1,1);
  oled.print("OFF     ");
  oled.cursorMove(1,13);
  oled.print("X---X---");
  oled.cursorMove(2,1);
  oled.print("     OFF");
  oled.setBrightness(1);  

  
  
DcsBios::setup();
}




////////////////////////////Config Display ///////////////////////////////////////////////////////
void onCmscTxtJmrChange(char* newValue) {
     oled.setBrightness(255);
     
     oled.cursorMove(1,1);
     oled.print(newValue);
     oled.setBrightness(1);
}
DcsBios::StringBuffer<8> cmscTxtJmrBuffer(0x1096, onCmscTxtJmrChange);


void onCmscTxtChaffFlareChange(char* newValue) {
     oled.setBrightness(255);
     oled.cursorMove(1,13);
        oled.print(newValue[0]);
        oled.print(newValue[1]);
        oled.print(newValue[2]);
        oled.print(newValue[3]);
        if     (newValue[4] == 'm') oled.write(0);
        else if(newValue[4] == 's') oled.write(1);
        else if(newValue[4] == 'a') oled.write(2);
        else if(newValue[4] == 'x') oled.write(3);
        else oled.print(newValue[4]);
        oled.print(newValue[5]);
        oled.print(newValue[6]);
        oled.print(newValue[7]);
     
     oled.setBrightness(1);
}
DcsBios::StringBuffer<8> cmscTxtChaffFlareBuffer(0x108e, onCmscTxtChaffFlareChange);


void onCmscTxtMwsChange(char* newValue) {
     oled.setBrightness(255);
     cleanUpCom (newValue);
     oled.cursorMove(2,1);
     oled.print(newValue);
     oled.setBrightness(1);
}
DcsBios::StringBuffer<8> cmscTxtMwsBuffer(0x12b0, onCmscTxtMwsChange);

char* cleanUpCom(char* newValue) {
for(int i;i<8;i++){
switch (newValue[0]) {
case 'm':
newValue[i]= "\mm";
break;
case 's':
newValue[i]= "\x01";
break;
case 'a':
newValue[i]= "\x02";
break;
case 'x':
newValue[i]= "\x03";
break;
}
}
return newValue;
}




/////////////////////////// LOOP ////////////////////////////////////////////////////////
void loop() {
DcsBios::loop();
}

 

20210306_124651.jpg


Edited by Heling
Link to post
Share on other sites
Am 6.3.2021 um 13:05 schrieb Heling:

...

Now I'm looking for a nice solution for the CDU-screen.

...

 

 

Starting from here: https://github.com/RobinMLi/DCS-CDU-Display

I ended up with a 4 inch TFT, driven by an USB powered NANO.

 

Regards, Vinc

 

 

IMG_20200108_135343a.jpg

IMG_20200108_135319a.jpg

IMG_20200322_134732a.jpg


Edited by Vinc_Vega
  • Like 1

Regards, Vinc

real life: Royal Bavarian Airforce

online: VJS-GermanKnights.de

[sIGPIC][/sIGPIC]

Link to post
Share on other sites
  • 4 weeks later...
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...