Jump to content

Arduino project w/ a bunch of pushbuttons and switches


Recommended Posts

I'm thinking of creating a panel with a bunch of pushbuttons and switches.

 

Controllable via Arduino + DCS bios.

 

Before I start on the project - has anyone done anything similar. No need to re-invent the wheel.

 

My idea is to create a panel with a sets of pushbuttons w/ LEDs and some switches.

 

Usable for any DCS aircraft - w/ minimal programming.

Link to comment
Share on other sites

i think with arduino there will be more buttons switches and everything than with CH MFP ))) functionality overall, can have trim wheels for older planes and things like that.

 

 

STEAM

asus p8z68-v gen3, 2600k@4,5ghz(w/c), 16gb, 1080ti(w/c), ch fighterstick/gvl224-4000-8, ch pro throttle, Oculus Rift CV1+Touch, thrustmaster tx

 

Link to comment
Share on other sites

This is worth a look too..you can connect toggle switches, pots, rotary encoders..no software required.:)

http://www.leobodnar.com/shop/index.php?main_page=product_info&cPath=94&products_id=180

Intel Core i7 6700K @ 4.5GHz. Asus-Z170-PRO MB

CORSAIR H105 HYDRO CPU COOLER.

EVGA GTX 1080Ti FTW3 Elite.

16GB DDR4 2666MHZ HYPERX SAVAGE.

SAMSUNG M.2 SSD 128GB SM951 Boot Drive.

SAMSUNG SSD 500GB EVO Working Drive.

Windows 10 Professional

Link to comment
Share on other sites

The key feature I want is buttons with LED inside them.

 

Even though the last one is very interesting - but I think it's 1-way only (so no way to control LEDs).

 

The Leo Bodnar unit will trigger an LED

check the downloads in the further details...

Intel Core i7 6700K @ 4.5GHz. Asus-Z170-PRO MB

CORSAIR H105 HYDRO CPU COOLER.

EVGA GTX 1080Ti FTW3 Elite.

16GB DDR4 2666MHZ HYPERX SAVAGE.

SAMSUNG M.2 SSD 128GB SM951 Boot Drive.

SAMSUNG SSD 500GB EVO Working Drive.

Windows 10 Professional

Link to comment
Share on other sites

This is worth a look too..you can connect toggle switches, pots, rotary encoders..no software required.:)

http://www.leobodnar.com/shop/index.php?main_page=product_info&cPath=94&products_id=180

 

this is my current project also! and i am also using a bodnar board..

find me on steam! username: Hannibal_A101A

http://steamcommunity.com/profiles/76561197969447179

Link to comment
Share on other sites

Look at Mega_Mozg MMjoy:

 

Hardware: ~5$ Arduino PRO Micro (ATMEGA32U4) clone (or ~20$ Sparkfun/Teensy versions).

 

Firmware: MMjoy - loaded through the USB cable.

 

Features:

 

64 push buttons (8x 8 matrix, diodes needed) - EDIT - depends on Arduino version, some has limited pinouts.

6 encoder - adjustable times

8x 12 bits (4096 position) axis - compatibility for digital BUS sensor "MMSens", position sensor that work like HALL sensor, but is less trick to configure, see the TLE5010 (in the links bellow).

8 way HAT.

 

-"Shift" (mode) function, allow a physical button press a virtual button if "shift" are ON.

- Compatibility with shift registers of F-22 PRO, Cougar, Warthog and Cobra M-5 grips, making use this grips "plug-and-play".

 

LED control - if the game have export function:

 

 

Related topics: http://simhq.com/forum/ubbthreads.php/topics/3899105/1

https://forum.warthunder.ru/index.php?/topic/64234-mjoy-mjoy8-mjoy16-mmjoy/

 

Skip the DIY build boards part (firsts posts) with today available and cheap Arduino the DIY ones became obsolete.

 

Compatible Arduino boards:

 

http://simhq.com/forum/ubbthreads.php/topics/3975891/Re:_MMJoy_-_Build_your_own_USB#Post3975891

http://simhq.com/forum/ubbthreads.php/topics/3994326/Re:_MMJoy_-_Build_your_own_USB#Post3994326


Edited by Sokol1_br
add
Link to comment
Share on other sites

The Leo Bodnar unit will trigger an LED

check the downloads in the further details...

 

I was under impression that the BB32 is just button input for those who don't require axis input. I dnot see how it can output to LEDs.

 

Erjdriver, you answered this yourself - arduino with DCS-BIOS. So I'm not sure what is your question really.

