{"id":16218922,"url":"https://github.com/arminjo/ibuttonprogrammer","last_synced_at":"2025-03-19T10:31:13.137Z","repository":{"id":93079061,"uuid":"554255363","full_name":"ArminJo/iButtonProgrammer","owner":"ArminJo","description":"Arduino UNO / Nano iButton reader as well as programmer for writable iButtons of type RW1990","archived":false,"fork":false,"pushed_at":"2022-10-21T03:39:53.000Z","size":19,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-28T18:22:31.414Z","etag":null,"topics":["arduino","dallas-key","ibutton","programmer","sketch"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ArminJo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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":"2022-10-19T14:03:13.000Z","updated_at":"2023-10-07T13:02:45.000Z","dependencies_parsed_at":"2023-03-08T13:30:27.344Z","dependency_job_id":null,"html_url":"https://github.com/ArminJo/iButtonProgrammer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArminJo%2FiButtonProgrammer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArminJo%2FiButtonProgrammer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArminJo%2FiButtonProgrammer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArminJo%2FiButtonProgrammer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ArminJo","download_url":"https://codeload.github.com/ArminJo/iButtonProgrammer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243985502,"owners_count":20379152,"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":["arduino","dallas-key","ibutton","programmer","sketch"],"created_at":"2024-10-10T11:51:31.855Z","updated_at":"2025-03-19T10:31:13.132Z","avatar_url":"https://github.com/ArminJo.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# [iButtonProgrammer](https://github.com/ArminJo/iButtonProgrammer)\n### Version 1.0.0\n[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)\n[![Build Status](https://github.com/ArminJo/iButtonProgrammer/workflows/TestCompile/badge.svg)](https://github.com/ArminJo/iButtonProgrammer/actions)\n![Hit Counter](https://visitor-badge.laobi.icu/badge?page_id=ArminJo_iButtonProgrammer)\n\n\nThe program reads an **[iButton / Dallas key](https://en.wikipedia.org/wiki/1-Wire)** ID.\u003cbr/\u003e\nIf receiving \"w\" over Serial, it writes a constant value.\u003cbr/\u003e\nIf receiving \"c\" over Serial, it clones the ID previously read from another iButton.\u003cbr/\u003e\nWriting was successfully tested with RW1990 ones.\n\n# Sample serial monitor output\n```\nSTART ../src/iButtonProgrammer.cpp from Oct 19 2022\n\nConnect inner part of your iButton to pin 8\nDo not forget to connect pin 8 with 4.7 kOhm to VCC (5 volt)\nNow searching every second for a connected iButton\nWrite  0x01 0x60 0x60 0xCF 0x03 0x00 0x00 0xA8 on receiving a \"w\" over Serial\nClone ID of last button read on receiving a \"c\" over Serial\n\n\n1-Wire device detected, ID is: 0x1 0x60 0x6C 0xBF 0x3 0x0 0x0 0x21\nFirst byte is 0x01 =\u003e Device is an iButton / (DS1990A), (DS1990R), DS2401, DS2411\nCRC is valid\nDone.\n\n\n******************************************\nReceived a \"w\" over Serial. Start writing.\n1-Wire device ID to write after 5 seconds is: 0x01 0x60 0x60 0xCF 0x03 0x00 0x00 0xA8\nNow wait 5 seconds\n\nCRC=0x6\nID before write: 0x01 0x60 0x6C 0xBF 0x03 0x00 0x00 0x21\nWriting iButton ID: 0x01 0x60 0x60 0xCF 0x03 0x00 0x00 0xA8\nDone.\n\n1-Wire device detected, ID is: 0x01 0x60 0x60 0xCF 0x03 0x00 0x00 0xA8\nFirst byte is 0x01 =\u003e Device is an iButton / (DS1990A), (DS1990R), DS2401, DS2411\nCRC is valid\nDone.\n\n1-Wire device detected, ID is: 0x23 0xD4 0x53 0x57 0x01 0x00 0x00 0x9E\nFirst byte is 0x23 =\u003e Device is an (DS1973), DS2433\nRead 512 bytes EEPROM\nDone.\n\n0x0000:  0xFF 0x81 0x82 0x00 0x08 0x02 0x00 0x27 0xFF 0xFF 0x0E 0xB3 0x81 0x3A 0xC9 0x13  .. .. '  ...:..\n0x0020:  0x00 0x00 0x00 0x00 0x6A 0xA4 0x00 0x0F 0xBE 0x24 0x0D 0xFF 0x05 0x7A 0x76 0x2C     j. ..$. .zv,\n0x0040:  0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 UUUUUUUUUUUUUUUU\n0x0060:  0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 UUUUUUUUUUUUUUUU\n0x0080:  0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 UUUUUUUUUUUUUUUU\n0x00A0:  0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 UUUUUUUUUUUUUUUU\n0x00C0:  0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 UUUUUUUUUUUUUUUU\n0x00E0:  0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 UUUUUUUUUUUUUUUU\n0x0100:  0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 0x55 UUUUUUUUUUUUUUUU\n0x0120:  0x51 0x93 0x3E 0x1E 0xC5 0x2C 0x62 0x7A 0x77 0xA0 0x02 0xAE 0x00 0xBD 0xC8 0x35 Q.\u003e..,bzw... ..5\n0x0140:  0xF4 0x75 0x72 0x82 0x02 0x30 0x5C 0xCE 0x10 0xD7 0x8E 0x27 0xA4 0xB5 0xEC 0x7C .ur..0\\....'...|\n0x0160:  0xAE 0x7B 0xBE 0x36 0xCE 0xE3 0x85 0x29 0x4B 0x55 0x4E 0x6C 0x5C 0xDB 0x49 0x48 .{.6...)KUNl\\.IH\n0x0180:  0x62 0x0C 0x8B 0xCB 0x8C 0x7A 0x6E 0x45 0xA9 0xF7 0x9D 0xC9 0xB3 0x06 0x49 0x0B b....znE......I.\n0x01A0:  0xAB 0x1D 0xA1 0x76 0xAA 0x1B 0x1F 0xC5 0xC8 0x47 0xDD 0x2C 0x87 0xC8 0x6D 0x37 ...v.....G.,..m7\n0x01C0:  0x75 0xBD 0x7D 0xE0 0x89 0x71 0x03 0xA8 0xA8 0x96 0x48 0x7A 0x66 0x9C 0x01 0x7A u.}..q....Hzf..z\n0x01E0:  0x2B 0xF1 0xFA 0xB3 0x9C 0xB6 0xD9 0x63 0x5C 0xD2 0xDB 0x6D 0x3D 0x78 0x61 0xBC +......c\\..m=xa.\nCRC is valid\nDone.\n\n\n```\n\n#### If you find this program useful, please give it a star.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farminjo%2Fibuttonprogrammer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farminjo%2Fibuttonprogrammer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farminjo%2Fibuttonprogrammer/lists"}