{"id":41207699,"url":"https://github.com/hnesk/flipper-raw-rfid","last_synced_at":"2026-01-22T22:21:25.259Z","repository":{"id":214063158,"uuid":"707695597","full_name":"hnesk/flipper-raw-rfid","owner":"hnesk","description":"A python library for reading and analyzing Flipper Zero raw RFID files (tag.[ap]sk.raw)","archived":false,"fork":false,"pushed_at":"2023-10-25T13:34:32.000Z","size":661,"stargazers_count":46,"open_issues_count":2,"forks_count":5,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-28T19:57:55.546Z","etag":null,"topics":["flipper","flipper-zero","flipperzero","rfid"],"latest_commit_sha":null,"homepage":"","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/hnesk.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,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-10-20T13:06:00.000Z","updated_at":"2025-10-23T06:26:16.000Z","dependencies_parsed_at":"2023-12-25T15:02:40.642Z","dependency_job_id":"d44b340d-fad1-42bc-8c81-3fc9bb4f6c84","html_url":"https://github.com/hnesk/flipper-raw-rfid","commit_stats":null,"previous_names":["hnesk/flipper-raw-rfid"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/hnesk/flipper-raw-rfid","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hnesk%2Fflipper-raw-rfid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hnesk%2Fflipper-raw-rfid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hnesk%2Fflipper-raw-rfid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hnesk%2Fflipper-raw-rfid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hnesk","download_url":"https://codeload.github.com/hnesk/flipper-raw-rfid/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hnesk%2Fflipper-raw-rfid/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28673199,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-22T20:48:19.482Z","status":"ssl_error","status_checked_at":"2026-01-22T20:48:14.968Z","response_time":144,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["flipper","flipper-zero","flipperzero","rfid"],"created_at":"2026-01-22T22:21:24.742Z","updated_at":"2026-01-22T22:21:25.255Z","avatar_url":"https://github.com/hnesk.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Flipper Zero Raw RFID Tools\n\nA python library for reading and analyzing Flipper Zero raw RFID files (`tag.[ap]sk.raw`)\n * [Installation](#installation)\n    * [Via pip](#via-pip)\n    * [From source](#from-source)\n * [Usage](#usage)\n   * [As a library](#as-a-library)\n   * [From commandline](#from-commandline)\n * [Tutorial](#tutorial)\n \n## Installation\n\n### Via pip\n\n```bash\npip install flipper-raw-rfid\n```\n\n### From source\n```bash\ngit clone https://github.com/hnesk/flipper-raw-rfid.git \ncd flipper-raw-rfid\nmake install\n```\n\n\n## Usage\n\n### As a library\n\n``` python\n\nfrom flipper_raw_rfid.rifl import Rifl\nfrom flipper_raw_rfid.utils import pad_to_signal\nimport matplotlib.pyplot as plt \n\nrifl = Rifl.load('test/assets/Red354.ask.raw')\n# Read the the raw pulse and duration values\npad = rifl.pulse_and_durations\n# reconstructed binary signal\nsignal = pad_to_signal(pad)\n\nplt.plot(signal[0:20000])\n\n```\n\nresults in: \n\n![Plot of the RFID signal with matplotlib](docs/signal-plot.png)\n\n\nThere is also a short [tutorial notebook](docs/rifl-tutorial-1.ipynb)\n\n### From commandline\n\n``` bash\n# Plot a file (requires matplotlib)\n$ flipper-raw-rfid plot tests/assets/Red354.ask.raw\n# Dump the contents in pad format (see below) \n$ flipper-raw-rfid convert --format=pad tests/assets/Red354.ask.raw Red354.pad.csv\n# Dump the contents in signal format\n$ flipper-raw-rfid convert --format=signal tests/assets/Red354.ask.raw Red354.signal.csv\n```\n\n#### Commandline help\n```bash\nflipper-raw-rfid --help\n```\n```\nflipper-raw-rfid \n\nDescription:\n    Reads a raw rfid file from flipper zero and plots or converts the signal\n\nUsage:\n    flipper-raw-rfid convert [-f \u003cformat\u003e] RAW_FILE [OUTPUT_FILE]\n    flipper-raw-rfid plot RAW_FILE\n    flipper-raw-rfid check RAW_FILE\n    flipper-raw-rfid (-h | --help)\n    flipper-raw-rfid --version\n\nArguments:\n    RAW_FILE        The raw rfid file from flipper (xyz.ask.raw or xyz.psk.raw)\n    OUTPUT_FILE     The converted file as csv (default: stdout)\n\nOptions:\n    -h --help                 Show this screen.\n    --version                 Show version.\n    -f --format=(pad|signal)  Output format: \"pad\" (=Pulse And Duration) is the internal format of the Flipper Zero,\n                              each line represents a pulse and a duration value measured in samples, see\n                              \"Pulse and duration format\" below.\n                              In \"signal\" format the pulses are written out as a reconstructed signal with a \"1\" marking a\n                              sample with high value and \"0\" marking a sample with low value [default: pad]\n\nPulse and duration (pad) format:\n\n    column 0: pulse - (number of samples while output high) and\n    column 1: duration - (number of samples till next signal)\n\n    Diagram:\n\n    ______________      __________\n                  ______          __________ .......\n\n    ^ - pulse0 - ^      ^-pulse1-^           .......\n    ^ -    duration0  -^^ -    duration1  -^ .......\n\n    The csv file has the following format:\n\n    pulse0, duration0\n    pulse1, duration1\n    ....\n``` \n\n# Tutorial\n\nThere is a short [RFID tutorial notebook](docs/rifl-tutorial-1.ipynb) to see if there is data in the recording and what to do with it.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhnesk%2Fflipper-raw-rfid","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhnesk%2Fflipper-raw-rfid","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhnesk%2Fflipper-raw-rfid/lists"}