Anton.

 

My pit build thread .

Simple and cheap UFC project

Link to comment
Share on other sites

The key feature I want is buttons with LED inside them.

 

I think with DPDT, DPST switch you can use BU0836.

The double circuit allow power the LED with power source independent of the USB card.

 

http://pt.aliexpress.com/store/product/WINCH-IN-OUT-ON-OFF-ON-MOMENTARY-ROCKER-SWITCH-7P-DPDT-BLUE-LED-LIGHT-IP68-FOR/313501_32243466766.html?storeId=313501

 

http://www.alliedelec.com/images/products/datasheets/bm/NKK_SWITCHES_OF_AMERICA/70192199.pdf

 

But not with SPST switch, like:

 

http://www.oilybits.com/images/source/ELECTRICAL_CONTROL__LED_TOGGLE_SWITCH.jpg

 

Because will need take power from the USB, and the low amperage available in BU0836 will handle on few LED.

 

Example on Arduino UNO:

 

https://arduinoexamples.wordpress.com/2013/01/14/mini-toggle-switch-dpdt-on-off-off/


Edited by Sokol1_br
Link to comment
Share on other sites

Usable for any DCS aircraft - w/ minimal programming.

 

I think DCS Bios requires a different sketch for each aircraft. So, at the very least you will have to write the arduino each time you change planes. According to the GitHub page, there are three supported aircraft at this time. The A-10C, Huey and Mig 21.

 

I personally love DCS Bios, but it may not be what you a looking for.

Link to comment
Share on other sites

I have a lot of respect for the creators of DCS Bios, it's a massive help if it suits your needs but it would be great to have a generic firmware that interfaces with a PC utility with profiles for different planes, so we could switch between them and have it send the appropriate commands onto DCS.

 

The firmware's probably the easier part but it needs the PC utility to be of any use. I guess to keep it simple to start with it could just use text files for each plane, which we have to manually edit to assign each physical switch to a DCS command and then the GUI just needs a drop down to let us switch between profiles but even that's beyond me unfortunately.

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

Link to comment
Share on other sites

I think DCS Bios requires a different sketch for each aircraft. So, at the very least you will have to write the arduino each time you change planes. According to the GitHub page, there are three supported aircraft at this time. The A-10C, Huey and Mig 21.

 

I personally love DCS Bios, but it may not be what you a looking for.

 

maybe 1 option is connect all cables to the arduino board through shield. have 3 different boards with 3 different sketches, swap when needed until software solution becomes available.

 

 

STEAM

asus p8z68-v gen3, 2600k@4,5ghz(w/c), 16gb, 1080ti(w/c), ch fighterstick/gvl224-4000-8, ch pro throttle, Oculus Rift CV1+Touch, thrustmaster tx

 

Link to comment
Share on other sites

If you want the inputs to work with any DCS module, you'll want to make them into a USB joystick (MMjoy, Leo Bodnar board or similar) and configure through the DCS: World options.

 

For the outputs, there is no option that will work with all DCS modules. If you don't want to roll your own Export.lua file, you will have to choose either Helios (and the EOS protocol) or DCS-BIOS. I'd recommend DCS-BIOS because the process of adding support for new aircraft modules is documented better (but I am obviously biased).

 

In theory, because DCS-BIOS exports the name of the currently used aircraft, it is possible to write an Arduino sketch that automatically changes its configuration when you switch to another aircraft. The DCS-BIOS Arduino library does not support this however (because it is designed to be as simple as possible), so you'd have to roll your own.

 

But for LED outputs, I think you could simply define two DcsBios::LED instances that refer to the same Arduino pin. The state of the output pin will only be updated when new data is arriving. Because DCS-BIOS uses different export address ranges for different aircraft and only sends data for the currently active aircraft, a DcsBios::LED instance that refers to an export address outside of the current aircraft's address space will never get any data so the two won't step on each other's feet.

 

In the long term, the proper solution to this problem would be DCS-BIOS support in Helios. I do plan to implement that at some point if no one else gives it a try, but I probably won't find time to work on that for the next few months or years.

Link to comment
Share on other sites

I was under impression that the BB32 is just button input for those who don't require axis input. I dnot see how it can output to LEDs.

I agree. IMHO there is no output feature on the BBI32 card, just digital inputs.

 

This is where DCS-BIOS comes in handy as you can have the Arduino channels setup up individually for in or outputs

 

Cheers

Hans


Edited by Hansolo
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...