emc Posted January 26, 2020 Posted January 26, 2020 (edited) This is thread for DSCpy: https://www.digitalcombatsimulator.c...files/3307532/ https://github.com/emcek/dcspy https://discord.gg/SP5Yjx3 dcspy ---------------- DCSpy is able to pull information from DCS aircraft and display on Logitech G-series keyboards LCD. It supports: * Logitech device with 160x43 px (4 lines) monochrome LCD display - G13, G15 (v1 and v2) and G510 * Logitech device with 320x240 px (8 lines) full RGBA LCD display - G19 * F/A-18C Hornet UFC - Up Front Controller * F-16C Viper DED - Data Entry Display * Ka-50 Black Shark PVI-800 and autopilot channels * F-14B Tomcat - basic support for RIO CAP * more to come.... Requirements ---------------- * Python 3.8 but 3.6+ (with tcl/tk support, see installation) should be fine, please choose Windows x86-64 version, file should be python-3.8.5-amd64.exe https://www.python.org/downloads/ * Logitech Gaming Software 9.02.65 https://support.logitech.com/software/lgs * Logitech LCD SDK 8.57.148 extract to C:\Program Files\Logitech Gaming Software\LCDSDK_8.57.148 http://gaming.logitech.com/sdk/LCDSDK_8.57.148.zip * DCS-BIOS 0.7.34 (or newer) https://github.com/DCSFlightpanels/dcs-bios/releases/latest Installation ---------------- Package is available on PyPI, open Command Prompt and type: $ pip install dcspy or use attached wheel file: $ pip install dcspy-1.2.0-py3-none-any.whl Usage ---------------- 1. pip should install into you python installation directory: i.e.: * d:\python38\dcspy_data\dcspy.ico * d:\python38\scripts\dcspy.exe 2. You can drag and drop dcspy.exe to desktop and make shortcut (with custom icon). 3. Double click on dcspy icon or type dcspy.exe from Command Prompt. 4. LCD display should update with dcspy basic info, waiting to connect to DCS. 5. Run DCS and start any mission. Contributing ------------------ * You want contribute, perfect see: contributing guide https://github.com/emcek/dcspy/blob/master/CONTRIBUTING.md Mono vs. Color ----------------- DCSpy do not uses full potential of G19, which support full RGBA, 8-lines LCD with 7 programmable buttons. In contrast to mono devices (like G13, G15 and G510), which support mono, 4-lines LCD with only 4 buttons. Right now DCSpy use only top 4 lines of LCD and 4 buttons. Way in which actions assign to buttons for G13 (4 buttons form left to right) are mapped to G19 looks: * G13 1st button -> G19 left button * G13 2nd button -> G19 right button * G13 3rd button -> G19 down button * G13 4th button -> G19 up button Maybe in future when settings via config file will be added, then it allowed usage all 7 buttons in G19. Changelog 1.2.0: ------------------ * Simple Tkinter GUI - to sel ect your Logitech keyboard * Support for G19 - Big thanks for BrotherBloat who makes this release possible. He spent countless hours to share his G19 and let me troubleshoot remotely. * F/A-18C shows Total Fuel instead of Total Internal Fuel Changelog 1.1.1: ------------------ Basic support for F-14B Tomcat RIO CAP (Computer Address Panel): * CLEAR - button 1 * S-W - button 2 * N+E - button 3 * ENTER - button 4 Changelog 1.1.0: ------------------ * dcspy use now UDP multicast connection do DCS-BIOS, since each TCP connection slightly increases the amount of work that is performed inside of DCS (blocking the rest of the simulation). * support for integer data to be fetch from DCS-BIOS - using IntegerBuffer() * bios_data in Airplanes instances allow both StringBuffer() and IntegerBuffer() * reformat waiting time before DCS connected * fix Data Entry Display for F-16C Viper - DCS-BIOS 0.7.34 is required Changelog 1.0.0: ------------------ * Ka-50 data from PVI-800 shows (in similar boxes) on LCD * ProtocolParser for DCS-BIOS has new optimized state machine * LCD SDK is re-written from scratch: * low and high level API * auto-loading C library during importing * all API is type annotated and well documented * move loading LCD C library from G13 handler * internal: * refactoring and rename internals of G13 handler module * add unit tests Changelog 0.9.2: ------------------ * You can drag and drop dcspy.exe to desktop and make shortcut (with custom icon) * LCD prints current waiting time to connect to DCS * when DCS exit from plane/mission exception is catch and handle correctly * lots of internal changes, preparing for new features, most important: * change structure of AircraftHandler, move subscription to DCS-BIOS changes out of planes * update and clear methods move from G13 handler to LCD SDK Changelog 0.9.1: ------------------ * G13 handler have display property to send text to LCD * rename starting script to dcspy.exe * starting script now show waiting time for DCS connection * minor code optimization and refactoring Changelog 0.9.0: ------------------ * based on version specelUFC v1.12.1 * added basic handling for Ka-50 PVI-800 data are received but not formatted properly * F-16C DED should working but not 4 buttons under LCD - I don't have it so it is hard to test * G13 handler detect 32/64 bit of Python and load correct version of LCD Logitech C library * adding basic logging for debuging - prints on console * all defined aircraft are detected and loaded on-the-fly during operation * define new plane should be easy just use AircraftHandle as base class * Python LCD SDK was clean-up * other refactorings and code duplication removal Credits ---------------- This project has been heavily inspired by https://github.com/specel/specelUFC, and I want to thank specel, the author of that project for his work and the inspiring ideas. dcspy uses: ---------------- * DCS-BIOS fork by DCSFlightpanels for exporting data from DCS to local network https://github.com/DCSFlightpanels/dcs-bios * jboecker's parser to read data stream fr om DCS-BIOS https://github.com/jboecker/python-dcs-bios-example Edited November 10, 2020 by emc update changelog Take a look my mods CPU: i7 7700 | GPU: GeForce GTX 1080 8GB DDR5 | Motherboard: ASUSTeK PRIME B250M-A | RAM: 2x16GB DDR4-2400 | Output: Kingston HyperX Cloud II | Edifier C2XD 2.1 | Controlls: Saitek X-56 Rhino | Saitek Flight Rudder Pedals | Saitek Multi/Radio/Switch Panels | Thrustmaster MFD Cougar | Elgato Stream Deck XL | OpenTrack with LaserClip | VoiceAttack with VAICOM Pro plugin
PB0_CEF Posted February 7, 2020 Posted February 7, 2020 Hello I really would like to use my old G-15 with your program but I'm not really good at using Python and I'm not able to do that : Installation ---------------- Package is available on PyPI, open Command Prompt and type: $ pip install dcspy or use attached wheel file: $ pip install dcspy-1.1.0-py3-none-any.whl Usage ---------------- pip should install into you python installation directory: i.e.: * d:\python38\dcspy_data\dcspy.ico * d:\python38\scripts\dcspy.exe You can drag and drop dcspy.exe to desktop and make shortcut (with custom icon). After successful connect attempt, G13 display should update. I downloaded and installed all other program but I don't know what to do with DCSPY zip file. I extract it but commands you described didn't work :( Sorry but I'm a complete noob with that :doh:Can you tell me exactly what to do with your file please ? [/url]All known Dynamic Campaign Engine Campaigns Last DCE news : Crisis in PG - Iran-Iraq War - TF-71 - TF80s - War over Beirut ...
emc Posted February 7, 2020 Author Posted February 7, 2020 (edited) Thx for question, i should be easy to fix... I planed to get support for other Logitech keyboard but you are first to ask... anyway for now no changes should be require since G15 has the same LCD. Anyway join to discord here https://discord.gg/SP5Yjx3 it will be quicker and easier to talk then exchange 1000 posts Edited February 7, 2020 by emc Take a look my mods CPU: i7 7700 | GPU: GeForce GTX 1080 8GB DDR5 | Motherboard: ASUSTeK PRIME B250M-A | RAM: 2x16GB DDR4-2400 | Output: Kingston HyperX Cloud II | Edifier C2XD 2.1 | Controlls: Saitek X-56 Rhino | Saitek Flight Rudder Pedals | Saitek Multi/Radio/Switch Panels | Thrustmaster MFD Cougar | Elgato Stream Deck XL | OpenTrack with LaserClip | VoiceAttack with VAICOM Pro plugin
PB0_CEF Posted February 9, 2020 Posted February 9, 2020 It works very well : thanks for you support Envoyé de mon iPhone en utilisant Tapatalk [/url]All known Dynamic Campaign Engine Campaigns Last DCE news : Crisis in PG - Iran-Iraq War - TF-71 - TF80s - War over Beirut ...
emc Posted February 9, 2020 Author Posted February 9, 2020 Glad I could help you! Take a look my mods CPU: i7 7700 | GPU: GeForce GTX 1080 8GB DDR5 | Motherboard: ASUSTeK PRIME B250M-A | RAM: 2x16GB DDR4-2400 | Output: Kingston HyperX Cloud II | Edifier C2XD 2.1 | Controlls: Saitek X-56 Rhino | Saitek Flight Rudder Pedals | Saitek Multi/Radio/Switch Panels | Thrustmaster MFD Cougar | Elgato Stream Deck XL | OpenTrack with LaserClip | VoiceAttack with VAICOM Pro plugin
emc Posted February 14, 2020 Author Posted February 14, 2020 Nice App with better support!!!! thx.... if anything let me know! Take a look my mods CPU: i7 7700 | GPU: GeForce GTX 1080 8GB DDR5 | Motherboard: ASUSTeK PRIME B250M-A | RAM: 2x16GB DDR4-2400 | Output: Kingston HyperX Cloud II | Edifier C2XD 2.1 | Controlls: Saitek X-56 Rhino | Saitek Flight Rudder Pedals | Saitek Multi/Radio/Switch Panels | Thrustmaster MFD Cougar | Elgato Stream Deck XL | OpenTrack with LaserClip | VoiceAttack with VAICOM Pro plugin
emc Posted February 23, 2020 Author Posted February 23, 2020 (edited) Hi! >>> $ pip install dcspy File "<stdin>", line 1 $ pip install dcspy ^ SyntaxError: invalid syntax >>> No don't copy anything into DCS folder. No there is no installer. dcspy is python package available here: https://pypi.org/project/dcspy/ and it can be installed online with pip form command line Did you try this way? https://github.com/emcek/dcspy#installation looks like python/pip insn't avaliable EDIT: I noticed you run 'pip install dcspy' from python, which is wrong! Open Command Prompt and enter command there! or try catch me here: https://discord.gg/SP5Yjx3 Edited February 24, 2020 by emc add info Take a look my mods CPU: i7 7700 | GPU: GeForce GTX 1080 8GB DDR5 | Motherboard: ASUSTeK PRIME B250M-A | RAM: 2x16GB DDR4-2400 | Output: Kingston HyperX Cloud II | Edifier C2XD 2.1 | Controlls: Saitek X-56 Rhino | Saitek Flight Rudder Pedals | Saitek Multi/Radio/Switch Panels | Thrustmaster MFD Cougar | Elgato Stream Deck XL | OpenTrack with LaserClip | VoiceAttack with VAICOM Pro plugin
emc Posted September 13, 2021 Author Posted September 13, 2021 New release: https://github.com/emcek/dcspy * Fix alignment of DED (DCS-BIOS 0.7.41) for F-16C Please download latest DCS-BIOS as well: https://github.com/DCSFlightpanels/dcs-bios/releases/tag/0.7.41 Take a look my mods CPU: i7 7700 | GPU: GeForce GTX 1080 8GB DDR5 | Motherboard: ASUSTeK PRIME B250M-A | RAM: 2x16GB DDR4-2400 | Output: Kingston HyperX Cloud II | Edifier C2XD 2.1 | Controlls: Saitek X-56 Rhino | Saitek Flight Rudder Pedals | Saitek Multi/Radio/Switch Panels | Thrustmaster MFD Cougar | Elgato Stream Deck XL | OpenTrack with LaserClip | VoiceAttack with VAICOM Pro plugin
emc Posted September 15, 2021 Author Posted September 15, 2021 New version: https://github.com/emcek/dcspy/releases/tag/v1.3.0 Take a look my mods CPU: i7 7700 | GPU: GeForce GTX 1080 8GB DDR5 | Motherboard: ASUSTeK PRIME B250M-A | RAM: 2x16GB DDR4-2400 | Output: Kingston HyperX Cloud II | Edifier C2XD 2.1 | Controlls: Saitek X-56 Rhino | Saitek Flight Rudder Pedals | Saitek Multi/Radio/Switch Panels | Thrustmaster MFD Cougar | Elgato Stream Deck XL | OpenTrack with LaserClip | VoiceAttack with VAICOM Pro plugin
Whistler_RIO Posted September 23, 2021 Posted September 23, 2021 awesome work man. i really relied on a this in FalconBMS on my G15 keyboard. Im trying to get a way to break that out from the keyboard if possible, using just the LED in my pit, and this could work great for it, if i can get it working. Thanks for sharing and keep up the good work 1
emc Posted October 15, 2021 Author Posted October 15, 2021 (edited) On 9/24/2021 at 1:58 AM, Whistler_RIO said: awesome work man. i really relied on a this in FalconBMS on my G15 keyboard. Im trying to get a way to break that out from the keyboard if possible, using just the LED in my pit, and this could work great for it, if i can get it working. Thanks for sharing and keep up the good work Thx for nice words... but I a bit do not get it... you are using DCSpy with FalconBMS?!?!?!? It is workng? Or try figure out how to addopt.... general to get dcspy woking with falcon shouiuld be not hard... we/i/you need some tool with export falcon data over network/UDP (this is done by DCS-BIOS) Edit: check this out..... https://www.facebook.com/FalconBMS4/photos/a.298473543505522/1767453959940799/ Edited October 15, 2021 by emc Take a look my mods CPU: i7 7700 | GPU: GeForce GTX 1080 8GB DDR5 | Motherboard: ASUSTeK PRIME B250M-A | RAM: 2x16GB DDR4-2400 | Output: Kingston HyperX Cloud II | Edifier C2XD 2.1 | Controlls: Saitek X-56 Rhino | Saitek Flight Rudder Pedals | Saitek Multi/Radio/Switch Panels | Thrustmaster MFD Cougar | Elgato Stream Deck XL | OpenTrack with LaserClip | VoiceAttack with VAICOM Pro plugin
emc Posted October 15, 2021 Author Posted October 15, 2021 new version https://github.com/emcek/dcspy/releases/tag/v1.5.0 Changelog 1.5.0: ------------------ Support for AV-8B N/A Harrier with: * UFC - Up Front Controller * ODU - Option Display Unit * decrease UFC Comm 1 Channel - G13 1st button or G19 left button * increase UFC Comm 1 Channel - G13 2nd button or G19 right button * decrease UFC Comm 2 Channel - G13 3rd button or G19 down button * increase UFC Comm 2 Channel - G13 4th button or G19 up button Changelog 1.4.0: ------------------ * Configuration editor: * dcsbios - se t default Logitech keyboard: "G19", "G510", "G15 v1/v2", "G13" * show_gui - showing or hiding GUI during start of DCSpy * dcsbios - location of DCS-BIOS folder inside user's Saved Games * Check and upd ate DCS-BIOS directly from DCSpy * Check DCS-BIOS button in Config editor * dcsbios needs to be se t to correct value * Basic A-10C Warthog and A-10C II Tank Killer support Take a look my mods CPU: i7 7700 | GPU: GeForce GTX 1080 8GB DDR5 | Motherboard: ASUSTeK PRIME B250M-A | RAM: 2x16GB DDR4-2400 | Output: Kingston HyperX Cloud II | Edifier C2XD 2.1 | Controlls: Saitek X-56 Rhino | Saitek Flight Rudder Pedals | Saitek Multi/Radio/Switch Panels | Thrustmaster MFD Cougar | Elgato Stream Deck XL | OpenTrack with LaserClip | VoiceAttack with VAICOM Pro plugin
emc Posted December 28, 2022 Author Posted December 28, 2022 New version v1.8.1 (December 2022) See wiki here: https://github.com/emcek/dcspy/wiki ## 1.8.1 * Add support for Ka-50 Black Shark III * Update footer when checking DCS-BIOS version * Align with DCS 2.8.1.34667.2 and DCS-BIOS 0.7.47 * Internal: * add more unit tests * mark some test as DCS-BIOS tests ## 1.8.0 * Major GUI redesign using `customtkinter` package, which provides new, modern widgets: * Appearance system mode (`Light`, `Dark`) * Three colort theme (`Green`, `Blue` and `Dark Blue`) * All settings are configured from GUI vie widgets * One window for all configuration and buttons * Check version from GUI * Add configuration flag to check for new version during start ## 1.7.5 * report DCS stable version correctly in logs during start * Internal: * rename starting script * remove usage of McCabe * add unit tests ## 1.7.4 * **AH-64D Apache** * add better support for G19 for PRE mode * update name from `AH64D` to `AH64DBLKII` * Show DCS version in logs * Fix name of plane for **F-14 Tomcat** depending on model A or B * Toggle Start/Stop buttons * Do not show warning when plane's name is empty * Internal: * improve checking DCS-BIOS data * introduce enum values for parser state * improve CI process - add Python 3.11 * force using Pillow 9.3.0 ## 1.7.3 * Align **F-16C Viper** DED and **AH-64D Apache** EUFD with DCS-BIOS 0.7.46 changes * Basic support for **F-14A Tomcat** ## 1.7.2 * **AH-64D Apache** * update name from `AH64DBLKII` to `AH64D` * fix display PRE mode for G19 * fix handling buttons * Internal: * update unit test for better coverage and more use-cases ## 1.7.1 * New config settings: * `auto_start` - run DCSpy atomically after start * `verbose` - show more logs in terminal/console window * Fixing handling of `dcsbios` settings from `config.yaml` * Start and stop buttons can be used several times without closing GUI * **F-16C Viper** * replace `*` with inverse white circle character at DED * Fix unhandled buttons for G19 (menu, ok and cancel) * G19 and **F/A-18C Hornet** * Push **Menu** and **Cancel** toggle cockpit button down, push it again toggles button up (Integrated Fuel/Engine Indicator - IFEI). * Add handling **Ok** as Attitude Selector Switch, INS/AUTO/STBY * Internal: * use Pythonic way using temporary directory * speed-up tests - cache json files instead of downloading from internet * use Enum for LCD type * use Enum for LCD buttons, add to LcdInfo dataclass ## 1.7.0 * Support for **AH-64D Apache** with 3 modes: * `IDM` - Squeeze and shows radios frequencies (from Radio Area), IDM and RTS rocker are used to scroll down * `WCA` - Enter button display warnings, cautions, and advisories, WCA rocker is used to scroll down * `PRE` - Preset button displays the preset menu for the selected radio, WCA rocker is used to scroll down * **F-16C Viper** DED clean-up extra characters ## 1.6.1 * Update **F-16C Viper** for latest DSC-BIOS (0.7.45) * Fresh installation of DCS-BIOS is painless * Drop support for Python 3.6 ## 1.6.0 * use fonts in dynamic way - you can customize fonts in `config.yaml` file (see [Configuration](https://github.com/emcek/dcspy#configuration)) * usage for LCD SDK built-in LGS - no need additional package for usage * support for Python 3.10 (use `dataclasses` internally) * ability to stop DCSpy from GUI * supporters are printed in welcome screen - I'm thrilled with support and help of community! Take a look my mods CPU: i7 7700 | GPU: GeForce GTX 1080 8GB DDR5 | Motherboard: ASUSTeK PRIME B250M-A | RAM: 2x16GB DDR4-2400 | Output: Kingston HyperX Cloud II | Edifier C2XD 2.1 | Controlls: Saitek X-56 Rhino | Saitek Flight Rudder Pedals | Saitek Multi/Radio/Switch Panels | Thrustmaster MFD Cougar | Elgato Stream Deck XL | OpenTrack with LaserClip | VoiceAttack with VAICOM Pro plugin
71st_Mastiff Posted January 3, 2023 Posted January 3, 2023 Work with the EVGA LCD Boards? Z10 Keyboards? "any failure you meet, is never a defeat; merely a set up for a greater come back", W Forbes. "Success is not final, failure is not fatal, it is the courage to continue that counts", "He who never changes his mind, never changes anything," Winston Churchill. MSI z690 MPG DDR4 || i9-14900k|| ddr4-128gb PC3200 |zotac RTX 5080|Game max 1300w|Win11| |turtle beach elite pro 5.1|| ViRpiL,T50cm2||MFG Crosswinds|| VT50CM-plus rotor Throttle || G10 RGB EVGA Keyboard/MouseLogitech || PiMax Crystal VR || 32 Asus||
emc Posted November 5, 2023 Author Posted November 5, 2023 (edited) On 1/3/2023 at 12:55 PM, 71st_Mastiff said: Work with the EVGA LCD Boards? Z10 Keyboards? Hi, I didn't noticed you ask question you mean this https://www.evga.com/articles/archive/01195/evga-z10-keyboard/default.asp ? Short answer no.... Longer... No, because: 1. after quick search, I didn't find way to custom access to LCD itself 2. I do not have this HW, to test and check what I can do with it... sorry Only Logitech G13, G15 (v1 and v2), G510 and G19 PS. https://forums.evga.com/Z10-Keyboard-Code-to-write-text-to-the-LCD-display-m3012492.aspx Edited November 5, 2023 by emc Take a look my mods CPU: i7 7700 | GPU: GeForce GTX 1080 8GB DDR5 | Motherboard: ASUSTeK PRIME B250M-A | RAM: 2x16GB DDR4-2400 | Output: Kingston HyperX Cloud II | Edifier C2XD 2.1 | Controlls: Saitek X-56 Rhino | Saitek Flight Rudder Pedals | Saitek Multi/Radio/Switch Panels | Thrustmaster MFD Cougar | Elgato Stream Deck XL | OpenTrack with LaserClip | VoiceAttack with VAICOM Pro plugin
Recommended Posts