{"id":13811922,"url":"https://github.com/bbcmicrobit/micropython","last_synced_at":"2025-05-16T04:06:03.995Z","repository":{"id":36059518,"uuid":"40358251","full_name":"bbcmicrobit/micropython","owner":"bbcmicrobit","description":"Port of MicroPython for the BBC micro:bit","archived":false,"fork":false,"pushed_at":"2024-09-16T17:23:03.000Z","size":17567,"stargazers_count":618,"open_issues_count":110,"forks_count":289,"subscribers_count":62,"default_branch":"master","last_synced_at":"2025-04-06T15:11:18.003Z","etag":null,"topics":["microbit","micropython"],"latest_commit_sha":null,"homepage":"https://microbit-micropython.readthedocs.io","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bbcmicrobit.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,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-08-07T11:58:53.000Z","updated_at":"2025-04-04T13:45:45.000Z","dependencies_parsed_at":"2024-05-07T16:40:48.584Z","dependency_job_id":"ad138dd1-8452-4308-ab2c-5e6f2bc5c08f","html_url":"https://github.com/bbcmicrobit/micropython","commit_stats":{"total_commits":633,"total_committers":81,"mean_commits":7.814814814814815,"dds":0.5529225908372828,"last_synced_commit":"359fd6bffd6d57bed3a11b1acb2ebb0f9f9494c8"},"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbcmicrobit%2Fmicropython","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbcmicrobit%2Fmicropython/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbcmicrobit%2Fmicropython/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbcmicrobit%2Fmicropython/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bbcmicrobit","download_url":"https://codeload.github.com/bbcmicrobit/micropython/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254464895,"owners_count":22075570,"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":["microbit","micropython"],"created_at":"2024-08-04T04:00:41.054Z","updated_at":"2025-05-16T04:05:58.974Z","avatar_url":"https://github.com/bbcmicrobit.png","language":"C","readme":"MicroPython for the BBC micro:bit\n=================================\n\nThis is the source code for MicroPython running on the BBC micro:bit!\n\nTo get involved with the micro:bit community join the Slack channel by signing up here:\nhttps://tech.microbit.org/get-involved/where-to-find/\n\nVarious things are in this repository, including:\n- Source code in source/ and inc/ directories.\n- Example Python programs in the examples/ directory.\n- Tools in the tools/ directory.\n\nThe source code is a yotta application and needs yotta to build, along\nwith an ARM compiler toolchain (eg arm-none-eabi-gcc and friends).\n\nUbuntu users can install the needed packages using:\n```\nsudo add-apt-repository -y ppa:team-gcc-arm-embedded\nsudo apt-get update\nsudo apt-get install gcc-arm-embedded\nsudo apt-get install cmake ninja-build srecord libssl-dev\nsudo -H pip3 install yotta\n```\n\nOnce all packages are installed run\n`git clone https://github.com/bbcmicrobit/micropython` to get the source code.\nThe move to the created directory and use yotta and the provided Makefile to build.\nYou might need need an Arm Mbed account to complete some of the yotta commands,\nif so, you could be prompted to create one as a part of the process.\n\n- Use target [bbc-microbit-classic-gcc-nosd](https://github.com/lancaster-university/yotta-target-bbc-microbit-classic-gcc-nosd)\nfrom GitHub (the yotta registry is deprecated as of 2021):\n\n  ```\n  yotta target bbc-microbit-classic-gcc-nosd@https://github.com/lancaster-university/yotta-target-bbc-microbit-classic-gcc-nosd\n  ```\n\n- Run yotta update to fetch remote assets:\n\n  ```\n  yotta up\n  ```\n\n- Start the build:\n\n  ```\n  make all\n  ```\n\nThe resulting firmware.hex file to flash onto the device can be\nfound in the build/ directory from the root of the repository.\n\nThe Makefile provided does some extra preprocessing of the source,\nadds version information to the UICR region, puts the resulting\nfirmware at build/firmware.hex, and includes some convenience targets.\n\nHow to use\n==========\n\nUpon reset you will have a REPL on the USB CDC serial port, with baudrate\n115200 (eg picocom /dev/ttyACM0 -b 115200).\n\nThen try:\n\n    \u003e\u003e\u003e import microbit\n    \u003e\u003e\u003e microbit.display.scroll('hello!')\n    \u003e\u003e\u003e microbit.button_a.is_pressed()\n    \u003e\u003e\u003e dir(microbit)\n\nTab completion works and is very useful!\n\nRead our documentation here:\n\nhttps://microbit-micropython.readthedocs.io/en/latest/\n\nYou can also use the tools/pyboard.py script to run Python scripts directly\nfrom your PC, eg:\n\n    $ ./tools/pyboard.py /dev/ttyACM0 examples/conway.py\n\nBe brave! Break things! Learn and have fun!\n","funding_links":[],"categories":["C"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbbcmicrobit%2Fmicropython","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbbcmicrobit%2Fmicropython","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbbcmicrobit%2Fmicropython/lists"}