Vyrobte si vlastní button box s přepínači, rotary encodery a LED indikátory za zlomek ceny komerčních řešení. Kompletní návod s kódem a schématy.
Proč vlastní button box?
Komerční button boxy stojí 200-500 €. S Arduinem a základními součástkami si postavíte custom panel přesně podle vašich potřeb za zlomek ceny.
Potřebný materiál
- Arduino Leonardo nebo Pro Micro (důležité — musí podporovat HID) — ~250 Kč
- Toggle switches (ON/OFF) — 10× ~200 Kč
- Momentary push buttons — 8× ~100 Kč
- Rotary encoders (s tlačítkem) — 3× ~150 Kč
- LED indikátory — 5× ~50 Kč
- Prototyping PCB — ~80 Kč
- Krabička — 3D tisk nebo hliníkový box — ~200 Kč
- Kabely a pájka — ~100 Kč
Celkem: ~1 100 Kč (vs 5 000+ Kč komerční řešení)
Zapojení
Arduino Leonardo se chová jako USB joystick — Windows ho rozpozná automaticky bez driverů.
- Každý switch/button připojte mezi digitální pin a GND
- Enkodéry: CLK pin, DT pin, GND; SW pin pro tlačítko
- LED: přes 220Ω rezistor na digitální výstupní pin
- Použijte interní pull-up rezistory (INPUT_PULLUP)
Software
Použijte knihovnu Joystick.h:
#include <Joystick.h>
Joystick_ Joystick(JOYSTICK_DEFAULT_REPORT_ID,
JOYSTICK_TYPE_JOYSTICK, 32, 0,
false, false, false, false, false, false,
false, false, false, false, false);
void setup() {
Joystick.begin();
// Set pins as INPUT_PULLUP
for (int i = 2; i = 21; i++) {
pinMode(i, INPUT_PULLUP);
}
}
void loop() {
for (int i = 2; i = 21; i++) {
Joystick.setButton(i-2, !digitalRead(i));
}
Joystick.sendState();
delay(10);
}
Příklady layoutů
- GA panel: Master, Avionics, Landing light, Nav lights, Pitot heat, Fuel pump, Beacon, Strobe + COM/NAV enkodéry
- Airliner overhead: APU, Packs, Engine start, Seatbelt sign, No smoking, Anti-ice + Barometer encoder
Sdílejte své výtvory na SimCzech fóru v sekci Komunita — těšíme se na vaše buildy!
Sdílet: