{"id":23637997,"url":"https://github.com/jbdesbas/pycc1101","last_synced_at":"2026-04-07T22:32:18.395Z","repository":{"id":269947874,"uuid":"906928462","full_name":"jbdesbas/pyCC1101","owner":"jbdesbas","description":"A MicroPython lib for operating CC1101.","archived":false,"fork":false,"pushed_at":"2025-01-19T16:33:32.000Z","size":42,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-18T23:45:21.949Z","etag":null,"topics":["aiot","circuitpython","diy","esp32","esp8266","micropython","radio","rf"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jbdesbas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-22T10:36:03.000Z","updated_at":"2025-01-19T16:33:34.000Z","dependencies_parsed_at":null,"dependency_job_id":"62dac1eb-f78e-4254-a257-39e836166958","html_url":"https://github.com/jbdesbas/pyCC1101","commit_stats":null,"previous_names":["jbdesbas/pycc1101"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jbdesbas%2FpyCC1101","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jbdesbas%2FpyCC1101/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jbdesbas%2FpyCC1101/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jbdesbas%2FpyCC1101/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jbdesbas","download_url":"https://codeload.github.com/jbdesbas/pyCC1101/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239571542,"owners_count":19661164,"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":["aiot","circuitpython","diy","esp32","esp8266","micropython","radio","rf"],"created_at":"2024-12-28T07:21:12.256Z","updated_at":"2025-11-09T08:30:40.024Z","avatar_url":"https://github.com/jbdesbas.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PyCC1101\n\nA (micro)python lib for operating CC1101.\nInspired by : https://github.com/unixb0y/CPY-CC1101\n\nThis library can be used to easily work with the low+cost (less than 2€) and fully-featured CC1101 tranceiver.\nProvide fine control over transmission such as modulation (FSK, ASK, etc.), frequency, deviation, baud rate and more.\nAdditionally, it offers chip-level data control inluding manchester encoding/decoding, checksum and address filtering.\n\n\u003e [!IMPORTANT]\n\u003e This library is currently under active development. No release yet.\n\nTested with : \n\nBoards :\n- ESP32 (WROOM) ✅\n- EPS8266 ❔\n\nEnvironment:\n- MicroPython 1.24.1 ✅\n\n\nDatasheet : https://www.ti.com/lit/ds/symlink/cc1101.pdf\n\n## Example\n\n```python\nfrom machine import SPI, Pin\nimport cc1101\n\nmyspi = SPI(2) # Hardware SPI, MOSI 23, MISO 19, CLK 18\n\ncs = Pin(5, mode=Pin.OUT, value=1)\ngdo0 = Pin(22)\n\ntx = cc1101.CC1101(myspi, cs, gdo0)\n\ntx.reset() # Reset chip config\ntx.frequency = 868e6 # Set radio frequency to 868MHz\ntx.modulation = '2-FSK' # Frequency Shift Keying (binary) modulation\ntx.baudrate = 38400\ntx.preset_tx() # Apply basiC TX preset\n\n# Send only payload\ntx.append_status = False\ntx.white_data = False\ntx.sync_mode = 0\ntx.crc = False\n\n\ntx.send([0xff, 0x3c, 0b10101010]*10) # send somes bytes\n```\n\n## Main methods and properties\n\n- **`append_status`**:\n- **`baudrate`**: Returns or set the baud rate for radio transmission (in _Bd_ aka symbols per second).\n- **`deviation`**: Returns or set deviation (in Hz). Affect FSK modulation.\n- **`crc`**:\n- **`frequency`**: Returns or set the current oscillator or transmission frequency (in _Hz_).\n- **`length_config`**: Returns or set packet length config ( `'fixed'`, `'variable'`, `'infinite'` ).\n- **`manchester`**: Returns or set Manchester encoding/decoding (_boolean_).\n- **`modulation`**: Returns or set the current modulation used for transmission ( `'2-FSK'`, `'GFSK'`, `'ASK/OOK'`, `'4-FSK'`, `'MSK'` ).\n- **`pa_table`**: Returns or set PA_TABLE (8-bytes array)/\n- **`packet_length`**: Returns or set packet length (see `length_config`)\n- **`send(data)`**: Emit data. Data must be an array of byte.\n- **`sync_mode`**:\n- **`white_data`**:\n- **`reset()`**: Reset chip registers to factory default values.\n\nAll chip parameters can be accessed using `write_config` or `read_config` (ex : `write_config(PKTCTRL0, WHITE_DATA, 0x1)` ).\nSee [datasheet](https://www.ti.com/lit/ds/symlink/cc1101.pdf) for all parameters.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjbdesbas%2Fpycc1101","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjbdesbas%2Fpycc1101","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjbdesbas%2Fpycc1101/lists"}