{"id":27164802,"url":"https://github.com/noorientationprogramming/code-orb","last_synced_at":"2026-03-14T15:22:03.115Z","repository":{"id":285415520,"uuid":"958067088","full_name":"NoOrientationProgramming/code-orb","owner":"NoOrientationProgramming","description":"Realtime Debugging for Microcontrollers – with Logging, Task View, and Command Execution.","archived":false,"fork":false,"pushed_at":"2025-04-08T23:22:54.000Z","size":1879,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-08T23:25:33.842Z","etag":null,"topics":["arduino","codeorb","debugger","embedded","esp32","microcontroller","raspberrypi","stm32"],"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/NoOrientationProgramming.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}},"created_at":"2025-03-31T15:34:21.000Z","updated_at":"2025-04-08T23:22:58.000Z","dependencies_parsed_at":"2025-04-08T23:35:51.745Z","dependency_job_id":null,"html_url":"https://github.com/NoOrientationProgramming/code-orb","commit_stats":null,"previous_names":["noorientationprogramming/gw-dbg-swt","noorientationprogramming/code-orb"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NoOrientationProgramming%2Fcode-orb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NoOrientationProgramming%2Fcode-orb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NoOrientationProgramming%2Fcode-orb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NoOrientationProgramming%2Fcode-orb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NoOrientationProgramming","download_url":"https://codeload.github.com/NoOrientationProgramming/code-orb/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247966029,"owners_count":21025484,"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","codeorb","debugger","embedded","esp32","microcontroller","raspberrypi","stm32"],"created_at":"2025-04-09T02:32:36.317Z","updated_at":"2026-03-14T15:22:03.110Z","avatar_url":"https://github.com/NoOrientationProgramming.png","language":"C++","readme":"\n\u003ch2 id=\"codeorb-start\" style=\"display:none;\"\u003e\u003c/h2\u003e\n\n[![GitHub](https://img.shields.io/github/license/NoOrientationProgramming/code-orb?style=plastic\u0026color=orange)](https://en.wikipedia.org/wiki/GNU_General_Public_License#Version_3)\n[![GitHub Release](https://img.shields.io/github/v/release/NoOrientationProgramming/code-orb?color=orange\u0026style=plastic)](https://github.com/NoOrientationProgramming/code-orb/releases)\n\n![Windows](https://img.shields.io/github/actions/workflow/status/NoOrientationProgramming/code-orb/windows.yml?style=plastic\u0026logo=github\u0026label=Windows)\n![Linux](https://img.shields.io/github/actions/workflow/status/NoOrientationProgramming/code-orb/linux.yml?style=plastic\u0026logo=linux\u0026logoColor=white\u0026label=Linux)\n![macOS](https://img.shields.io/github/actions/workflow/status/NoOrientationProgramming/code-orb/macos.yml?style=plastic\u0026logo=apple\u0026label=macOS)\n![FreeBSD](https://img.shields.io/github/actions/workflow/status/NoOrientationProgramming/code-orb/freebsd.yml?style=plastic\u0026logo=freebsd\u0026label=FreeBSD)\n![ARM, RISC-V \u0026 MinGW](https://img.shields.io/github/actions/workflow/status/NoOrientationProgramming/code-orb/cross.yml?style=plastic\u0026logo=gnu\u0026label=ARM%2C%20RISC-V%20%26%20MinGW)\n\n[![Discord](https://img.shields.io/discord/960639692213190719?style=plastic\u0026color=purple\u0026logo=discord)](https://discord.gg/FBVKJTaY)\n[![Twitch Status](https://img.shields.io/twitch/status/Naegolus?label=twitch.tv%2FNaegolus\u0026logo=Twitch\u0026logoColor=%2300ff00\u0026style=plastic\u0026color=purple)](https://twitch.tv/Naegolus)\n\n\u003cp align=\"center\"\u003e\n  \u003ckbd\u003e\n    \u003cimg src=\"https://raw.githubusercontent.com/NoOrientationProgramming/code-orb/main/doc/res/codeorb.jpg\" style=\"width: 700px; max-width:100%\"/\u003e\n  \u003c/kbd\u003e\n\u003c/p\u003e\n\n## The Microcontroller Debugger\n\nWhen working with small targets, simple log outputs are often the only feedback available.\nWith [CodeOrb](https://github.com/NoOrientationProgramming/code-orb#codeorb-start) on the PC and the\n[SystemCore](https://github.com/NoOrientationProgramming/SystemCore#processing-start) on the target,\nwe have two additional channels: a task viewer and a command interface.\nThe task viewer provides a detailed insight into the entire system, whereas the command interface gives full control over the microcontroller.\n\nCodeOrb is essentially a multiplexer service running on the PC that transmits and receives these three channels of information via UART from and to the microcontroller.\nThe channels can then be viewed on the PC or over the network using a Telnet client such as PuTTY.\n\n## Features\n\n- Full control over target\n- Crystal-clear insight into the system\n- Through three dedicated channels\n  - Process Tree\n  - Log\n  - Command Interface\n    - Interactive\n    - Automatic\n\n## How To Use\n\n### Topology\n\nThis repository provides `CodeOrb` the microcontroller debugger highlighted in orange. Check out the [example for STM32](https://github.com/NoOrientationProgramming/hello-world-stm32) as well!\n\n\u003cp align=\"center\"\u003e\n  \u003ckbd\u003e\n    \u003cimg src=\"https://raw.githubusercontent.com/NoOrientationProgramming/code-orb/main/doc/system/topology.svg\" style=\"width: 300px; max-width:100%\"/\u003e\n  \u003c/kbd\u003e\n\u003c/p\u003e\n\n### Integrate the SystemCore into the target\n\nTODO: Separate README file\n\nMeanwhile: Check out the [example for STM32](https://github.com/NoOrientationProgramming/hello-world-stm32)\n\n### Start CodeOrb on the PC\n\nOn Windows\n```\n.\\CodeOrb.exe -d COM1\n```\n\nOn UNIX systems\n```\n./codeorb -d /dev/ttyACM0\n```\n\nThe output should look like this\n\u003cp align=\"center\"\u003e\n  \u003ckbd\u003e\n    \u003cimg src=\"https://raw.githubusercontent.com/NoOrientationProgramming/code-orb/main/doc/screenshots/Screenshot%20from%202025-06-19%2022-29-20.png\" style=\"width: 700px; max-width:100%\"/\u003e\n  \u003c/kbd\u003e\n\u003c/p\u003e\n\n\n### User Interface\n\nAs soon as the multiplexing service CodeOrb has been started you can connect to the channels via Telnet. You can use IPv4 or IPv6\n\nFor the **Process Tree**\n```\ntelnet :: 3000\n```\n\nFor the **Log**\n```\ntelnet :: 3002\n```\n\nFor the **Interactive Command Interface**\n```\ntelnet :: 3004\n```\n\nFor the **Automatic Command Interface**\n```\necho \"toggle\" | nc :: 3006\nexternal Twitch jobs enabled\n```\n\n\u003cp align=\"center\"\u003e\n  \u003ckbd\u003e\n    \u003cimg src=\"https://raw.githubusercontent.com/NoOrientationProgramming/code-orb/main/doc/screenshots/Screenshot%20from%202025-05-26%2022-25-18.png\" style=\"width: 700px; max-width:100%\"/\u003e\n  \u003c/kbd\u003e\n\u003c/p\u003e\n\n## How To Build\n\n### Requirements\n\nYou will need [meson](https://mesonbuild.com/) and [ninja](https://ninja-build.org/) for the build.\nCheck the instructions for your OS on how to install these tools.\n\n### Steps\n\nClone repo\n```\ngit clone https://github.com/NoOrientationProgramming/code-orb.git --recursive\n```\n\nEnter the directory\n```\ncd code-orb\n```\n\nSetup build directory\n```\nmeson setup build-native\n```\n\nBuild the application\n```\nninja -C build-native\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnoorientationprogramming%2Fcode-orb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnoorientationprogramming%2Fcode-orb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnoorientationprogramming%2Fcode-orb/lists"}