{"id":20688005,"url":"https://github.com/engineerjoe440/pycev","last_synced_at":"2025-07-01T13:34:12.429Z","repository":{"id":58406169,"uuid":"300334042","full_name":"engineerjoe440/pycev","owner":"engineerjoe440","description":"Python interpreter for SEL (Schweitzer Engineering Laboratories) CEV (Compressed EVent record) files.","archived":false,"fork":false,"pushed_at":"2023-01-16T18:49:38.000Z","size":1526,"stargazers_count":12,"open_issues_count":4,"forks_count":0,"subscribers_count":3,"default_branch":"develop","last_synced_at":"2025-04-22T15:12:36.093Z","etag":null,"topics":["analysis","cev","electrical-engineering","electrical-systems","event-record","schweitzer-engineering-laboratories","sel"],"latest_commit_sha":null,"homepage":"https://pycev.readthedocs.io/en/latest/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/engineerjoe440.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-10-01T15:46:16.000Z","updated_at":"2024-02-05T23:20:32.000Z","dependencies_parsed_at":"2023-02-10T05:30:34.082Z","dependency_job_id":null,"html_url":"https://github.com/engineerjoe440/pycev","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/engineerjoe440%2Fpycev","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/engineerjoe440%2Fpycev/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/engineerjoe440%2Fpycev/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/engineerjoe440%2Fpycev/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/engineerjoe440","download_url":"https://codeload.github.com/engineerjoe440/pycev/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250264911,"owners_count":21402004,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["analysis","cev","electrical-engineering","electrical-systems","event-record","schweitzer-engineering-laboratories","sel"],"created_at":"2024-11-16T22:58:51.389Z","updated_at":"2025-04-22T15:12:47.420Z","avatar_url":"https://github.com/engineerjoe440.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PyCEV \u003cimg src=\"https://raw.githubusercontent.com/engineerjoe440/pycev/main/logo/pycev.png\" width=\"250\" alt=\"logo\" align=\"right\"\u003e\n*Python interpreter for SEL (Schweitzer Engineering Laboratories) CEV (Compressed EVent record) files.*\n\n[![PyPI Version](https://img.shields.io/pypi/v/pycev.svg?color=blue\u0026logo=pypi\u0026logoColor=white)](https://pypi.org/project/pycev/)\n[![Downloads](https://pepy.tech/badge/pycev)](https://pepy.tech/project/pycev)\n[![Stars](https://img.shields.io/github/stars/engineerjoe440/pycev?logo=github)](https://github.com/engineerjoe440/pycev/)\n[![License](https://img.shields.io/pypi/l/pycev.svg?color=blue)](https://github.com/engineerjoe440/pycev/blob/master/LICENSE.txt)\n\n\n[![pytest-unit-tests](https://github.com/engineerjoe440/pycev/actions/workflows/pytest-unit-tests.yml/badge.svg)](https://github.com/engineerjoe440/pycev/actions/workflows/pytest-unit-tests.yml)\n[![pydocstyle](https://github.com/engineerjoe440/pycev/actions/workflows/pydocstyle.yml/badge.svg)](https://github.com/engineerjoe440/pycev/actions/workflows/pydocstyle.yml)\n[![pylint](https://github.com/engineerjoe440/pycev/actions/workflows/pylint.yml/badge.svg)](https://github.com/engineerjoe440/pycev/actions/workflows/pylint.yml)\n[![Documentation Status](https://readthedocs.org/projects/pycev/badge/?version=develop)](https://pycev.readthedocs.io/en/develop/?badge=develop)\n\n##### Functional Test Status\n| **Branch** | **Status** |\n|------------|------------|\n| main       | [![Build Status](https://jenkins.stanleysolutionsnw.com/buildStatus/icon?job=PyCEV-Functional-Test%2Fmain)](https://jenkins.stanleysolutionsnw.com/job/PyCEV-Functional-Test/job/main/) |\n| develop    | [![Build Status](https://jenkins.stanleysolutionsnw.com/buildStatus/icon?job=PyCEV-Functional-Test%2Fdevelop)](https://jenkins.stanleysolutionsnw.com/job/PyCEV-Functional-Test/job/develop/) |\n\n***NOTE:*** This project is in VERY early stages of development and is nowhere near completion.\n\n## Description\nThis project, `pycev`, is intended to provide a means to interpret and interact with SEL CEV files\nfor scientific analysis using common Python tools such as NumPy, Pandas, Matplotlib, and others.\nThis package provides a parser and manager system to load and interact with SEL Compressed Event\nfiles. Potential avenues to explore for future development include a COMTRADE conversion tool to\nallow CEV to COMTRADE conversions, or to write CEV files from raw data.\n\nThis project is largely developed by using reverse-engineering practices to interpret\nthe CEV files generated by SEL relays.\n\n## Example Usage\n\n```python\nfrom pycev import CEV\n# Load a file and parse, directly.\nrecord = CEV(file=\"./event-report.cev\")\nprint(\"Trigger time = {}s\".format(record.trigger_time))\n```\n\n\u003ca title=\"Fabián Alexis, CC BY-SA 3.0 \u0026lt;https://creativecommons.org/licenses/by-sa/3.0\u0026gt;, via Wikimedia Commons\" href=\"https://commons.wikimedia.org/wiki/File:Antu_dialog-warning.svg\"\u003e\u003cimg width=\"25px\" alt=\"Antu dialog-warning\" src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/f/f7/Antu_dialog-warning.svg/512px-Antu_dialog-warning.svg.png\"\u003e\u003c/a\u003e **Caution**\n\n***This project, although providing support for CEV files created by SEL, is not\nsponsored, tested, or vetted in any way by Schweitzer Engineering Laboratories (SEL).\nThis project is authored and maintained as an open-source project. Testing is performed\non a very small set of event records provided from hardware running in the author's\nbasement in the author's basement. In short, this project has no association with SEL.***\n\n*Since this project is not rigorously tested across all SEL devices or in a wide variety\nof use-cases, any time this project is used, it should first be thoroughly tested. This\nproject is not intended to serve protection-class systems in any capacity. It should\nprimarily be used for research, exploration, and other learning objectives.*\n\n## Installation\n\n**From PyPI as a Python Package**\n\nJust go ahead and issue: `pip install pycev`\n\n**From GitHub as a Python Package**\n\nTo install `pycev` from GitHub:\n\n1. Download the repository as a zipped package.\n2. Unzip the repository.\n3. Open a terminal (command-prompt) and navigate to the new folder that's been unzipped.\n(*Hint:* Use `cd \u003cthe-path-to-the-folder-you-unzipped-in\u003e/pycev`)\n4. Use `pip` or `python` to install with the following commands, respectively:\n    - `$ pip install .`\n    - `$ python setup.py install`\n5. Verify that it's been installed by opening a Python instance and importing:\n    `\u003e\u003e\u003e import pycev` If no errors arise, the package has been installed.\n\n**From GitHub as a Standalone File**\n\nIf you wish to use `pycev` as a standalone file in your Python project, you can simply\ndownload the `pycev.py` file from GitHub (you'll want\n[this file](https://github.com/engineerjoe440/pycev/blob/main/pycev/pycev.py) exactly)\nand save it wherever you need it! Then, just `import pycev` and away you go!\n\n## Contributing\n\nWant to get involved? We'd love to have your help!\n\nPlease help us by identifying any issues that you come across. If you find an error,\nbug, or just have questions, jump over to the\n[issue](https://github.com/engineerjoe440/pycev/issues) page.\n\nIf you want to add features, or contribute yourself, feel free to open a pull-request.\n\n#### Running Tests Locally\n\nTo run tests locally, [`pytest`](https://docs.pytest.org/en/7.1.x/) is required,\nthen you may simply run the command:\n\n```shell\n$ pytest tests/unit\n```\n\nNot all tests can be run, locally, since the functional tests require additional\nresources provided by a Jenkins runner managed by Joe Stanley.\n\n### Contact Info\n\u003ca title=\"El T, Public domain, via Wikimedia Commons\" href=\"https://commons.wikimedia.org/wiki/File:Information_icon.svg\"\u003e\u003cimg width=\"25px\" alt=\"Information icon\" src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/3/35/Information_icon.svg/512px-Information_icon.svg.png\"\u003e\u003c/a\u003e *As mentioned in the\n[caution](https://github.com/engineerjoe440/pycev#warning-caution) above, this\nproject is not associated with Schweitzer Engineering Laboratories (SEL) in any\nway, and as such, all contacts for questions, support, or other items should be\ndirected to the resources listed here.*\n\nFor issues found in the source code itself, please feel free to open an\n[issue](https://github.com/engineerjoe440/pycev/issues), but for general inquiries\nand other contact, feel free to address Joe Stanley.\n\n- [engineerjoe440@yahoo.com](mailto:engineerjoe440@yahoo.com)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fengineerjoe440%2Fpycev","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fengineerjoe440%2Fpycev","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fengineerjoe440%2Fpycev/lists"}