{"id":25969475,"url":"https://github.com/ma-laforge/arduinocir","last_synced_at":"2026-04-18T10:08:48.027Z","repository":{"id":34888398,"uuid":"38909956","full_name":"ma-laforge/ArduinoCIR","owner":"ma-laforge","description":"Communication with consumer IR \"remote\" signals","archived":false,"fork":false,"pushed_at":"2020-08-27T15:27:31.000Z","size":55,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-04T22:48:12.360Z","etag":null,"topics":["arduino","cir","consumer-ir","infrared","ir-receiver","ir-transmitter","rc-5","rc-mm","sirc","timer"],"latest_commit_sha":null,"homepage":"","language":"C++","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/ma-laforge.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":"2015-07-11T02:07:48.000Z","updated_at":"2024-10-21T17:56:31.000Z","dependencies_parsed_at":"2022-09-13T03:20:11.654Z","dependency_job_id":null,"html_url":"https://github.com/ma-laforge/ArduinoCIR","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ma-laforge/ArduinoCIR","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ma-laforge%2FArduinoCIR","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ma-laforge%2FArduinoCIR/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ma-laforge%2FArduinoCIR/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ma-laforge%2FArduinoCIR/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ma-laforge","download_url":"https://codeload.github.com/ma-laforge/ArduinoCIR/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ma-laforge%2FArduinoCIR/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31964605,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T00:39:45.007Z","status":"online","status_checked_at":"2026-04-18T02:00:07.018Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["arduino","cir","consumer-ir","infrared","ir-receiver","ir-transmitter","rc-5","rc-mm","sirc","timer"],"created_at":"2025-03-04T22:48:14.777Z","updated_at":"2026-04-18T10:08:48.003Z","avatar_url":"https://github.com/ma-laforge.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"[IRremote]: \u003chttp://www.righto.com/2009/08/multi-protocol-infrared-remote-library.html\u003e \"IRremote (Ken Shirriff)\"\n\n# ArduinoCIR: Communication using consumer IR \"remote\" signals\n\n(Send/receive \"TV remote\" (+satbox +...) commands)\n\n\u003ca name=\"Description\"\u003e\u003c/a\u003e\n## Description\n\nArduinoCIR provides the `ir_messaging` library, a ready-to-use solution for sending/receiving consumer IR (remote-control) signals on Arduino platforms.\n\n\u003ca name=\"Features\"\u003e\u003c/a\u003e\n## Features\n\n - **Simultaneously** transmit \u0026 receive IR messages.\n - **(Untested)**: Build solutions supporting 2+ receivers or 2+ transmitters (Speed \u0026 hardware permitting).\n - User-selectable hardware units for timers (not hard-coded in library).\n\n\u003ca name=\"Protocols\"\u003e\u003c/a\u003e\n### Supported Protocols\n\nThe list of supported protocols is listed below.\n\n- **NEC**: (tx/rx).\n- **RC-MM**: (tx only).\n- **RC-5**: (untested tx/untested rx).\n- **Sony SIRC**: (untested tx/rx).\n\nNote:\n - Certain protocols might only be implemented for *either* transmit (tx) or receive (rx).\n - New protocols can be added to [libraries/ir\\_messaging/ir\\_protocol.cpp](libraries/ir_messaging/ir_protocol.cpp)/[.h](libraries/ir_messaging/ir_protocol.h).\n\n## Table of Contents\n\n 1. [Description](#Description)\n 1. [Features](#Features)\n    1. [Supported Protocols](#Protocols)\n 1. [Purpose of Library](doc/purpose.md)\n 1. [Supported Hardware](#Hardware)\n 1. [Sample Sketches](libraries/ir_messaging/samples)\n 1. [Usage Tips](doc/tips.md)\n 1. [Wiring/Circuit Topology](doc/topology.md)\n 1. [Software Documentation](doc/softwaredoc.md)\n 1. [Resources/Acknowledgments](doc/resources_ack.md)\n 1. [Known Limitations](#Limitations)\n\n\u003ca name=\"Hardware\"\u003e\u003c/a\u003e\n### Supported Hardware\n\nArduinoCIR was designed to support easily multiple Atmel platforms.  At the moment, only a few are actually implemented:\n\n - Atmel ATmega328/328P\n   - Arduino Uno\n   - Arduino Redboard (\u0026#x2705; Tested)\n   - Arduino Pro\n   - Arduino Fio\n   - Arduino Mini\n   - Arduino Nano\n   - Arduino LilyPad\n   - Arduino BT\n   - Arduino Ethernet\n - Atmel ATmega1280\n   - Arduino Mega\n - Atmel ATmega2560\n   - Arduino Mega 2560 (\u0026#x2705; Tested)\n   - Arduino Mega ADK (\u0026#x2705; Tested)\n\n\u003ca name=\"Limitations\"\u003e\u003c/a\u003e\n## Known Limitations\n\n - IR receiver currently only works using a 16-bit timer (`IRCtrl::Timer16b::RxHw`).\n - IR transmitter currently supports two resource allocations:\n   - System clock (Timer0) + an 8-bit timer (`IRCtrl::Timer8b::TxHw`),\n   - or *two* 16-bit timers (`IRCtrl::Timer16b::TxHw`).\n\n### Compatibility\n\nThe `ir_messaging` library was tested on version 1.0.5+dfsg2-2 (Linux) of the Arduino IDE.\n\n\u003ca name=\"Disclaimer\"\u003e\u003c/a\u003e\n## Disclaimer\n\nThis software is provided \"as is\", with no guarantee of correctness.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fma-laforge%2Farduinocir","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fma-laforge%2Farduinocir","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fma-laforge%2Farduinocir/lists"}