{"id":14961887,"url":"https://github.com/arduino/rp2040tools","last_synced_at":"2025-10-19T08:31:19.951Z","repository":{"id":39594768,"uuid":"342232494","full_name":"arduino/rp2040tools","owner":"arduino","description":null,"archived":false,"fork":false,"pushed_at":"2024-12-13T14:58:50.000Z","size":19824,"stargazers_count":25,"open_issues_count":4,"forks_count":6,"subscribers_count":14,"default_branch":"master","last_synced_at":"2025-01-29T10:51:31.791Z","etag":null,"topics":["arduino","embedded","embedded-systems","microcontroller","rp2040"],"latest_commit_sha":null,"homepage":"","language":"Go","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/arduino.png","metadata":{"funding":{"github":["arduino"],"custom":"https://www.arduino.cc/en/Main/Donate"},"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":"2021-02-25T12:09:40.000Z","updated_at":"2025-01-12T15:22:55.000Z","dependencies_parsed_at":"2023-12-07T06:26:10.057Z","dependency_job_id":"38a56d65-5e9a-4aab-9d0e-0c1bff3d9066","html_url":"https://github.com/arduino/rp2040tools","commit_stats":{"total_commits":74,"total_committers":7,"mean_commits":"10.571428571428571","dds":0.5945945945945945,"last_synced_commit":"d2e5ccd551875f9f6c531f0f51164235bf22acf2"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arduino%2Frp2040tools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arduino%2Frp2040tools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arduino%2Frp2040tools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arduino%2Frp2040tools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/arduino","download_url":"https://codeload.github.com/arduino/rp2040tools/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237092456,"owners_count":19254219,"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","embedded","embedded-systems","microcontroller","rp2040"],"created_at":"2024-09-24T13:28:01.861Z","updated_at":"2025-10-19T08:31:19.554Z","avatar_url":"https://github.com/arduino.png","language":"Go","funding_links":["https://github.com/sponsors/arduino","https://www.arduino.cc/en/Main/Donate"],"categories":[],"sub_categories":[],"readme":"# rp2040tools\n\n[![Check Go status](https://github.com/arduino/rp2040tools/actions/workflows/check-go-task.yml/badge.svg)](https://github.com/arduino/rp2040tools/actions/workflows/check-go-task.yml)\n[![Check Markdown status](https://github.com/arduino/rp2040tools/actions/workflows/check-markdown-task.yml/badge.svg)](https://github.com/arduino/rp2040tools/actions/workflows/check-markdown-task.yml)\n[![Check Prettier Formatting status](https://github.com/arduino/rp2040tools/actions/workflows/check-prettier-formatting-task.yml/badge.svg)](https://github.com/arduino/rp2040tools/actions/workflows/check-prettier-formatting-task.yml)\n[![Check Taskfiles status](https://github.com/arduino/rp2040tools/actions/workflows/check-taskfiles.yml/badge.svg)](https://github.com/arduino/rp2040tools/actions/workflows/check-taskfiles.yml)\n[![Sync Labels status](https://github.com/arduino/rp2040tools/actions/workflows/sync-labels.yml/badge.svg)](https://github.com/arduino/rp2040tools/actions/workflows/sync-labels.yml)\n\nThis repo contains all the tools used by Arduino to upload compiled code to the boards that use the rp2040 processor.\n\n## Tools\n\n- [**picotool**](https://github.com/raspberrypi/picotool): a tool for interacting with a RP2040 device in BOOTSEL mode, or with a RP2040 binary\n- [**elf2uf2**](https://github.com/raspberrypi/pico-sdk/tree/master/tools/elf2uf2): a tool to convert binary format\n- **rp2040load** is a go tool which orchestrates the other two\n- [**pioasm**](https://github.com/raspberrypi/pico-sdk/tree/master/tools/pioasm)\n\n## CI\n\nThe CI is responsible for building and uploading the tools\nThe [release workflow](https://github.com/arduino/rp2040tools/blob/master/.github/workflows/release.yml) is divided in:\n\n- a job which uses a docker container (called crossbuild) with all the toolchains inside required to cross-compile the tools from raspberry pi. The binaries produced are as static and self-contained as possible.\n- a job that cross-compiles the go tool called rp2040load.\n- one last job used to move in the correct folders the binaries and to `tar.bz2` them and upload them in the [github release page](https://github.com/arduino/rp2040tools/releases) and on s3 download server.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farduino%2Frp2040tools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farduino%2Frp2040tools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farduino%2Frp2040tools/lists"}