longuich Posted November 5, 2019 Posted November 5, 2019 Could you expand on what “these” are and where you bought them ? Sent from my iPhone using Tapatalk
Brun Posted November 5, 2019 Author Posted November 5, 2019 Reaching for the master arm switches before remembering you need the mouse gets annoying after a while... In a break with tradition, it's on shapeways already - Master Arm Panel and the OBJ can be downloaded here. Switches: Master Arm, A/A + A/G (x2) and Fire Ext. I kept the mounting fittings generic, not entirely sure how I'm doing that yet. The inserts are M4, but I don't have a link to the ones I ordered and can't guarantee how well others will fit. 1 Asus Z690 Hero | 12900K | 64GB G.Skill 6000 | 4090FE | Reverb G2 | VPC MongoosT-50CM2 + TM Grips | Winwing Orion2 Throttle | MFG Crosswind Pedals
Ketsefletser Posted November 5, 2019 Posted November 5, 2019 Cool ! ....I’m in the process of building something similar. why did you choose a on-off-on switch for master arm ? (I just ordered an on-on one) Verzonden vanaf mijn iPhone met Tapatalk
Brun Posted November 5, 2019 Author Posted November 5, 2019 Description on the website is wrong. Asus Z690 Hero | 12900K | 64GB G.Skill 6000 | 4090FE | Reverb G2 | VPC MongoosT-50CM2 + TM Grips | Winwing Orion2 Throttle | MFG Crosswind Pedals
Ketsefletser Posted November 5, 2019 Posted November 5, 2019 Description on the website is wrong. Ah ;-) phew ... Verzonden vanaf mijn iPhone met Tapatalk
flx54 Posted November 9, 2019 Posted November 9, 2019 Thought i´d share with you. ;) DCS Open beta F/A-18C, A-10C Win10, i7-8700k, AsRock Z370 Extreme 4, GTX1080Ti, 32" 2K Samsung TFT Main screen, 22" 1K Iiyama Touch screen. Warthog HOTAS
Ketsefletser Posted November 9, 2019 Posted November 9, 2019 Thought i´d share with you. ;) Oh no!! Help...that’s beyond my league. How to interface with DCS ? Incredible! Thanks Verzonden vanaf mijn iPhone met Tapatalk
Fusedspine33 Posted November 9, 2019 Posted November 9, 2019 Fix54, Not sure if you have seen the posts by teacypher on his harrier pit. If I understand correctly. He is using an i2c multiplexer to run several displays from one Arduino. He has a GitHub where he posted his code. Might help simplify where you are headed with your project. https://forums.eagle.ru/showthread.php?t=252684
flx54 Posted November 9, 2019 Posted November 9, 2019 Fix54, Not sure if you have seen the posts by teacypher on his harrier pit. If I understand correctly. He is using an i2c multiplexer to run several displays from one Arduino. He has a GitHub where he posted his code. Might help simplify where you are headed with your project. https://forums.eagle.ru/showthread.php?t=252684 Cool. Didnt know this thread. Will have a look onto it. Many thanks! Currently investigating how to get these "snippets" from DCS BIOS to work on my project... DCS Open beta F/A-18C, A-10C Win10, i7-8700k, AsRock Z370 Extreme 4, GTX1080Ti, 32" 2K Samsung TFT Main screen, 22" 1K Iiyama Touch screen. Warthog HOTAS
Fusedspine33 Posted November 9, 2019 Posted November 9, 2019 Cool. Didnt know this thread. Will have a look onto it. Many thanks! Currently investigating how to get these "snippets" from DCS BIOS to work on my project... I am truly hoping you can use this to bring the UFC to life with a relatively simple solution. It is unfortunately beyond me at this point in my understanding of how these components work. Sent from my iPad using Tapatalk
flx54 Posted November 9, 2019 Posted November 9, 2019 I am truly hoping you can use this to bring the UFC to life with a relatively simple solution. It is unfortunately beyond me at this point in my understanding of how these components work. Sent from my iPad using Tapatalk It´s actually not sooo dificult. Soldering is. I am not too talented in soldering and it therefore took me quite some time with some very cheap equipment. Now i will try to add the appropriate lines from DCS-BIOS in the right place. Will see how long it takes me to get this right... DCS Open beta F/A-18C, A-10C Win10, i7-8700k, AsRock Z370 Extreme 4, GTX1080Ti, 32" 2K Samsung TFT Main screen, 22" 1K Iiyama Touch screen. Warthog HOTAS
Fusedspine33 Posted November 9, 2019 Posted November 9, 2019 I ordered clone alphanumerics like adafruit and found the PCB was too large to fit all them in the UFC. The lack of the colon to ID the selected input really bugged me it seemed the displays he used would allow colons to be displayed. The displays he used have no i2c selections and it was teacyphers post that made me aware an i2c multiplexer even existed. Can DCSBios display both the text and the colon on the same display? Not sure if you are interested in trying another display but the ones he is using are $3 So far my attempts at DCSBios are cut and paste. Basically, plagiarism with no real understanding of the how the code works. It’s frustrating to have an idea and lack the depth of knowledge to move it from concept. Sent from my iPad using Tapatalk
flx54 Posted November 9, 2019 Posted November 9, 2019 (edited) I am at the same stage. Copy and Paste. Not much more for me to do, as i am not experienced in coding or whatsoever. I2C is a must as far as i see, because of the simple connection. Dont want to code every pin/segment of the display myself. The PCB size does not matter in my opinion as you could 1st: modify the 3d STL file to fit your PCB or (easier) wire the LED pins to the PCB (detach PCB from LEDs) and place the PCB somwhere else... BTW: the 0,54" LEDs are too large anyway. Looking for green/yellow 0,39" I mean this sort or similar: https://store.arduino.cc/10-jumper-wires-150mm-male Edited November 9, 2019 by flx54 DCS Open beta F/A-18C, A-10C Win10, i7-8700k, AsRock Z370 Extreme 4, GTX1080Ti, 32" 2K Samsung TFT Main screen, 22" 1K Iiyama Touch screen. Warthog HOTAS
Fusedspine33 Posted November 9, 2019 Posted November 9, 2019 Here is another link where a single display for the five displays was discussed. So many potential ways to approach this. And then there is the odd number os digits on the scratch pad..... https://forums.eagle.ru/showthread.php?t=249299
FSFIan Posted November 9, 2019 Posted November 9, 2019 It´s actually not sooo dificult. Soldering is. I am not too talented in soldering and it therefore took me quite some time with some very cheap equipment. If you can, spend about $100 on a decent temperature-controlled soldering station (Hakko FX-888 or similar). For peace of mind, make sure it has an auto-power-off feature. If you have to use a cheap "starter kit" iron without temperature control (definitely possible, I used one for a few years), make sure to avoid lead-free solder. The cheap irons will not match the higher melting point for the lead-free stuff, and while you can still make working lead-free solder joints with one, it is an exercise in frustration. Can DCSBios display both the text and the colon on the same display? You can write your Arduino sketch in such a way that different string values go to the same display. How exactly you do this depends on the exact display and Arduino library used. One method is the one shown in the tutorial video on LCDs. In the on...Changed() function, the first command sets the cursor of the display to the start position and the second one writes the newValue to the display. This works well for displays that support a partial update. A slightly different method should be used if your display can only update everything at once. In that case, remove the on...Changed functions from the code snippets and replace them with NULL in the parameter list to the StringBuffer so you'd end up with something like this: DcsBios::StringBuffer<1> ufcOptionCueing1Buffer(0x7428); DcsBios::StringBuffer<4> ufcOptionDisplay1Buffer(0x7432, NULL); In this mode, the StringBuffer will not call a function when the data changes. You can check it instead from your main loop() like this: if (ufcOptionCueing1Buffer.hasUpdatedData() || ufcOption1DisplayBuffer.hasUpdatedData()) { // one of the two values has changed // write both values to the display and update; pseudo-code, adapt to whatever display library you are using myDisplay.setCursor(12, 20); // some position myDisplay.print(ufcOptionCueing1Buffer.getData()); myDisplay.print(ufcOptionDisplay1Buffer.getData()); myDisplay.update(); } In general, a lot of people seem to ask "can you do X with DCS-BIOS?", to which the answer is almost always "yes, as long as you write some Arduino code". I wonder what kind of documentation I need to add to make people ask "How do I" instead of "Can I do". I cannot add snippets to cover every possible use case (even if I had the time, the sheer amount of snippets would overwhelm a newbie). I have one more feature I want to add to the DCS-BIOS Hub; after that, I want to take some time to focus on bug fixes, some user interface design, and most importantly improve the documentation. Any advice on how I can make this complex topic easier to approach for complete beginners is appreciated. DCS-BIOS | How to export CMSP, RWR, etc. through MonitorSetup.lua
flx54 Posted November 9, 2019 Posted November 9, 2019 Hi Ian, thanks for your input and useful hints. I already found "display1" in the hornet section with which i want to start testing. I guess there is not much more for me to do, than spending more time with it and understanding the logic. I think, that this is going to work well as winter nights are very long... :D DCS Open beta F/A-18C, A-10C Win10, i7-8700k, AsRock Z370 Extreme 4, GTX1080Ti, 32" 2K Samsung TFT Main screen, 22" 1K Iiyama Touch screen. Warthog HOTAS
longuich Posted November 9, 2019 Posted November 9, 2019 Jan, would you be open to centralize documentation and examples ? I for one would love to be able to go to a single place to find info on dcs-bios and *uino code instead of having to scour the interwebs and ending up reluctantly asking you about something. ~michel Ian;4103267']If you can, spend about $100 on a decent temperature-controlled soldering station (Hakko FX-888 or similar). For peace of mind, make sure it has an auto-power-off feature. If you have to use a cheap "starter kit" iron without temperature control (definitely possible, I used one for a few years), make sure to avoid lead-free solder. The cheap irons will not match the higher melting point for the lead-free stuff, and while you can still make working lead-free solder joints with one, it is an exercise in frustration. ... I have one more feature I want to add to the DCS-BIOS Hub; after that, I want to take some time to focus on bug fixes, some user interface design, and most importantly improve the documentation. Any advice on how I can make this complex topic easier to approach for complete beginners is appreciated. Sent from my iPhone using Tapatalk
Fusedspine33 Posted November 9, 2019 Posted November 9, 2019 (edited) (FSF)Ian, Wow, thanks for jumping in here, honored for your response. The question of “how do I” is a much better way of approaching a challenge. Some of the challenges to mimicking the UFC is a lack of readily available components, such as the scratch pad with a single line of 13 digits and the colon display which extends to 5 digits. Ready made components like the adafruit seem to have 1 or 4 digits packaged with a controller chip. The adafruit design offer selectable i2c addresses enabling the use of 1 Arduino to control the displays but no ability to display the colon. The display used by teacypher doesn’t have selectable i2c addresses and his post made me aware there was an 12c multiplexer even available. I thought I was going to have to use a single Arduino per display. Not very efficient. Teacyphers approach is much more efficient. Now it is making it work. The displays he chose are: https://www.ebay.com/itm/0-91-128x32-IIC-I2C-Blue-OLED-LCD-Display-DIY-Module-DC3-3V-5V-For-PIC-Arduino/401234789687?ssPageName=STRK%3AMEBIDX%3AIT&_trksid=p2057872.m2749.l2649 They are relatively inexpensive and if displayed behind green plexiglass should look acceptable. For the scratchpad it’s learning how to create a controller for 13 digits as a single line. How do I? Still remains an open question. After watching a bunch of soldering videos I went with a Weller temperature adjustable station. Much more comfortable to use than the cheap one I had before. Ian;4103267']If you can, spend about $100 on a decent temperature-controlled soldering station (Hakko FX-888 or similar). For peace of mind, make sure it has an auto-power-off feature. If you have to use a cheap "starter kit" iron without temperature control (definitely possible, I used one for a few years), make sure to avoid lead-free solder. The cheap irons will not match the higher melting point for the lead-free stuff, and while you can still make working lead-free solder joints with one, it is an exercise in frustration. You can write your Arduino sketch in such a way that different string values go to the same display. How exactly you do this depends on the exact display and Arduino library used. One method is the one shown in the tutorial video on LCDs. In the on...Changed() function, the first command sets the cursor of the display to the start position and the second one writes the newValue to the display. This works well for displays that support a partial update. A slightly different method should be used if your display can only update everything at once. In that case, remove the on...Changed functions from the code snippets and replace them with NULL in the parameter list to the StringBuffer so you'd end up with something like this: DcsBios::StringBuffer<1> ufcOptionCueing1Buffer(0x7428); DcsBios::StringBuffer<4> ufcOptionDisplay1Buffer(0x7432, NULL); In this mode, the StringBuffer will not call a function when the data changes. You can check it instead from your main loop() like this: if (ufcOptionCueing1Buffer.hasUpdatedData() || ufcOption1DisplayBuffer.hasUpdatedData()) { // one of the two values has changed // write both values to the display and update; pseudo-code, adapt to whatever display library you are using myDisplay.setCursor(12, 20); // some position myDisplay.print(ufcOptionCueing1Buffer.getData()); myDisplay.print(ufcOptionDisplay1Buffer.getData()); myDisplay.update(); } In general, a lot of people seem to ask "can you do X with DCS-BIOS?", to which the answer is almost always "yes, as long as you write some Arduino code". I wonder what kind of documentation I need to add to make people ask "How do I" instead of "Can I do". I cannot add snippets to cover every possible use case (even if I had the time, the sheer amount of snippets would overwhelm a newbie). I have one more feature I want to add to the DCS-BIOS Hub; after that, I want to take some time to focus on bug fixes, some user interface design, and most importantly improve the documentation. Any advice on how I can make this complex topic easier to approach for complete beginners is appreciated. Edited November 9, 2019 by Fusedspine33
flx54 Posted November 10, 2019 Posted November 10, 2019 (edited) OK, i think i messed up. Trying to clean up the libraries even after uninstalling the IDE. Cant include dcs-bios.h as it is already installed somewhere else. I need to check for a clean uninstall before continuing i guess. Whats the best option to include the library for DCS BIOS? Add the zip or place the uncompressed folder into the library folder of the IDE? Edited November 10, 2019 by flx54 DCS Open beta F/A-18C, A-10C Win10, i7-8700k, AsRock Z370 Extreme 4, GTX1080Ti, 32" 2K Samsung TFT Main screen, 22" 1K Iiyama Touch screen. Warthog HOTAS
flx54 Posted November 10, 2019 Posted November 10, 2019 (edited) UPDATE: BIG SUCCESS !!! I managed to get Display 1 of the UFC to show correctly on the 4 digit 14-segment display using this code. (Nothing special for (FSF)Jan (THX A LOT !!!) but i guess but thought i´d share with you) // include Adafruit LED Backpack library #include <Wire.h> #include <Adafruit_GFX.h> #include "Adafruit_LEDBackpack.h" // include DCS-BIOS Arduino library #define DCSBIOS_IRQ_SERIAL #include "DcsBios.h" // display instance Adafruit_AlphaNum4 alpha4 = Adafruit_AlphaNum4(); void onufcOptionDisplay1Change(char* newValue) { alpha4.writeDigitAscii(0, newValue[0]); alpha4.writeDigitAscii(1, newValue[1]); alpha4.writeDigitAscii(2, newValue[2]); alpha4.writeDigitAscii(3, newValue[3]); alpha4.writeDisplay(); } DcsBios::StringBuffer<4> ufcOptionDisplay1Buffer(0x7432, onufcOptionDisplay1Change); void setup() { // initialize display alpha4.begin(0x70); // write something to the display // so you see something before data is received alpha4.writeDigitAscii(0, 'A'); alpha4.writeDigitAscii(1, 'B'); alpha4.writeDigitAscii(2, 'C'); alpha4.writeDigitAscii(3, 'D'); alpha4.writeDisplay(); DcsBios::setup(); } void loop() { DcsBios::loop(); } For Connection i used this reference: https://pinout.xyz/pinout/four_letter_phat Pin A4 is used for DATA Pin A5 is used for CLOCK Now i dont know whether the colon in front of the symbols needs a fifth digit or could be adressed separately?! Edited November 10, 2019 by flx54 DCS Open beta F/A-18C, A-10C Win10, i7-8700k, AsRock Z370 Extreme 4, GTX1080Ti, 32" 2K Samsung TFT Main screen, 22" 1K Iiyama Touch screen. Warthog HOTAS
SkyJunky Posted November 11, 2019 Posted November 11, 2019 (edited) Hey everyone, I hope it is ok that i show my version here. I followed the discussion about the displays. This is my UFC with displays. This is an early version. I have not yet the finished version on video. The video is enough to show that it works with OLED displays Only the Comm channel displays are wip. The code for DCS is not ready, the Comm displays are working without DCS. The early version: I have used 2.23 OELD Displays in white. The green color was made with foil. BR Sky Edited November 11, 2019 by SkyJunky Sky´s Simpit
NightShiftNinja Posted November 11, 2019 Posted November 11, 2019 Damn sky, that looks awesome!!!! Sent from my SM-G930W8 using Tapatalk
TWC_Alamo Posted November 11, 2019 Posted November 11, 2019 Ian, First off thanks for all the work on DCS BIOS and your patience in answering so many beginners' questions. I have learning to take advantage of DCS BIOS in my cockpit building on my "todo" list for 2020. Have you thought about using an approach similar to what Sim Innovations' (https://www.siminnovations.com/) uses for their Air Manager program? It is wiki based and makes it extremely easy for beginners to access the information they need to build custom panels and instruments. Sim Innovations' YouTube channel has several tutorials showing how to use their wiki to program instruments and panels. For example this particular one shows programing seven segment displays. Ian;4103267'] In general, a lot of people seem to ask "can you do X with DCS-BIOS?", to which the answer is almost always "yes, as long as you write some Arduino code". I wonder what kind of documentation I need to add to make people ask "How do I" instead of "Can I do". I cannot add snippets to cover every possible use case (even if I had the time, the sheer amount of snippets would overwhelm a newbie). I have one more feature I want to add to the DCS-BIOS Hub; after that, I want to take some time to focus on bug fixes, some user interface design, and most importantly improve the documentation. Any advice on how I can make this complex topic easier to approach for complete beginners is appreciated. [sIGPIC][/sIGPIC] TWC_Alamo Denver, CO Military Flight Sim I7-7700K, 4.9 GHz, Z270-Gaming MB, 16GB, 512GB EVO-960 NVMe M.2, 512GB WD Black NVMe M.2, 1 TB SSD Raid, EVGA RTX 2080ti, Samsung Odyssey Plus, TM HOTAS/MFDs, MFG Crosswinds, Gametrix 908 JetSeat GA Flight Sim I7-5820K, 4.2Ghz, Godlike Carbon MB, 16GB, 512 GB EVO 960 NVME M.2, 2 X SSD, EVGA 1080ti, HTC Vive, 3 X 4K 55" TVs, 4 X 27" Monitors, CH: Flight Yoke, Throttle Quadrant, Rudder Pedals
Fusedspine33 Posted November 12, 2019 Posted November 12, 2019 Thanks for sharing your work. Would you mind sharing your parts list? Thanks Hey everyone, I hope it is ok that i show my version here. I followed the discussion about the displays. This is my UFC with displays. This is an early version. I have not yet the finished version on video. The video is enough to show that it works with OLED displays Only the Comm channel displays are wip. The code for DCS is not ready, the Comm displays are working without DCS. The early version: I have used 2.23 OELD Displays in white. The green color was made with foil. BR Sky
Brun Posted November 12, 2019 Author Posted November 12, 2019 Amazing to see what people are doing with the displays. Never even imagined this when I started it last year. Asus Z690 Hero | 12900K | 64GB G.Skill 6000 | 4090FE | Reverb G2 | VPC MongoosT-50CM2 + TM Grips | Winwing Orion2 Throttle | MFG Crosswind Pedals
Recommended Posts