dcspy


Namedcspy JSON
Version 3.4.1 PyPI version JSON
download
home_pageNone
SummarySoftware for integrating DCS Planes with Logitech keyboards (with and without LCD), mice and headphones.
upload_time2024-05-04 10:33:02
maintainerMichal Plichta
docs_urlNone
authorMichal Plichta
requires_python>=3.9
licenseMIT License
keywords dcsworld dcs digital combat simulator eagle dynamics logitech logitech sdk logitech keyboard logitech gaming logitech mouse logitech headphone g19 g510 g15 g13 g910 g710 g110 g103 g105 g11 g35 g633 g930 g933 g600 g300 g400 g700 g9 mx518 g402 g502 g602
VCS
bugtrack_url
requirements cffi GitPython packaging Pillow psutil pydantic PySide6 PyYAML requests typing_extensions
Travis-CI No Travis.
coveralls test coverage
            [![image](https://img.shields.io/badge/pypi-v3.4.1-blue.svg)](https://pypi.org/project/dcspy/)
[![Python CI](https://github.com/emcek/dcspy/actions/workflows/python-ci.yml/badge.svg?branch=master)](https://github.com/emcek/dcspy/actions/workflows/python-ci.yml)
[![Coverage Status](https://coveralls.io/repos/github/emcek/dcspy/badge.svg?branch=master)](https://coveralls.io/github/emcek/dcspy?branch=master)
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/5270a4fc2ba24261a3bfa7361150e8ff)](https://app.codacy.com/gh/emcek/dcspy/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)
[![License](https://img.shields.io/badge/License-MIT-blue.svg)](./LICENSE.md)
[![Downloads](https://img.shields.io/github/downloads/emcek/dcspy/total?label=Downloads)](https://github.com/emcek/dcspy/releases)
[![dcspy](https://snyk.io/advisor/python/dcspy/badge.svg)](https://snyk.io/advisor/python/dcspy)
[![Patreon](https://img.shields.io/badge/Patreon-donate-ff424d?logo=patreon)](https://www.patreon.com/mplichta)
[![Discord](https://img.shields.io/discord/672486999516774442?label=Discord&logo=discord&logoColor=lightblue)](https://discord.gg/SP5Yjx3)
[![image](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12-blue.svg)](https://github.com/emcek/dcspy)
[![pre-commit.ci status](https://results.pre-commit.ci/badge/github/emcek/dcspy/master.svg)](https://results.pre-commit.ci/latest/github/emcek/dcspy/master)
[![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=emcek_dcspy&metric=sqale_rating)](https://sonarcloud.io/dashboard?id=emcek_dcspy)
[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/6056/badge)](https://bestpractices.coreinfrastructure.org/projects/6056)
[![Downloads](https://static.pepy.tech/badge/dcspy)](https://pepy.tech/project/dcspy)
[![Rate this package](https://badges.openbase.com/python/rating/dcspy.svg?token=AZCVj1Hdbl6cC3I/gkVpgsigp22LtCOR0sB8lcODY9Y=)](https://openbase.com/python/dcspy?utm_source=embedded&utm_medium=badge&utm_campaign=rate-badge)

![dcspylogo](https://i.imgur.com/eqqrPB8.jpg)
## DCSpy
DCSpy is able to pull information from DCS aircraft and display on Logitech G-series keyboards LCD.

Features:
* Logitech device with 160x43 px (4 lines) monochrome LCD - **G13**, **G15 (v1 and v2)** and **G510**
* Logitech device with 320x240 px (8 lines) full RGBA LCD - **G19**
* Support for other [Logitech devices](https://github.com/emcek/dcspy/wiki/Supported-devices):
  * Keyboards: **G910**, **G710**, **G110**, **G105**, **G103**, **G11**
  * Headphones: **G35**, **G633**, **G930**, **G933**
  * Mouses: **G600**, **G300**, **G400**, **G700**, **G9**, **MX518**, **G402**, **G502**, **G602**
* Setup G-Keys to any toggle, switch or knob in cockpit - [Setup of G-Keys](https://github.com/emcek/dcspy/wiki/Usage#how-to-setup)
* Support for all aircraft (official and mods) with clickable cockpits - [DCS-BIOS aircraft](https://github.com/DCS-Skunkworks/dcs-bios#is-my-aircraft-supported)
* Modern looking GUI using Qt6/PySide6

See more information on [Wiki](https://github.com/emcek/dcspy/wiki) page.

## Aircraft and instruments
There are to kinds of supported aircraft:
* **Basic** - allow assigning all G-Keys of Logitech keyboard to aircraft's instruments in the cockpit (all clickable cockpits supported by DCS-BIOS)
* **Advanced** - additionally can display some information on LCD (listed below)

Why such way? Basically advanced support is for aircraft that I own and therefore can test it.

# Advanced
* F/A-18C Hornet UFC - Up Front Controller
* F-16C Viper DED - Data Entry Display
* Ka-50 Black Shark II and III - PVI-800 and autopilot channels
* Mi-8MTV2 Hip - autopilot channels and Radios information
* Mi-24P Hind - Autopilot channels and modes and Radios information
* A-10C Warthog and A-10C II Tank Killer - Radio frequency information
* F-14A and F-14B Tomcat - basic support for RIO CAP
* AV-8B Night Attack Harrier - Up Front Controller and Option Display Unit
* AH-64D Apache - Enhanced Up Front Display
* F-15E Eagle - Upfront Control Panel
* more to come...

## Requirements
* [Logitech Gaming Software 9.04.49](https://support.logitech.com/software/lgs)
* [Git](https://git-scm.com/download/win) it is necessary for using live version of DCS-BIOS, see [Live DCS-BIOS](https://github.com/emcek/dcspy/wiki/Information#live-dcs-bios))
* [DCS-BIOS 0.7.50](https://github.com/DCS-Skunkworks/dcs-bios/releases/latest) or newer (can be [installed](https://github.com/emcek/dcspy/wiki/Upgrade#manual-procedure) directly from DCSpy)
* DCS World: [2.9.4.53707](https://www.digitalcombatsimulator.com/en/news/changelog/stable/2.9.4.53707/), but any version from 2.9.* branch should be fine.
* optional:
  * [Python 3.12](https://www.python.org/downloads/) but 3.9+ should be fine (see [installation](https://github.com/emcek/dcspy/wiki/installation))
  * However, DCSpy 2.3.3 and earlier do not support Python 3.12

**Notes:**
* If you upgrade DCSpy from 1.5.1 or older, you can safely remove Logitech LCD SDK from `C:\Program Files\Logitech Gaming Software\LCDSDK_8.57.148`. Since DCSpy version 1.6.0 uses built-in SDK in LGS (Logitech Gaming Software).

## New ideas
I have lots of plans and new ideas how to improve it internally and form a user's perspective, but don't hesitate to contact me. Maybe it will motivate me to implement some new stuff. Please open issue if you find a bug or have any crazy idea.
You are welcome [dcspy Discord](https://discord.gg/SP5Yjx3) server.

## Contributing
You want contribute, perfect see: [contributing](./CONTRIBUTING.md) guide.

## Credits
More details [here](https://github.com/emcek/dcspy/wiki/Information#credits).

## Sponsored by Jetbrains Open Source Support Program
[![logo](https://resources.jetbrains.com/storage/products/company/brand/logos/PyCharm.svg)](https://jb.gg/OpenSourceSupport)
[![logo](https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.svg)](https://jb.gg/OpenSourceSupport)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "dcspy",
    "maintainer": "Michal Plichta",
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "dcsworld, dcs, digital combat simulator, eagle dynamics, logitech, logitech sdk, logitech keyboard, logitech gaming, logitech mouse, logitech headphone, G19, G510, G15, G13, G910, G710, G110, G103, G105, G11, G35, G633, G930, G933, G600, G300, G400, G700, G9, MX518, G402, G502, G602",
    "author": "Michal Plichta",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/96/66/a994003f1a971b7484bfc2daf9c6bff9ace7ec9daa4cee46327f7cfcd4f6/dcspy-3.4.1.tar.gz",
    "platform": null,
    "description": "[![image](https://img.shields.io/badge/pypi-v3.4.1-blue.svg)](https://pypi.org/project/dcspy/)\r\n[![Python CI](https://github.com/emcek/dcspy/actions/workflows/python-ci.yml/badge.svg?branch=master)](https://github.com/emcek/dcspy/actions/workflows/python-ci.yml)\r\n[![Coverage Status](https://coveralls.io/repos/github/emcek/dcspy/badge.svg?branch=master)](https://coveralls.io/github/emcek/dcspy?branch=master)\r\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/5270a4fc2ba24261a3bfa7361150e8ff)](https://app.codacy.com/gh/emcek/dcspy/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)\r\n[![License](https://img.shields.io/badge/License-MIT-blue.svg)](./LICENSE.md)\r\n[![Downloads](https://img.shields.io/github/downloads/emcek/dcspy/total?label=Downloads)](https://github.com/emcek/dcspy/releases)\r\n[![dcspy](https://snyk.io/advisor/python/dcspy/badge.svg)](https://snyk.io/advisor/python/dcspy)\r\n[![Patreon](https://img.shields.io/badge/Patreon-donate-ff424d?logo=patreon)](https://www.patreon.com/mplichta)\r\n[![Discord](https://img.shields.io/discord/672486999516774442?label=Discord&logo=discord&logoColor=lightblue)](https://discord.gg/SP5Yjx3)\r\n[![image](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12-blue.svg)](https://github.com/emcek/dcspy)\r\n[![pre-commit.ci status](https://results.pre-commit.ci/badge/github/emcek/dcspy/master.svg)](https://results.pre-commit.ci/latest/github/emcek/dcspy/master)\r\n[![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=emcek_dcspy&metric=sqale_rating)](https://sonarcloud.io/dashboard?id=emcek_dcspy)\r\n[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/6056/badge)](https://bestpractices.coreinfrastructure.org/projects/6056)\r\n[![Downloads](https://static.pepy.tech/badge/dcspy)](https://pepy.tech/project/dcspy)\r\n[![Rate this package](https://badges.openbase.com/python/rating/dcspy.svg?token=AZCVj1Hdbl6cC3I/gkVpgsigp22LtCOR0sB8lcODY9Y=)](https://openbase.com/python/dcspy?utm_source=embedded&utm_medium=badge&utm_campaign=rate-badge)\r\n\r\n![dcspylogo](https://i.imgur.com/eqqrPB8.jpg)\r\n## DCSpy\r\nDCSpy is able to pull information from DCS aircraft and display on Logitech G-series keyboards LCD.\r\n\r\nFeatures:\r\n* Logitech device with 160x43 px (4 lines) monochrome LCD - **G13**, **G15 (v1 and v2)** and **G510**\r\n* Logitech device with 320x240 px (8 lines) full RGBA LCD - **G19**\r\n* Support for other [Logitech devices](https://github.com/emcek/dcspy/wiki/Supported-devices):\r\n  * Keyboards: **G910**, **G710**, **G110**, **G105**, **G103**, **G11**\r\n  * Headphones: **G35**, **G633**, **G930**, **G933**\r\n  * Mouses: **G600**, **G300**, **G400**, **G700**, **G9**, **MX518**, **G402**, **G502**, **G602**\r\n* Setup G-Keys to any toggle, switch or knob in cockpit - [Setup of G-Keys](https://github.com/emcek/dcspy/wiki/Usage#how-to-setup)\r\n* Support for all aircraft (official and mods) with clickable cockpits - [DCS-BIOS aircraft](https://github.com/DCS-Skunkworks/dcs-bios#is-my-aircraft-supported)\r\n* Modern looking GUI using Qt6/PySide6\r\n\r\nSee more information on [Wiki](https://github.com/emcek/dcspy/wiki) page.\r\n\r\n## Aircraft and instruments\r\nThere are to kinds of supported aircraft:\r\n* **Basic** - allow assigning all G-Keys of Logitech keyboard to aircraft's instruments in the cockpit (all clickable cockpits supported by DCS-BIOS)\r\n* **Advanced** - additionally can display some information on LCD (listed below)\r\n\r\nWhy such way? Basically advanced support is for aircraft that I own and therefore can test it.\r\n\r\n# Advanced\r\n* F/A-18C Hornet UFC - Up Front Controller\r\n* F-16C Viper DED - Data Entry Display\r\n* Ka-50 Black Shark II and III - PVI-800 and autopilot channels\r\n* Mi-8MTV2 Hip - autopilot channels and Radios information\r\n* Mi-24P Hind - Autopilot channels and modes and Radios information\r\n* A-10C Warthog and A-10C II Tank Killer - Radio frequency information\r\n* F-14A and F-14B Tomcat - basic support for RIO CAP\r\n* AV-8B Night Attack Harrier - Up Front Controller and Option Display Unit\r\n* AH-64D Apache - Enhanced Up Front Display\r\n* F-15E Eagle - Upfront Control Panel\r\n* more to come...\r\n\r\n## Requirements\r\n* [Logitech Gaming Software 9.04.49](https://support.logitech.com/software/lgs)\r\n* [Git](https://git-scm.com/download/win) it is necessary for using live version of DCS-BIOS, see [Live DCS-BIOS](https://github.com/emcek/dcspy/wiki/Information#live-dcs-bios))\r\n* [DCS-BIOS 0.7.50](https://github.com/DCS-Skunkworks/dcs-bios/releases/latest) or newer (can be [installed](https://github.com/emcek/dcspy/wiki/Upgrade#manual-procedure) directly from DCSpy)\r\n* DCS World: [2.9.4.53707](https://www.digitalcombatsimulator.com/en/news/changelog/stable/2.9.4.53707/), but any version from 2.9.* branch should be fine.\r\n* optional:\r\n  * [Python 3.12](https://www.python.org/downloads/) but 3.9+ should be fine (see [installation](https://github.com/emcek/dcspy/wiki/installation))\r\n  * However, DCSpy 2.3.3 and earlier do not support Python 3.12\r\n\r\n**Notes:**\r\n* If you upgrade DCSpy from 1.5.1 or older, you can safely remove Logitech LCD SDK from `C:\\Program Files\\Logitech Gaming Software\\LCDSDK_8.57.148`. Since DCSpy version 1.6.0 uses built-in SDK in LGS (Logitech Gaming Software).\r\n\r\n## New ideas\r\nI have lots of plans and new ideas how to improve it internally and form a user's perspective, but don't hesitate to contact me. Maybe it will motivate me to implement some new stuff. Please open issue if you find a bug or have any crazy idea.\r\nYou are welcome [dcspy Discord](https://discord.gg/SP5Yjx3) server.\r\n\r\n## Contributing\r\nYou want contribute, perfect see: [contributing](./CONTRIBUTING.md) guide.\r\n\r\n## Credits\r\nMore details [here](https://github.com/emcek/dcspy/wiki/Information#credits).\r\n\r\n## Sponsored by Jetbrains Open Source Support Program\r\n[![logo](https://resources.jetbrains.com/storage/products/company/brand/logos/PyCharm.svg)](https://jb.gg/OpenSourceSupport)\r\n[![logo](https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.svg)](https://jb.gg/OpenSourceSupport)\r\n",
    "bugtrack_url": null,
    "license": "MIT License",
    "summary": "Software for integrating DCS Planes with Logitech keyboards (with and without LCD), mice and headphones.",
    "version": "3.4.1",
    "project_urls": {
        "Changelog": "https://github.com/emcek/dcspy/CHANGELOG.md",
        "Documentation": "https://github.com/emcek/dcspy/wiki",
        "Homepage": "https://github.com/emcek/dcspy",
        "Repository": "https://github.com/emcek/dcspy.git"
    },
    "split_keywords": [
        "dcsworld",
        " dcs",
        " digital combat simulator",
        " eagle dynamics",
        " logitech",
        " logitech sdk",
        " logitech keyboard",
        " logitech gaming",
        " logitech mouse",
        " logitech headphone",
        " g19",
        " g510",
        " g15",
        " g13",
        " g910",
        " g710",
        " g110",
        " g103",
        " g105",
        " g11",
        " g35",
        " g633",
        " g930",
        " g933",
        " g600",
        " g300",
        " g400",
        " g700",
        " g9",
        " mx518",
        " g402",
        " g502",
        " g602"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "93fe1ab256385a60a7c7a779514623c5fa11aa76549dd7d353728ec73912d9c6",
                "md5": "e5d9fd7f237c4b03faff0169e4e6fb3d",
                "sha256": "f00d20f6b7c0f69671fff201829e2dda1ce22f68c3771f69cf425dde014a6bfc"
            },
            "downloads": -1,
            "filename": "dcspy-3.4.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e5d9fd7f237c4b03faff0169e4e6fb3d",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 14566906,
            "upload_time": "2024-05-04T10:32:59",
            "upload_time_iso_8601": "2024-05-04T10:32:59.265870Z",
            "url": "https://files.pythonhosted.org/packages/93/fe/1ab256385a60a7c7a779514623c5fa11aa76549dd7d353728ec73912d9c6/dcspy-3.4.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9666a994003f1a971b7484bfc2daf9c6bff9ace7ec9daa4cee46327f7cfcd4f6",
                "md5": "a11560beecc2cfe8c90fd2371ccfa474",
                "sha256": "7fcddcb8f861bd2c294b655972164bbde821a8157b992b6560935ae2933cae85"
            },
            "downloads": -1,
            "filename": "dcspy-3.4.1.tar.gz",
            "has_sig": false,
            "md5_digest": "a11560beecc2cfe8c90fd2371ccfa474",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 14031295,
            "upload_time": "2024-05-04T10:33:02",
            "upload_time_iso_8601": "2024-05-04T10:33:02.786801Z",
            "url": "https://files.pythonhosted.org/packages/96/66/a994003f1a971b7484bfc2daf9c6bff9ace7ec9daa4cee46327f7cfcd4f6/dcspy-3.4.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-05-04 10:33:02",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "emcek",
    "github_project": "dcspy",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "requirements": [
        {
            "name": "cffi",
            "specs": [
                [
                    "==",
                    "1.16.0"
                ]
            ]
        },
        {
            "name": "GitPython",
            "specs": [
                [
                    "==",
                    "3.1.43"
                ]
            ]
        },
        {
            "name": "packaging",
            "specs": [
                [
                    "==",
                    "24.0"
                ]
            ]
        },
        {
            "name": "Pillow",
            "specs": [
                [
                    "==",
                    "10.3.0"
                ]
            ]
        },
        {
            "name": "psutil",
            "specs": [
                [
                    "==",
                    "5.9.8"
                ]
            ]
        },
        {
            "name": "pydantic",
            "specs": [
                [
                    "==",
                    "2.7.1"
                ]
            ]
        },
        {
            "name": "PySide6",
            "specs": [
                [
                    "==",
                    "6.7.0"
                ]
            ]
        },
        {
            "name": "PyYAML",
            "specs": [
                [
                    "==",
                    "6.0.1"
                ]
            ]
        },
        {
            "name": "requests",
            "specs": [
                [
                    "==",
                    "2.31.0"
                ]
            ]
        },
        {
            "name": "typing_extensions",
            "specs": [
                [
                    "==",
                    "4.11.0"
                ]
            ]
        }
    ],
    "tox": true,
    "lcname": "dcspy"
}
        
Elapsed time: 0.26667s