{"id":33170417,"url":"https://github.com/chrismolli/ProjectInertia","last_synced_at":"2025-11-20T19:01:59.164Z","repository":{"id":43890634,"uuid":"357131805","full_name":"chrismolli/ProjectInertia","owner":"chrismolli","description":"Open-source project to build a low-cost Commercial-Off-The-Shelf on-board computer for small CubeSat missions. ","archived":false,"fork":false,"pushed_at":"2021-05-17T13:00:08.000Z","size":1853,"stargazers_count":10,"open_issues_count":1,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-04-20T00:38:26.617Z","etag":null,"topics":["embedded","hardware","msp430","openhardware","rust-lang","space"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/chrismolli.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}},"created_at":"2021-04-12T09:22:10.000Z","updated_at":"2023-09-08T18:21:04.000Z","dependencies_parsed_at":"2022-08-02T18:01:21.139Z","dependency_job_id":null,"html_url":"https://github.com/chrismolli/ProjectInertia","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/chrismolli/ProjectInertia","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrismolli%2FProjectInertia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrismolli%2FProjectInertia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrismolli%2FProjectInertia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrismolli%2FProjectInertia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chrismolli","download_url":"https://codeload.github.com/chrismolli/ProjectInertia/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrismolli%2FProjectInertia/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":285494607,"owners_count":27181443,"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","status":"online","status_checked_at":"2025-11-20T02:00:05.334Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["embedded","hardware","msp430","openhardware","rust-lang","space"],"created_at":"2025-11-16T01:00:41.545Z","updated_at":"2025-11-20T19:01:59.159Z","avatar_url":"https://github.com/chrismolli.png","language":"Rust","funding_links":[],"categories":["Spacecraft"],"sub_categories":["Spacecraft Hardware"],"readme":"# ProjectInertia\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"figures/inertia_prototype.jpg\" width=\"1300\"\u003e\n\u003c/p\u003e\n\nThis is an open-source project to build a low-cost Commercial-Off-The-Shelf on-board computer for small CubeSat missions providing extremely low power usage and tolerance to radiation effects. At this point in time it is mostly a playground to test out new technologies and learn from it. The first hardware prototype [`iteration 1`](https://github.com/chrismolli/ProjectInertia/tree/main/hardware/iteration%201) is currently in production.\n\n[\u003cimg src=\"https://github.com/chrismolli/ProjectInertia/raw/main/figures/banner.png\" align=\"right\" width=\"256\"\u003e](https://github.com/chrismolli/ProjectInertia)\n\n## Table of Contents\n* [Commercial-Off-The-Shelf in Space](#commercial-off-the-shelf-in-space)\n* [Hardware Development](#hardware-development)\n  * [Features](#features)\n  * [Manufacturing](#manufacturing)\n* [Firmware Development](#firmware-development)\n  * [Peripheral Access Crate](#peripheral-access-crate)\n  * [Toolchain](#toolchain)\n\n## Commercial-Off-The-Shelf in Space\nThe usage of Commercial-Off-The-Shelf (COTS) components in Space has been a topic of research for many years already due to the benefits of higher performance and lower costs, when compared to their radiation hardened counterparts.\n\nHowever, COTS components are subject to a manifold of radiation induced failure modes, that need to be considered during system design [[Sandia2018](https://www.osti.gov/servlets/purl/1481565)]. Destructive Latch-Up events are automatically detected and mitigated by an on-board circuit breaker. After a hold-down time of some dozen µs, the board is reconnected to the power source. This project proposes the use of a COTS microcontroller that is based on Ferro-Electric RAM. The Ferro-Electric RAM cell itself is resilient against various Single Event Effects [[Fetahovic2017](https://www.researchgate.net/publication/322940214_Overview_of_radiation_effects_on_emerging_non-volatile_memory_technologies)]. However, the peripherals within the respective integrated circuit might still experience Single Event Effects [[Bosser2018](https://www.osti.gov/servlets/purl/1483658)]. These will be recovered by the internal watchdog circuit, present in the microcontroller hardware.\n\nDeveloping hard- and software products for Space application do require a lot of careful design choices. Thus, this project aims for the most simple and very low cost design to minimize potential sources for failures.\n\n## Hardware Development\nThe design is centered around the series of Ferroelectric-RAM based Microcontroller Units from Texas Instruments. The first prototype is using the [MSP430FR6972IPMR](https://www.ti.com/store/ti/en/p/product/?p=MSP430FR6972IPMR).  \n\n### Features\nThe current hardware design ([`iteration 1`](https://github.com/chrismolli/ProjectInertia/tree/main/hardware/iteration%201)) features the following:\n- Microcontroller based on FRAM technology clocked at `16 MHz`\n  - `64 kB` On-Chip Memory for Code and Data\n  - Internal Hardware Watchdog to recover from Functional Interrupts\n  - Availability of Ultra Low-Power Modes\n- External `16 kB` Non-Volatile FRAM Memory\n- Automatic Latch-Up Detection\n  - Circuit Breaker limits at `1500 mA`\n  - Current Monitoring\n- `12V` Power Input\n  -  Optional `5V` Input for Development\n- Input/Output\n  - 2 x UART\n  - 1 x I\u003csup\u003e2\u003c/sup\u003eC\n  - JTAG Programming Interface\n  - `3.3V` output for peripherals\n  - Screw Terminals for all Interfaces\n- CubeSat Size\n  - `1/4 U` or (`5cm x 5cm`)\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/chrismolli/ProjectInertia/raw/main/figures/flatview.png\" width=\"500\"\u003e\n\u003c/p\u003e\n\n### Manufacturing\nYou can find the schematics, gerber files and bill of materials in the [hardware folder](https://github.com/chrismolli/ProjectInertia/tree/main/hardware).\n\n## Firmware Development\nThe firmware is being developed using [Embedded Rust](http://www.rust-embedded.org) to explore the versatility of this language in a environment with extremely limited resources and the need for high reliability. Useful resources may be obtained from the [awesome embedded Rust list](https://github.com/rust-embedded/awesome-embedded-rust).\n\n### Peripheral Access Crate\nThe PAC has been successfully created for the MSP430FR6972 chip used in prototype [`iteration 1`](https://github.com/chrismolli/ProjectInertia/tree/main/hardware/iteration%201).  \n- [`msp430fr6972`](https://crates.io/crates/msp430fr6972) (beta) ![Crates.io](https://img.shields.io/crates/v/msp430fr6972)\n\n### Toolchain\nThe current toolchain uses:\n- Rust `Edition 2018` (nightly)\n- [`msp430-gcc-elf`](https://www.ti.com/tool/MSP430-GCC-OPENSOURCE) compiler\n- [`msp430-bsl-python`](https://github.com/chrismolli/msp430-bsl-python) programmer\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchrismolli%2FProjectInertia","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchrismolli%2FProjectInertia","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchrismolli%2FProjectInertia/lists"}