espmega-lightshow


Nameespmega-lightshow JSON
Version 4.11 PyPI version JSON
download
home_pagehttps://github.com/SiwatINC/espmega-lightshow
Summary
upload_time2023-12-14 19:30:14
maintainer
docs_urlNone
authorSiwat Sirichai
requires_python
licenseApache 2.0
keywords light mqtt espmega
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # ESPMega Light Show
This is a program made for the ESPMega PLCs for easily programming light show and running light show script

## Features
- User Interface for configuring controller<br/>
![](/images/setup_window.png)
- Light Grid Generator<br/>
![](/images/generate_map.png)
- Easy Clickable Light Programming<br/>
![](/images/mainwindow.png)
- Dynamic Physical Light Configuration<br/>
![](/images/light_config.png)
- Custom Script using Python<br/>
![](/images/run_script.png)
- BPM Counter<br/>
![](/images/bpm_counter.png)
- Quick Load Preset<br/>
![](/images/quickload.png)

## Installation
- For Windows, run the following command in a powershell windows with admin rights
  ```powershell
  Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/SiwatINC/espmega-lightshow/main/installer_win.ps1'))
  ```
- Ubuntu Linux
  ```bash
  bash <(curl -s https://raw.githubusercontent.com/SiwatINC/espmega-lightshow/main/installer_ubuntu.sh)
  ```

## Running
- The program can be run from the CLI using the command:
```bash
python -m espmega_lightshow
```
- The program can also be run from the desktop/startmenu shortcut after installation.

## Scripting
This template script can be used to program custom lightshow
```python
from espmega_lightshow.scripting import UserScript
class CustomUserScript (UserScript):
    def draw_frame(self, current_time: float):
        # This function is called every frame
        # You can use self.rows and self.columns to get the number of rows and columns
        # You can use self.set_tile_state(row, column, state) to set the state of a light at row, column
        # You can use self.get_tile_state(row, column) to get the state of a light at row, column
        # You can use current_time to get the current time elapsed in seconds
        # You can use self.frame_count to get the number of frames that have passed
        pass
```

The script can be run by going to **File** &rarr; **Run Script**

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/SiwatINC/espmega-lightshow",
    "name": "espmega-lightshow",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "light mqtt espmega",
    "author": "Siwat Sirichai",
    "author_email": "siwat@siwatinc.com",
    "download_url": "https://files.pythonhosted.org/packages/59/41/1c0e42904f6d6261dcabe14d07debac2e7aacac7687c5529ff1ffcc7c5c1/espmega_lightshow-4.11.tar.gz",
    "platform": null,
    "description": "# ESPMega Light Show\r\nThis is a program made for the ESPMega PLCs for easily programming light show and running light show script\r\n\r\n## Features\r\n- User Interface for configuring controller<br/>\r\n![](/images/setup_window.png)\r\n- Light Grid Generator<br/>\r\n![](/images/generate_map.png)\r\n- Easy Clickable Light Programming<br/>\r\n![](/images/mainwindow.png)\r\n- Dynamic Physical Light Configuration<br/>\r\n![](/images/light_config.png)\r\n- Custom Script using Python<br/>\r\n![](/images/run_script.png)\r\n- BPM Counter<br/>\r\n![](/images/bpm_counter.png)\r\n- Quick Load Preset<br/>\r\n![](/images/quickload.png)\r\n\r\n## Installation\r\n- For Windows, run the following command in a powershell windows with admin rights\r\n  ```powershell\r\n  Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/SiwatINC/espmega-lightshow/main/installer_win.ps1'))\r\n  ```\r\n- Ubuntu Linux\r\n  ```bash\r\n  bash <(curl -s https://raw.githubusercontent.com/SiwatINC/espmega-lightshow/main/installer_ubuntu.sh)\r\n  ```\r\n\r\n## Running\r\n- The program can be run from the CLI using the command:\r\n```bash\r\npython -m espmega_lightshow\r\n```\r\n- The program can also be run from the desktop/startmenu shortcut after installation.\r\n\r\n## Scripting\r\nThis template script can be used to program custom lightshow\r\n```python\r\nfrom espmega_lightshow.scripting import UserScript\r\nclass CustomUserScript (UserScript):\r\n    def draw_frame(self, current_time: float):\r\n        # This function is called every frame\r\n        # You can use self.rows and self.columns to get the number of rows and columns\r\n        # You can use self.set_tile_state(row, column, state) to set the state of a light at row, column\r\n        # You can use self.get_tile_state(row, column) to get the state of a light at row, column\r\n        # You can use current_time to get the current time elapsed in seconds\r\n        # You can use self.frame_count to get the number of frames that have passed\r\n        pass\r\n```\r\n\r\nThe script can be run by going to **File** &rarr; **Run Script**\r\n",
    "bugtrack_url": null,
    "license": "Apache 2.0",
    "summary": "",
    "version": "4.11",
    "project_urls": {
        "Homepage": "https://github.com/SiwatINC/espmega-lightshow"
    },
    "split_keywords": [
        "light",
        "mqtt",
        "espmega"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "59411c0e42904f6d6261dcabe14d07debac2e7aacac7687c5529ff1ffcc7c5c1",
                "md5": "0bb4c49f74b811bab3b45f2ae9e4de33",
                "sha256": "18f1e64fb174e1af5d28d68d49e604e735170f0f71ec35e99cc210a45fb0a37f"
            },
            "downloads": -1,
            "filename": "espmega_lightshow-4.11.tar.gz",
            "has_sig": false,
            "md5_digest": "0bb4c49f74b811bab3b45f2ae9e4de33",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 44026,
            "upload_time": "2023-12-14T19:30:14",
            "upload_time_iso_8601": "2023-12-14T19:30:14.653610Z",
            "url": "https://files.pythonhosted.org/packages/59/41/1c0e42904f6d6261dcabe14d07debac2e7aacac7687c5529ff1ffcc7c5c1/espmega_lightshow-4.11.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-12-14 19:30:14",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "SiwatINC",
    "github_project": "espmega-lightshow",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "espmega-lightshow"
}
        
Elapsed time: 0.16731s