Jump to content

Aronis

Members
  • Posts

    248
  • Joined

  • Last visited

Everything posted by Aronis

  1. yes, I going to go with my original design with the Potentiometer/rotary switch idea now that I have the BORT files and can see a selection for Potentiometer in that command set. I just have to open the box and re do that switch using a single A# input instead of the 8 digital ones. Will take a week to get to it, too busy at work this week. I'm going to set up a test pot on the Arduino Uno that I have, I have some new rotary switches on order. Mike
  2. I build a right panel for the F16 and have been using it with some success. However, I have noted that when I switch from "Stored HTG" to "Nav" although the in game image changes properly, the INS gets messed up about 1/2 the time and I have restart the INS sync because I get error in the EHSI, redline through range. Also even if the INS align works and I see range info in the EHSI, sometimes the flight path marker in the heads up is not present. How does the external switch box cause this? Any thoughts? Mike
  3. Was looking for same thing, will this modification make you have issues on-line gaming??? Mike
  4. BORT! LOL Mike
  5. thank you so much, I was going to search in YouTube, but this is easier LOL. Mike
  6. Is there another source of code snippets other than the DCS-Bios HUB???? That HUB also interfaces with the game and the board. Is there an alternative? 'Learning is fun' Mike The final result. I had to adjust the text for the INS knob to match the range of the physical rotary switch. All buttoned up and still works. Good enough for me. Now the other side. Mike
  7. Thank you, I got it working, I had the code snippets and variables for the Air Conditioning panel which is not hooked up to anything. So I commented those out and bang, problem solved. So some odd code issue with those snippets?? Who knows. Two last issues. One is that the oxygen panel middle switch will not work, I'll double check the wiring or is that triple check LOL. The other is the Mal&Ind LTS BRT/DIM switch which actually does the Warning Light Panel Test instead of what it is supposed to do. I looked and the Snippet in that section of DCS-BIOS is the wrong code for that particular switch, it does however work for the code that is there, DcsBios::Switch2Pos malIndLtsTest("MAL_IND_LTS_TEST", PIN); so My bad. LOL. Mike code /* Right F16 Panel Board - Mike Aronis 2025 */ /* Variables */ /* Sensor Power Panel */ int fcrPowerSwitch = 49; int leftHardPointSwitch = 45; int rightHardPointSwitch = 47; int radarAltPowerSwPinA = 51; int radarAltPowerSwPinB = 53; /* HUD switches */ int hudScalesSwitchPinA = 29; int hudScalesSwitchPinB = 31; int hudFpMarkSwitchPinA = 33; int hudFpMarkSwitchPinB = 35; int hudDedDSPinA = 39; int hudDedDSPinB = 37; int hudDepressRetSwitchPinA = 43; int hudDepressRetSwitchPinB = 41; int hudSpeedSwitchPinA = 25; int hudSpeedSwitchPinB = 27; int hudAltSwitchPinA = 23; int hudAltSwitchPinB = 22; int hudBrtSwitchPinA = 24; int hudBrtSwitchPinB = 26; int hudTestSwitchPinA = 28; int hudTestSwitchPinB = 30; /* Lighting Potentiometers */ int priConBrtKnob = A1; int priInstPnlBrtKnob = A2; int priDataDisplayBrtKnob = A3; int floodConBrtKnob = A4; int floodInstPnlBrtKnob = A5; int malIndLtsTestPin = 32; //MAYBE WRONG SNIPET? I have to check /* Avionics Controls */ int mmcPwrSwitch = 15; int stStaSwitch = 18; int mfdSwitch = 19; int ufcSwitch = 20; int mapSwitch = 21; int gpsSwitch = 16; int dlSwitch = 17; int insKnobPin0 = 8; int insKnobPin1 = 7; int insKnobPin2 = 6; int insKnobPin3 = 5; int insKnobPin4 = 4; int insKnobPin5 = 3; int insKnobPin6 = 2; int midsLvtKnobPin0 = 50; int midsLvtKnobPin1 = 52; int midsLvtKnobPin2 = 48; /* Air Cond NOT CONNECTED COMMENT OUT int tempKnbPin0 = 21; int tempKnbPin1 = 20; int tempKnbPin2 = 13; int tempKnbPin3 = 12; int tempKnbPin4 = 11; int tempKnbPin5 = 10; int tempKnbPin6 = 9; int airSourceKnbPin0 = A8; int airSourceKnbPin1 = A9; int airSourceKnbPin2 = A10; int airSourceKnbPin3 = A11; int airSourceKnbPin4 = A12; */ /* KY58 Panel NOT CONNNECTED COMMENT OUT int ky58ModeKnbPin0 = int ky58ModeKnbPin1 = int ky58ModeKnbPin2 = int ky58ModeKnbPin3 = int ky58FillKnbPin0 = int ky58FillKnbPin1 = int ky58FillKnbPin2 = int ky58FillKnbPin3 = int ky58FillKnbPin4 = int ky58FillKnbPin5 = int ky58FillKnbPin6 = int ky58FillKnbPin7 = int ky58PwrKnbPinA = int ky58PwrKnbPinB = int ky58VolKnob = END HERE */ /* Oxygen Panel */ int oxyEmergLvrPinA = 10; int oxyEmergLvrPinB = 11; int oxyDiluterLvrPin = 9; int oxySupplyLvrPinA = 12; int oxySupplyLvrPinB = 13; /* Anti Ice and Ant Select */ int engAntiIcePinA = 34; int engAntiIcePinB = 36; int iffAntSelSwPinA = 38; int iffAntSelSwPinB = 40; int uhfAntSelSwPinA = 42; int uhfAntSelSwPinB = 44; #define DCSBIOS_IRQ_SERIAL #include "DcsBios.h" /* code snippets from the reference documentation */ /* Sensor Panel */ DcsBios::Switch2Pos fcrPwrSw("FCR_PWR_SW", fcrPowerSwitch); DcsBios::Switch2Pos hdptSwL("HDPT_SW_L", leftHardPointSwitch); DcsBios::Switch3Pos rdrAltPwrSw("RDR_ALT_PWR_SW", radarAltPowerSwPinA, radarAltPowerSwPinB); DcsBios::Switch2Pos hdptSwR("HDPT_SW_R", rightHardPointSwitch); /* HUD Panel */ DcsBios::Switch3Pos hudScalesSw("HUD_SCALES_SW", hudScalesSwitchPinA, hudScalesSwitchPinB); DcsBios::Switch3Pos hudFpMarkerSw("HUD_FP_MARKER_SW", hudFpMarkSwitchPinA, hudFpMarkSwitchPinB); DcsBios::Switch3Pos hudDedDataSw("HUD_DED_DATA_SW", hudDedDSPinA, hudDedDSPinB); DcsBios::Switch3Pos hudDepressRetSw("HUD_DEPRESS_RET_SW", hudDepressRetSwitchPinA, hudDepressRetSwitchPinB); DcsBios::Switch3Pos hudSpeedSw("HUD_SPEED_SW", hudSpeedSwitchPinA, hudSpeedSwitchPinB); DcsBios::Switch3Pos hudAltSw("HUD_ALT_SW", hudAltSwitchPinA, hudAltSwitchPinB); DcsBios::Switch3Pos hudBrtSw("HUD_BRT_SW", hudBrtSwitchPinA, hudBrtSwitchPinB); DcsBios::Switch3Pos hudTestSw("HUD_TEST_SW", hudTestSwitchPinA, hudTestSwitchPinB); /* Lighting Panel */ DcsBios::PotentiometerEWMA<5, 128, 5> priConsolesBrtKnb("PRI_CONSOLES_BRT_KNB", priConBrtKnob); DcsBios::PotentiometerEWMA<5, 128, 5> priInstPnlBrtKnb("PRI_INST_PNL_BRT_KNB", priInstPnlBrtKnob); DcsBios::PotentiometerEWMA<5, 128, 5> priDataDisplayBrtKnb("PRI_DATA_DISPLAY_BRT_KNB", priDataDisplayBrtKnob); DcsBios::PotentiometerEWMA<5, 128, 5> floodConsolesBrtKnb("FLOOD_CONSOLES_BRT_KNB", floodConBrtKnob); DcsBios::PotentiometerEWMA<5, 128, 5> floodInstPnlBrtKnb("FLOOD_INST_PNL_BRT_KNB", floodInstPnlBrtKnob); DcsBios::Switch2Pos malIndLtsTest("MAL_IND_LTS_TEST", malIndLtsTestPin); // this is the wrong code /* Avionics Panel */ DcsBios::Switch2Pos mmcPwrSw("MMC_PWR_SW", mmcPwrSwitch); DcsBios::Switch2Pos stStaSw("ST_STA_SW", stStaSwitch); DcsBios::Switch2Pos mfdSw("MFD_SW", mfdSwitch); DcsBios::Switch2Pos ufcSw("UFC_SW", ufcSwitch); DcsBios::Switch2Pos mapSw("MAP_SW", mapSwitch); DcsBios::Switch2Pos gpsSw("GPS_SW", gpsSwitch); DcsBios::Switch2Pos dlSw("DL_SW", dlSwitch); const byte insKnbPins[7] = {insKnobPin0, insKnobPin1, insKnobPin2, insKnobPin3, insKnobPin4, insKnobPin5, insKnobPin6} ; DcsBios::SwitchMultiPos insKnb("INS_KNB", insKnbPins, 7); const byte midsLvtKnbPins[3] = {midsLvtKnobPin0, midsLvtKnobPin1, midsLvtKnobPin2}; DcsBios::SwitchMultiPos midsLvtKnb("MIDS_LVT_KNB", midsLvtKnbPins, 3); //DcsBios::Switch3Pos midsLvtKnb("MIDS_LVT_KNB", midsLvtKnobPin0, midsLvtKnobPin1); /* Air Cond NOT CONNECTED COMMENT OUT const byte tempKnbPins[13] = {tempKnbPin0, tempKnbPin1, tempKnbPin2, tempKnbPin3, tempKnbPin4, tempKnbPin5, tempKnbPin6}; DcsBios::SwitchMultiPos tempKnb("TEMP_KNB", tempKnbPins, 13); const byte airSourceKnbPins[9] = {airSourceKnbPin0, airSourceKnbPin1, airSourceKnbPin2, airSourceKnbPin3, airSourceKnbPin4}; DcsBios::SwitchMultiPos airSourceKnb("AIR_SOURCE_KNB", airSourceKnbPins, 9); */ /* KY58 Panel NOT CONNECTED WILL GO ON THE UNO V3 const byte ky58ModeKnbPins[7] = {ky58ModeKnbPin0, ky58ModeKnbPin1, ky58ModeKnbPin2, ky58ModeKnbPin3} DcsBios::SwitchMultiPos ky58ModeKnb("KY58_MODE_KNB", ky58ModeKnbPins, 7); const byte ky58FillKnbPins[15] = {ky58FillKnbPin0, ky58FillKnbPin1, ky58FillKnbPin2, ky58FillKnbPin3, ky58FillKnbPin4, ky58FillKnbPin5, ky58FillKnbPin6, ky58FillKnbPin7} DcsBios::SwitchMultiPos ky58FillKnb("KY58_FILL_KNB", ky58FillKnbPins, 15); DcsBios::Switch3Pos ky58PwrKnb("KY58_PWR_KNB",ky58PwrKnbPinA,ky58PwrKnbPinB); DcsBios::PotentiometerEWMA<5, 128, 5> ky58VolKnb("KY58_VOL_KNB", ky58VolKnob); EBD HERE */ /* Oxygen Panel */ DcsBios::Switch3Pos oxyEmergLvr("OXY_EMERG_LVR", oxyEmergLvrPinA, oxyEmergLvrPinB); DcsBios::Switch2Pos oxyDiluterLvr("OXY_DILUTER_LVR", oxyDiluterLvrPin); DcsBios::Switch3Pos oxySupplyLvr("OXY_SUPPLY_LVR", oxySupplyLvrPinA, oxySupplyLvrPinB); /* Anti ice, Ant Select */ DcsBios::Switch3Pos engAntiIce("ENG_ANTI_ICE", engAntiIcePinA, engAntiIcePinB); DcsBios::Switch3Pos iffAntSelSw("IFF_ANT_SEL_SW", iffAntSelSwPinA, iffAntSelSwPinB); DcsBios::Switch3Pos uhfAntSelSw("UHF_ANT_SEL_SW", uhfAntSelSwPinA, uhfAntSelSwPinB); void setup() { DcsBios::setup(); } void loop() { DcsBios::loop(); }
  8. Thank you, No1sonuk, I got it working and then saw your post - I was using D0 and D1, that is where I had the MIDS/LVT connected. Long story short, I moved the rotary switch and worked. But..... Now the long story.... I did some trial and error, made a new board/test set up first trying the optical encoder, was difficult to use as the steps were too fast/slow, not sure, but then....This was on pins 2 and 3 It would not jump/jitter back and forth in game, but it was not easy to reliable pick zero/off/on. So.... I tried a three position switch on my test setup using an Arduino Uno, and connected to 9 and 10, and dam, it worked perfect. I fired up this board and the other (both Arduino running) and it worked. ( the three position switch was disconnected and I commented out the code on the Mega's code just to make sure) So I tried this three position switch back on the Mega in different pin locations and Dam, it worked, So I rewire the three position switch using these alternate pins 48,50,52 and it works 'perfectly' or not. So all the switches work....but now when I use the panel in DCS, get this.... THE OBOGS waring light is on and THE OXYGEN LEVEL IN THE SIM IS LOW AND RUNS OUT QUICKLY. LOL. CAN'T MAKE THIS )(&()*& UP. Now what the hell did I do wrong? It's BIZARE. Mike
  9. Ok, updated DCS-BIOS in my saved games directory, ran program, ran ok, but the same issue with the MIDS/LVT switch. it also adversely effects the INS knob function in certain positions. I triple CHECKED for short circuits and tried another rotary switch, etc, Next I am going to make a quick circuit with my Arduino Nano and just program for the MIDS/LVT rotary switch and see if I can get it working as the only item on the program. Also, am I correct in that you cannot update your Arduino with any of the switches closed? I have found I can only update the code on the Arduino if I put all the switches in the Off position (physical off positions, off for two position toggles and center position for three position toggles, and the rotary switches to off (which is odd because that is a digital input also, not an open circuit.) And it has to be in that same state when DCS is started up, otherwise the board does not work with DCS. Otherwise the Arduino IDE app times out. The first time I saw this I thought the Arduino had died. LOL. Next will be to try making a circuit using an optical encoder instead of rotary switch for the MIDS/LVT. Mike oh, other other thing, Do I need a newer version of the DCS-BIOS HUB program???? Mike
  10. THANK YOU ALL SO MUCH. I will work on it..... Mike
  11. my source for all of it was https://dcs-bios.readthedocs.io/en/latest/ perhaps it's not "the latest" LOL. So, I changed the 13 to 7 and bam it worked properly. I am still having issues with the MIDS/LVT switch. The in game image of the switch just keeps going back and forth, I have tried using both the code for 3 position switch and rotary switch (with the correction of 3 instead of 5 which appears to be an error). All the other switches work perfectly. I did not bother coding nor connecting nuclear consent or the oxygen controls, just put switches in the panel for looks. The MIDS/LVT switch will drive me nuts. Mike
  12. This example shows a 3 but only TWO Pins. (from the DCS BIOS "The Control Reference") Mike
  13. They came directly from DCS-BIOS. They are "Code" Snippets. It's shows 5. That is why I asked LOL. Mike
  14. I am trying to understand the SwitchMultiPos command in DCS-BIOS. I am working with a switch on F16, INS knob, which in game is a 7 position switch. In DCS-BIOS the reference is const byte insKnbPins[13] = {PIN_0, PIN_1, PIN_2, PIN_3, PIN_4, PIN_5, PIN_6} DcsBios::SwitchMultiPos insKnb("INS_KNB", insKnbPins, 13); When I look at the Two Position switch, such as: DcsBios::Switch2Pos gpsSw("GPS_SW", PIN); it has an option for SwitchMultiPos which is: const byte gpsSwPins[3] = {PIN_0, PIN_1} DcsBios::SwitchMultiPos gpsSw("GPS_SW", gpsSwPins, 3); When I look at a Three Position Switch, such as: DcsBios::Switch3Pos hudAltSw("HUD_ALT_SW", PIN_A, PIN_B); it has an option for a SwitchMultiPos which is: const byte hudAltSwPins[5] = {PIN_0, PIN_1, PIN_2} DcsBios::SwitchMultiPos hudAltSw("HUD_ALT_SW", hudAltSwPins, 5); I am trying to understand what the numbers refers to. For the INS knob is uses 13, two position switch is uses 3 and three position switch is uses 5. I cannot see any consistency in this.... Also in snippet the ";" is missing from the string starting with "const byte" and if I don't add it I get a compiler error. And should this declaration of "Const Byte" be up with the other "Int" declarations on the top of the code?? My board works, I just am trying to understand the coding. Thank you, Mike
  15. This video, thank you. Mike
  16. Hello, I was watching a great video on A Hornet's Nest and he showed how to use a Multiposition Switch as a Potentiometer (So one input pin needed instead of 8 inputs), but apparently I need the "Expanded Input Support" to do this. I found that on the download section. The "readme" file has some "instructions" for installing it, but those instructions are too cryptic for me. Can anyone tell me how to add that functionality? The Read me said to extract a folder called DCS to my saved games. I have a DCS folder already. LOL. Thank you, Mike (I got my cheapo panel working with some of the switches and POTS, so far everything works accept the INS multi position switch which is very wonky, perhaps a cheap switch is the issue?)
  17. That was odd, I was trying to post text, but could only post photos, until I reloaded the page from the higher level. Odd. Anyway, the Cheap way......box.....photo......Arduino..... Mike
  18. Aronis

    Viperpits.org

    I guess I am not worthy to sign up as I do not know the answers this guy wants. I guess that forum is not for me. A mere moral playing a game on the computer. Type the Letters , I can't see what these letters are. Projection glass HUD got that one name of the seat? ACES II??? Control Stick SCC? color of the seat cushions? Black ? Grey? how many landing gear, nail that one 3 what is the bubble glass above the pilot called? canopy???? No... Mike
  19. Wow, I love when people create such things and successfully deploy them, for free....very similar experience on car forums for DIY's like me who fix their own cars, etc. When you see someone take a transmission out of their car and convert it to a manual on jack stands in their simple garage, it's just impressive to see. I just installed DCS-BIOS and Arduino IDE and it simply WORKS. No screwing around, followed the instructions and bam, it works. Now I have to wait for the Arduino board to arrive LOL. I think it is simply marvelous that people in this community are able to build from scratch such fantastic interface products. The skills demonstrated here are priceless. You know who they are, simply amazing. And to watch the earlier videos from each and see how they progressed in technique and developed the use of Advertisers, and hone their skills. Impressive. Mike (mine will be simply a photo glued to plywood with the appropriate switches, function over form)
  20. Hello, I have a general list of questions about multiplayer. 1. Lag - what is the expected amount of lag on the servers. Other planes disappear, and reappear or rather new planes appear, so frequently on-line that targeting a plane becomes very difficult. By the time I get close enough to a group of enemy aircraft often times they just disappear. (not that the planes crashed that I could tell) 2. After engine start up and doing INS alignment, even if it gets to '10' ready, often times the navigation ends up not working including position of the flight marker and autopilot. Are the startups all cold without stored heading information? Should I do the long INS Normal alignment setup? If I pick a starting point which is a HOT SPOT is the INS aligned already and all set on that plane? 3. If I request 'startup' from the ATC, should I expect to ever get a reply? Or just startup and go and ignore the ATC? 4. After normal startup and takeoff, I noticed that the EHSI Range indicator has a red line through it, I assume this is because there are no steer points programmed on the server so it has no reference to give a range to? 5. I noticed a Common radio frequency listed on the server description, but do people typically just pick their own radio frequencies for their group to use? (I have VIACOM and SRS installed and I have spoken with people on a server with it before, either by dumb luck that I had the correct radio settings or ?) I had high hopes for MP mode, but so far, Meh... Mike
  21. spooler.....don't read.... As you approach to Anane you head toward the Tacan in the opposite direction of the pattern. That threw me off, but I figured it out after a few laps around the airport. LOL. Mike
  22. Either Mission one is easy or I am getting better? So far so good. Mike
  23. This is AMAZING. Watching you work out the different techniques is simply marvelous. Your final product is amazing. What do you do in the real world? Clearly you are skilled at many things. Just getting the 3D printer working properly is a task LOL. I enjoy DCS and would love more real switches but I am not going down this rabbit hole....LOL.....yet... Mike
  24. thank you very much for the information. I have voiceattack (paid version and it is very good. I was going to look into how to do what you suggest but your info above makes it much easier for me LOL. saved me searching for it. I'm going to give it a try. Mike Yes, I actually told a blind friend about it for just that reason. It's a great tool. Mike
  25. read the code, very interesting, so you have that all run with the Auto startup sequence. Very cool. How do you do similar with voiceattack??? Mike
×
×
  • Create New...