MacFevre Posted March 13, 2014 Posted March 13, 2014 Just letting you know Boltz, if been anxiously waiting for this since your announcement on the other board. I know Gadroc been working on a inexpensive hardware solution for his EOS, but that has yet to bear any fruit. Haven't heard from him in awhile and hope everything's alright. Anyway, thanks for this, and if you ever need me to test anything for you, let me know! :) Buttons aren't toys! :smilewink: My new Version 2 Pit: MacFevre A-10C SimPit V2 My first pit thread: A-10C Simulator Pit "The TARDIS." Dzus Fastener tutorial, on the inexpensive side: DIY Dzus Fastener
Boltz Posted March 14, 2014 Author Posted March 14, 2014 Thanks MacFevre, I will let you know if I need any help since soon I could do with some testers. All has been quiet here mainly due to a lot of electronics work especially with matrices. I completely reworked the entire electronics system in my pit over the last couple of weeks to use matrices and also to reduce some of the wiring only to discover that what worked on breadboard has a lot of flaws when used on a larger scale. To remedy this I ordered a lot of components from RS-Components which arrived this morning so I now have 300 diodes to solder into my pit :helpsmilie: I will also soon be able to start building some prototype gauges to allow servo and stepper control. So all is still going strong here I just keep adding new features and reworking sections. I am not sure when I will release the program as I don't want people to have to constantly download code or flash Arduinos and above all have to redo wiring. I am now moving onto my fourth version of that. Boltz A-10C Cockpit Build Thread My YouTube Channel
doveman Posted April 27, 2014 Posted April 27, 2014 Hi Boltz What you're doing here sounds great and I'm sure will help me immensely when I come to build my DCS panels. :thumbup: You may have already come across it, or it may not tell you anything you don't already know but Vlad has put together a great site with info about using the Arduino with X-Plane, so you might want to take a look http://arduino.svglobe.com/ I'm new to Arduino (and panel building actually) and am planning to start with a fairly simple panel for X-Plane for my Dad, based on this design by screetch82 http://forums.x-plane.org/uploads/monthly_10_2013/post-134928-0-12502800-1382358634.jpg I'm thinking I might replace the engine and lighting toggle switches with momentary push buttons with built-in LEDS like these http://www.digikey.com/catalog/en/partgroup/tl1240-series/19887 to indicate ON status, which will have the advantage of being able to be reset by the sim as well as looking cool, although that might be a bit advanced for me, so I might just use rocker switches like on the Saitek Switch Panel http://www.saitek.com/uk/prod/switch.html LED rockers like these would look quite classy I think but they don't have separate pins for the LED so I couldn't use those unfortunately. http://www.ebay.co.uk/itm/4-Color-12V-LED-Dot-illuminated-Light-Car-Dash-Round-Rocker-ON-OFF-SPST-Switch-/371035627183?pt=UK_BOI_Electrical_Components_Supplies_ET&var=&hash=item5663725eaf For the Autopilot, I thought of reducing the components by having a momentary button which toggles the active section between V/S, HDG and Altitude, with a LED that illuminates above each section to indicate when it's active and then just have the one encoder that adjusts the active section but now I'm thinking of just using the Saitek Multipanel design as that seems quite sensible, with a rotary to select what the encoder adjusts, momentary buttons to toggle the respective parts on and a master AP on button http://www.saitek.com/uk/prod/multi.html I'm not sure how much that sort of display would cost though or if it would be hard to drive and whether I'd be better off just using two rows of 9 7-segment LEDs. Anyway, I don't know how hard it would be to incorporate X-Plane into your software but it's something you might want to consider and would be cool. Main rig: i5-4670k @4.4Ghz, Asus Z97-A, Scythe Kotetsu HSF, 32GB Kingston Savage 2400Mhz DDR3, 1070ti, Win 10 x64, Samsung Evo 256GB SSD (OS & Data), OCZ 480GB SSD (Games), WD 2TB and WD 3TB HDDs, 1920x1200 Dell U2412M, 1920x1080 Dell P2314T touchscreen
TigersharkBAS Posted May 6, 2014 Posted May 6, 2014 I can't see a link to this. Did you finish it? [sIGPIC][/sIGPIC] Creator of: F-18C VFA-195 "Dambusters" 1998 CAG Livery https://forums.eagle.ru/showthread.php?t=213788 F-18C VFA-195 "Dambusters" July 2001 CAG Livery https://forums.eagle.ru/showthread.php?t=215950 Pilot avatars for DCS Logbook https://forums.eagle.ru/showthread.php?t=221160 How to make a DCS A-10C Panel http://forums.eagle.ru/showthread.php?t=65998
Boltz Posted May 6, 2014 Author Posted May 6, 2014 The software is still an ongoing task. Each time I come near to a release I keep changing something or adding something that needs to be tested but that is the nature of these things. I took a break from the electronics to take advantage of a spell of nice weather and get the rest of my pit up to speed. The next step is to go back to IO so hopefully there should be some developments here. I'm working away a lot as well witch is limiting the time I can spend on this. What time I do have usually involves drawing it out in a notepad but I have a lot of ideas for this now. A-10C Cockpit Build Thread My YouTube Channel
Boltz Posted May 6, 2014 Author Posted May 6, 2014 @doveman: I must have missed your post in my hours of forum sweeping. There is no need to use momentary switches and LEDs instead of regular locking toggle switches. Locking toggle switches will show what autopilot switch position is selected for example. No switches should get out of sync with the sim but if they do then there is a "Reset" button that can be pressed which will resync everything. As for building in X-Plane support there is a possibility it will happen but it will require an entire new interface and a lot of reading up on how to connect to X-Plane. It's quite doable just I have to get X-Plane first :) Shouldn't take too long to create the actual interface. For the screen you would need to decide if you wanted to solder 18 7 segment displays and whatever you decide to use to drive them. I soldered 20 in my first radio project and that took weeks to do. A small screen would be much easier. Something like a 4x20 LCD would give you 4 lines of text but they are not as nice to read. A-10C Cockpit Build Thread My YouTube Channel
mr.john_doe Posted May 7, 2014 Posted May 7, 2014 Hello, very nice. I thought off using an arduino as input device some minutes ago (using the Keyboard.write() function) and wanted to look for some examples and tipps and then there was your post. I want to start small (have all modules, but want to begin easy with some switches for A10 or the SU25T (Maybe autopilot or - advanced the cdu as a dream). Do you have any guide how to import / export new commands to the arduino? Please, I want to condribute. Thanks alot.
doveman Posted May 7, 2014 Posted May 7, 2014 @doveman: I must have missed your post in my hours of forum sweeping. There is no need to use momentary switches and LEDs instead of regular locking toggle switches. Locking toggle switches will show what autopilot switch position is selected for example. No switches should get out of sync with the sim but if they do then there is a "Reset" button that can be pressed which will resync everything. As for building in X-Plane support there is a possibility it will happen but it will require an entire new interface and a lot of reading up on how to connect to X-Plane. It's quite doable just I have to get X-Plane first :) Shouldn't take too long to create the actual interface. For the screen you would need to decide if you wanted to solder 18 7 segment displays and whatever you decide to use to drive them. I soldered 20 in my first radio project and that took weeks to do. A small screen would be much easier. Something like a 4x20 LCD would give you 4 lines of text but they are not as nice to read. Hey Boltz, Regarding the toggle switches, all I was thinking is that say you're flying and crash, when you restart then all the toggle switches might be in a different state to the sim and it would be a pain to have to set them to match. I guess from a cold start it wouldn't be a big deal, as you'd just need to set everything to off and start from there but if doing a warm/in-air start then maybe it could get tricky making the toggle switches match the sim switches without causing problems. Using momentary buttons and LEDs (whether built-in to the buttons or external), when restarting the LEDs would reflect the status of the virtual switches without the user having to do anything. I'll probably just use toggles or rockers though, for my first panel at least, as it's going to be much more complicated using momentaries and LEDs. I hadn't actually thought about having to solder up 18 7-segment LEDs for my radio/autopilot displays. I guess I thought I'd be able to get them in blocks and drive them with two wires using the I2C bus, like these OLED displays http://www.ebay.co.uk/itm/0-96-I2C-IIC-SPI-Serial-128X64-OLED-LCD-LED-Display-Module-for-Arduino-white-DE-/251499783216?ssPageName=ADME:L:OC:GB:3160 but I realise now that 7-segment LEDs don't work like that. I did find this mind but I don't think that uses I2C, so I'm not sure how that would work http://www.ebay.co.uk/itm/5V-MAX7219-8-Digit-Red-LED-Display-Module-7-Segment-Digital-Tube-For-Arduino-MCU-/321321910472?pt=UK_BOI_Electrical_Components_Supplies_ET&hash=item4ad04740c8 It'll be great if you can incorporate X-plane into A2DCS. I have a dream of running generic code on the Arduino and using a program like A2DCS to map the generic I/O to the various sims and quickly switch 'profiles' depending on which one we want to fly. :D Anyway, don't let my suggestion about X-Plane make you delay releasing until you've added support for it. It will be great to have it just for DCS for now. Main rig: i5-4670k @4.4Ghz, Asus Z97-A, Scythe Kotetsu HSF, 32GB Kingston Savage 2400Mhz DDR3, 1070ti, Win 10 x64, Samsung Evo 256GB SSD (OS & Data), OCZ 480GB SSD (Games), WD 2TB and WD 3TB HDDs, 1920x1200 Dell U2412M, 1920x1080 Dell P2314T touchscreen
Boltz Posted May 7, 2014 Author Posted May 7, 2014 @ mr.john_doe: The Keyboard commands are good but only if you have one of the newer and more expensive Arduinos. If you want everything as cheap as you can get it, like me, then you need to find another way which is why I started this. @ doveman: Don't know if you quite understood my previous post but there is no need to change all the switches to match up with the sim. Simply start by running through you cockpit checks in the hardware to ensure everything is off then either click a "Reset" button on the software or have it in hardware and that will cycle through every switch and match them all up in the sim. If you are doing hot starts or starting in the air then you will get a good idea as to what switches will already be on so simply a 20 second check to ensure everything is correct is all that is required. That sort of check would be completed anyway to check what systems are started and to ensure comms and weapons are set correctly. One of the great benefits of DCS is that the input commands have a different value for each state rather than just sending out a single command that changes an in-game switch state. it therefore removes a lot of the logic that I had to use for FSX. The "profiles" idea was one of the first things I built into A2DCS so your dream is not too far off. Once I have all the IO's working I will move on to incorporating other sims as I can get them. A-10C Cockpit Build Thread My YouTube Channel
mr.john_doe Posted May 7, 2014 Posted May 7, 2014 @Boltz: My problem is that I couldn't imagine how it should work now. I have tried to find some tutorials (p.E. EOS/Helios with an arduino) but I couldn't get how I can use more then seven buttons or switch positions with one arduino.
Boltz Posted May 7, 2014 Author Posted May 7, 2014 A2DCS doesn't use EOS or Helios. It is a completely separate system. For the switches with A2DCS you can either connect them directly between a digital or analogue pin and ground (except pin 0, 1 and 13) which is 68 switches. Alternatively it can be used in a "matrix" setup, which is how computer keyboards work, which theoretically allows 1156 switches to be used on a single Arduino. The following is a good diagram of a matrix but it is for a MIDI keyboard Imagine each of the 6 sets of switches there as a separate panel. It shows that a lot of switches only take up a very small number of pins. A-10C Cockpit Build Thread My YouTube Channel
mr.john_doe Posted May 7, 2014 Posted May 7, 2014 Thanks alot. When I connect them with an analog or digital pin and ground how do I get then 68 switches? I have 11 pins to use so I get 11 switches? I thought matrix means I connect D2 with A2, D2 with A3, D2 with A3 and so on? But then I came to 111 switches what is a lot. Do you have a good schematic for example and is there a way to get the program now. I couldn't see a download link....
Boltz Posted May 7, 2014 Author Posted May 7, 2014 My numbers were for a Mega and it sounds like you have an Uno. I have 1 Uno in use for testing at the moment and even still with it you get a lot of switches. The analogue pins can all be used as digital, they really just have different letters in that case. There is no way to get A2DCS yet. I am still working on it and am away the last 2 weeks with no arduino :( I will see if I can put together some schematics to show how it works. Will download Fritzing now and see what I can put together. A-10C Cockpit Build Thread My YouTube Channel
Boltz Posted May 7, 2014 Author Posted May 7, 2014 (edited) Schematics I'll update this post as I create the schematics. Please bear with me as this is my first time using Fritzing. UFC built with an Arduino Mega. LED's Vf is 2.5V so no need for a resistor. If your LEDs' forward voltage doesn't add up to 5V then a protective resistor will be required. All the switches shown are "Direct Switches" without a matrix. The switches can be connected to the Arduino in any order but this is how I have done it and how the example will be. Edited May 17, 2014 by Boltz A-10C Cockpit Build Thread My YouTube Channel
mr.john_doe Posted May 10, 2014 Posted May 10, 2014 Hello, I went to the electronics store today. Do you have an expected release date for your tool? So I can start building ... Greetings
Boltz Posted May 10, 2014 Author Posted May 10, 2014 I don't have an release date yet. Still more testing, memory optimisation and crash fixes to do. There are a couple of people who will be testing it soon and from there I will tidy everything up for a release. Depending on work it could be here within the next 2 weeks. I have decided not to include everything in the first release but just to get something done and later on in the year release V2.0 with all the updated features and that will be it completed. A-10C Cockpit Build Thread My YouTube Channel
doveman Posted May 10, 2014 Posted May 10, 2014 Exciting news Boltz, even if I probably won't be in a position to use it when you release it :) Great idea to release what you have ready I think, so that people can benefit from your work and they have V2 to look forward to ;) Main rig: i5-4670k @4.4Ghz, Asus Z97-A, Scythe Kotetsu HSF, 32GB Kingston Savage 2400Mhz DDR3, 1070ti, Win 10 x64, Samsung Evo 256GB SSD (OS & Data), OCZ 480GB SSD (Games), WD 2TB and WD 3TB HDDs, 1920x1200 Dell U2412M, 1920x1080 Dell P2314T touchscreen
Boltz Posted May 17, 2014 Author Posted May 17, 2014 A2DCS Released! Finally, the time has come for me to release my work. My original post has been edited with the releases for x86 and x64 as well as the setup instructions. A2DCS can be used either on the same PC as DCS (has to be 64 bit for DCS) or on a separate networked PC which can be 32 or 64 bit. Remember, what works for me may not work for you. Boltz 2 A-10C Cockpit Build Thread My YouTube Channel
doveman Posted May 17, 2014 Posted May 17, 2014 Awesome Boltz, can't wait to have a play with it :) Main rig: i5-4670k @4.4Ghz, Asus Z97-A, Scythe Kotetsu HSF, 32GB Kingston Savage 2400Mhz DDR3, 1070ti, Win 10 x64, Samsung Evo 256GB SSD (OS & Data), OCZ 480GB SSD (Games), WD 2TB and WD 3TB HDDs, 1920x1200 Dell U2412M, 1920x1080 Dell P2314T touchscreen
geneb Posted May 19, 2014 Posted May 19, 2014 I recently built & tested a simple diode-isolated 32 channel input board. You can download the Eagle & Gerber files (the gerber files are the same ones I sent to Seeedstudio to have the first run made) as well as a rendering of the board: http://www.geneb.org/projects/input/32ch-board-gerbers.zip http://www.geneb.org/projects/input/32ch-board.zip http://www.geneb.org/projects/input/32ch-board.bmp The board uses cheap 1N4148 diodes and gives you four columns by 8 rows per board. The 8 pin connector along the bottom of the board allows you to daisy chain the board to add more columns. You could easily build a 32 column by 8 row setup (512 switches) on a single Arduino Mega 2650. Because of the isolation diodes, you'll be able to decode individual switches no matter how many are closed at once. I've tested the board using the Keypad library that comes with the Arduino IDE and it works great. You'll have to tweak some of the hard-coded settings in the library to account for the larger row & column count. Here's some sample code you can use (this will work with any diode isolated input matrix) to see how it works. // This example only uses a small 3x2 matrix. A standard Arduino Uno should be able to // work with up to an 8 by 10 matrix. // #include <Keypad.h> #if LIST_MAX != 128 #error You need to modify the LIST_MAX constant in Keypad.h to be 128. #error LIST_MAX #endif const byte ROWS = 3; // three rows const byte COLS = 2; // two columns byte switches[ROWS][COLS]; byte rowPins[ROWS] = {4, 3, 2}; //connect to the row pinouts of the input matrix byte colPins[COLS] = {7, 6}; //connect to the column pinouts of the input matrix Keypad keypad = Keypad( makeKeymap(switches), rowPins, colPins, ROWS, COLS ); String msg = ""; void setup(){ byte row; byte col; byte switch_num = 1; Serial.begin(9600); keypad = Keypad( makeKeymap(switches), rowPins, colPins, ROWS, COLS ); keypad.setDebounceTime(1); Serial.print("LIST_MAX is "); Serial.println(LIST_MAX, DEC); for(row = 0; row < ROWS; row++) { for(col = 0; col < COLS; col++) { switches[row][col] = switch_num; switch_num++; } } Serial.println("Ready."); } void loop(){ if (keypad.getKeys()) { for(int i = 0; i < LIST_MAX; i++) { if (keypad.key[i].stateChanged) { switch (keypad.key[i].kstate) { case PRESSED: msg = " On."; break; case HOLD: case IDLE: msg = ""; break; case RELEASED: msg = " Off."; break; } if (!msg.equals("")) { Serial.print("Switch "); Serial.print(keypad.key[i].kchar, DEC); Serial.println(msg); } } } } } These boards should also work well with Boltz's software. g. Proud owner of 80-0007. http://www.f15sim.com - The only one of her kind.
agrasyuk Posted May 19, 2014 Posted May 19, 2014 Finally, the time has come for me to release my work. My original post has been edited with the releases for x86 and x64 as well as the setup instructions. A2DCS can be used either on the same PC as DCS (has to be 64 bit for DCS) or on a separate networked PC which can be 32 or 64 bit. Remember, what works for me may not work for you. Boltz Thank you for your efforts. I'm still not in position to try it , but hopefully by the end of summer... Anton. My pit build thread . Simple and cheap UFC project
mr.john_doe Posted May 27, 2014 Posted May 27, 2014 Hello, great job. I have ordered my mega today (since I only have a nano). Is there a documentation which functions I can map to a key (such as "Master Caution Push")? I don't have a dcs installed here so I couldn't look at helios now. Can you maybe make a extended tutorial for getting leds work (such as flaps, gears or radio)? Thanks a lot for the effort.
Aginor Posted May 27, 2014 Posted May 27, 2014 Great! I'll try it in the next few days (I hope). DCSW weapons cheat sheet speed cheat sheet
Boltz Posted May 27, 2014 Author Posted May 27, 2014 Hello, great job. I have ordered my mega today (since I only have a nano). Is there a documentation which functions I can map to a key (such as "Master Caution Push")? I don't have a dcs installed here so I couldn't look at helios now. Can you maybe make a extended tutorial for getting leds work (such as flaps, gears or radio)? Thanks a lot for the effort. For the Master Caution Push and other UFC commands you can find them in the "config.xml". Take a look through there and it should make some sense, I hope. As for the LEDs I only have the Master Caution in use at the moment but Devon Custard recently posted all the exports on the wiki (http://deadfrogstudios.com/warthogpit/index.php?title=Reference_Data.) If you use the Caution Panel, MIP Annunciators and others which are only on and off then you will be able to get them running now. In the config.xml just copy the master caution line and change the pin number and "404" to a new value. Radios and other exports will require additional components to display them. When I have some time I will look at the radio exporting next but be prepared to create some circuits :smartass: A-10C Cockpit Build Thread My YouTube Channel
Recommended Posts