{"id":16133810,"url":"https://github.com/wallarug/rpi-openocd","last_synced_at":"2026-02-03T06:37:14.560Z","repository":{"id":72814117,"uuid":"234734554","full_name":"wallarug/rpi-openocd","owner":"wallarug","description":"Starting Template for using Raspberry Pi as an OpenOCD Programmer","archived":false,"fork":false,"pushed_at":"2020-03-30T10:29:47.000Z","size":17,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-07T04:07:16.987Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"GDB","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/wallarug.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":"2020-01-18T12:54:37.000Z","updated_at":"2020-04-17T12:06:39.000Z","dependencies_parsed_at":"2023-02-26T17:15:29.777Z","dependency_job_id":null,"html_url":"https://github.com/wallarug/rpi-openocd","commit_stats":{"total_commits":2,"total_committers":1,"mean_commits":2.0,"dds":0.0,"last_synced_commit":"2f0add803249dd23373b5475304fb1d060a1ab59"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/wallarug/rpi-openocd","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wallarug%2Frpi-openocd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wallarug%2Frpi-openocd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wallarug%2Frpi-openocd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wallarug%2Frpi-openocd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wallarug","download_url":"https://codeload.github.com/wallarug/rpi-openocd/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wallarug%2Frpi-openocd/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29035785,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-03T06:11:29.234Z","status":"ssl_error","status_checked_at":"2026-02-03T06:11:03.146Z","response_time":96,"last_error":"SSL_read: 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":[],"created_at":"2024-10-09T22:46:00.947Z","updated_at":"2026-02-03T06:37:14.538Z","avatar_url":"https://github.com/wallarug.png","language":"GDB","funding_links":[],"categories":[],"sub_categories":[],"readme":"# OpenOCD Toolkit\n\nThis contains the files required to use the Raspberry Pi as a programmer on GPIO24 and GPIO25.   Use the Hackster.io Tutorial for usage instructions.\n\n## Directory Stucture\n\n```\nopenocd\n  ./firmware  - contains bin files\n  ./interface - contains config files for openocd\n  ./target    - contains atsamd21 for openocd\n```\n\n\n## Prepare Build Environment (for OpenOCD)\n\n```\nsudo apt install gcc-arm-none-eabi dirmngr libtool autoconf libusb-dev\n```\n\n**Clone the OpenOCD repository**\n\nNote: (as of writing 322d2fa12c9b5520e06c1d581ce8b4e3c75750ca):\n\n```\ngit clone https://git.code.sf.net/p/openocd/code openocd-code\ncd openocd-code\n./bootstrap\n./configure --enable-sysfsgpio --enable-bmc8235gpio\nmake\nsudo make install\n```\n\n## Usage\n\n**Note:** Remember to update openocd.cfg before uploading.  Make sure correct bootloader/firmware is being uploaded.\n\n```\nsudo openocd\n```\n\n## Example Usage - Arduino Bootloader\n\nLets flash the Arduino Zero (or Adafruit Feather m0) bootloader:\n\n```\ncd openocd\nwget -O samd21_sam_ba.bin https://github.com/arduino/ArduinoCore-samd/blob/master/bootloaders/zero/samd21_sam_ba.bin?raw=true\nopenocd -f bootloader.cfg\n```\n\n## Padding File\n\nOpenOCD does not allow for uploading of bin files without a firmware attached.  To overcome this, all firmware (CircuitPython, Seesaw, etc) needs to be padded by 0x2000 bits (8 kbytes) for the bootloader.  Use below if you plan on using OpenOCD for uploading new firmware.\n\n```\ntruncate -s 8192 samd21_sam_ba.bin; cat samd21_sam_ba.bin firmware.bin \u003e boot-firmware.bin\n```\n\n* samd21_sam_ba.bin - bootloader\n* firmware.bin - firmware binary (CircuitPython, Seesaw, etc)\n* boot-firmware.bin - output file to be uploaded using `sudo openocd`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwallarug%2Frpi-openocd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwallarug%2Frpi-openocd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwallarug%2Frpi-openocd/lists"}