{"id":28427843,"url":"https://github.com/mathis-lambert/iot_microbit_gateway","last_synced_at":"2025-07-11T01:09:37.950Z","repository":{"id":297020852,"uuid":"988375223","full_name":"mathis-lambert/iot_microbit_gateway","owner":"mathis-lambert","description":null,"archived":false,"fork":false,"pushed_at":"2025-06-03T11:44:30.000Z","size":1041,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-04T08:40:14.864Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/mathis-lambert.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":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-05-22T13:04:55.000Z","updated_at":"2025-06-03T11:44:32.000Z","dependencies_parsed_at":"2025-06-08T03:01:30.166Z","dependency_job_id":null,"html_url":"https://github.com/mathis-lambert/iot_microbit_gateway","commit_stats":null,"previous_names":["mathis-lambert/iot_microbit_gateway"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mathis-lambert/iot_microbit_gateway","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathis-lambert%2Fiot_microbit_gateway","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathis-lambert%2Fiot_microbit_gateway/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathis-lambert%2Fiot_microbit_gateway/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathis-lambert%2Fiot_microbit_gateway/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mathis-lambert","download_url":"https://codeload.github.com/mathis-lambert/iot_microbit_gateway/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathis-lambert%2Fiot_microbit_gateway/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264703181,"owners_count":23651914,"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":[],"created_at":"2025-06-05T12:30:38.758Z","updated_at":"2025-07-11T01:09:37.940Z","avatar_url":"https://github.com/mathis-lambert.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# microbit-samples\n\nA collection of example programs using the micro:bit runtime.\n\nThe source/examples folder contains a selection of samples demonstrating the capabilities and usage of the runtime APIs.\nTo select a sample, simply copy the .cpp files from the relevant folder into the source/ folder.\n\ne.g. to select the \"invaders\" example:\n\n```\ncp source/examples/invaders/* source\n```\n\nand then to compile your sample:\n\n```\nyt clean\nyt build\n```\n\nThe HEX file for you micro:bit with then be generated and stored in build\\bbc-microbit-classic-gcc\\source\\microbit-samples-combined.hex\n\nn.b. Any samples using the low level RADIO APIs (such as simple-radio-rx and simple-radio-tx) require the bluetooth capabilities of the\nmicro:bit to be disabled. To do this, simply copy the config.json file from the sample to the top level of your project. Don't forget to\nremove this file again later if you then want to use Bluetooth! For example:\n\n\n```\ncp source/examples/simple-radio-rx/config.json .\n```\n\n\n## Overview\n\nThe micro:bit runtime provides an easy to use environment for programming the BBC micro:bit in the C/C++ language, written by Lancaster University. It contains device drivers for all the hardware capabilities of the micro:bit, and also a suite of runtime mechanisms to make programming the micro:bit easier and more flexible. These range from control of the LED matrix display to peer-to-peer radio communication and secure Bluetooth Low Energy services. The micro:bit runtime is proudly built on the ARM mbed and Nordic nrf51 platforms.\n\nIn addition to supporting development in C/C++, the runtime is also designed specifically to support higher level languages provided by our partners that target the micro:bit. It is currently used as a support library for all the languages on the BBC www.microbit.co.uk website, including Microsoft Block, Microsoft TouchDevelop, Code Kingdoms JavaScript and Micropython languages.\n\n## Links\n\n[micro:bit runtime docs](http://lancaster-university.github.io/microbit-docs/) | [microbit-dal](https://github.com/lancaster-university/microbit-dal) |  [uBit](https://github.com/lancaster-university/microbit)\n\n## Build Environments\n\n| Build Environment | Documentation |\n| ------------- |-------------|\n| ARM mbed online | http://lancaster-university.github.io/microbit-docs/online-toolchains/#mbed |\n| yotta  | http://lancaster-university.github.io/microbit-docs/offline-toolchains/#yotta |\n\n##  microbit-dal Configuration\n\nThe DAL also contains a number of compile time options can be modified. A full list and explanation\ncan be found in our [documentation](http://lancaster-university.github.io/microbit-docs/advanced/#compile-time-options-with-microbitconfigh).\n\nAlternately, `yotta` can be used to configure the dal regardless of module/folder structure, through providing a\n`config.json` in this directory.\n\nHere is an example of `config.json` with all available options configured:\n```json\n{\n    \"microbit-dal\":{\n        \"bluetooth\":{\n            \"enabled\": 1,\n            \"pairing_mode\": 1,\n            \"private_addressing\": 0,\n            \"open\": 0,\n            \"whitelist\": 1,\n            \"advertising_timeout\": 0,\n            \"tx_power\": 0,\n            \"dfu_service\": 1,\n            \"event_service\": 1,\n            \"device_info_service\": 1\n        },\n        \"reuse_sd\": 1,\n        \"default_pullmode\":\"PullDown\",\n        \"gatt_table_size\": \"0x300\",\n        \"heap_allocator\": 1,\n        \"nested_heap_proportion\": 0.75,\n        \"system_tick_period\": 6,\n        \"system_components\": 10,\n        \"idle_components\": 6,\n        \"use_accel_lsb\": 0,\n        \"min_display_brightness\": 1,\n        \"max_display_brightness\": 255,\n        \"display_scroll_speed\": 120,\n        \"display_scroll_stride\": -1,\n        \"display_print_speed\": 400,\n        \"panic_on_heap_full\": 1,\n        \"debug\": 0,\n        \"heap_debug\": 0,\n        \"stack_size\":2048,\n        \"sram_base\":\"0x20000008\",\n        \"sram_end\":\"0x20004000\",\n        \"sd_limit\":\"0x20002000\",\n        \"gatt_table_start\":\"0x20001900\"\n        \"radio_max_packet_size\":248,\n        \"radio_max_rx_buffers\":4\n    }\n}\n```\n##  Debug on Visual Studio Code (Windows)\n\n1. build sample. You can build \"HELLO WORLD! :)\" program.\n2. Copy microbit-samples\\build\\bbc-microbit-classic-gcc\\source\\microbit-samples-combined.hex to micro:bit.\n3. Launch the Visual Studio Code\n4. File -\u003e Open Folder... and select \"microbit-samples\" folder.\n5. Set break point to \"main()\" function.\n6. View -\u003e Debug (Ctrl + Shift + D)\n7. Debug -\u003e Start Debugging (F5)\n\n![Debug on Visual Studio Code](/debugOnVisualStudioCode.gif)\n\n## BBC Community Guidelines\n\n[BBC Community Guidelines](https://www.microbit.co.uk/help#sect_cg)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmathis-lambert%2Fiot_microbit_gateway","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmathis-lambert%2Fiot_microbit_gateway","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmathis-lambert%2Fiot_microbit_gateway/lists"}