Skip to content
View AxonOS-BCI's full-sized avatar

Organizations

@AxonOS-org @DYResearch

Block or report AxonOS-BCI

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
AxonOS-BCI/README.md

This is the founder surface of AxonOS: the live map of the field, and the demos. The canonical engineering source is the AxonOS-org organisation. Every quantitative claim is governed by one file — CLAIMS.md — which records each figure's evidence level, the artefact it is re-derived from, and the finding that would falsify it.

AxonOS is a hard real-time operating system for brain–computer interfaces: the layer between the silicon and the application, where neither Linux nor a stock RTOS can hold the jitter and latency a closed neural loop demands. Rust, #![no_std], ARM Cortex-M. Its contract is written the way it is enforced — in code.

#![no_std]
#![forbid(unsafe_code)] // in every kernel crate except axonos-spsc, where it is confined

//! AxonOS — a deterministic, hard real-time OS for brain–computer interfaces.
//! The layer between silicon and intent.

/// Deadlines are biological, not arbitrary.
pub enum Schedule {
    EarliestDeadlineFirst,
}

/// Consent is enforced at Layer 2 (Connection), below the coupling engine,
/// so no layer above it can override a withdrawal. `Withdrawn` is terminal.
pub enum Consent {
    Granted,
    Suspended,
    Withdrawn,
}

/// The real-time contract. Every figure below is a row in CLAIMS.md.
pub struct Kernel;

impl Kernel {
    pub const TARGET_CURRENT: &'static str = "thumbv7em-none-eabihf";    // Cortex-M4F · STM32F407 · boots here
    pub const TARGET_NEXT:    &'static str = "thumbv8m.main-none-eabihf"; // Cortex-M33 + TrustZone-M · planned
    pub const SCHEDULE:       Schedule     = Schedule::EarliestDeadlineFirst;
    pub const WCRT_BOUND_NS:  u32          = 1_000_000; // C-1   · L1 · proven upper bound, end to end
    pub const WCRT_SEEN_NS:   u32          =   972_000; // C-1·L2 · worst observed, 12 h soak · trace pending
    pub const JITTER_NS:      u32          =     2_100; // C-2   · L2 · σ · trace pending
    pub const HEAP_ON_PATH:   bool         = false;     // zero-copy DMA into a static slab arena
}

/// The kernel exposes exactly one typed, capability-gated event stream.
pub trait IntentStream {
    fn poll(&mut self) -> Option<Observation>;
    fn consent(&self) -> Consent;
}

What the kernel holds

Current target Cortex-M4F · STM32F407 · thumbv7em-none-eabihf — the reference firmware boots here
Next target Cortex-M33 + TrustZone-M · STM32H573 · thumbv8m.main-none-eabihf — planned
Scheduling Earliest-Deadline-First, against biological deadlines
Response time ≤ 1,000 µs end to end, proven — C-1 · L1 · 972 µs the worst observed over a 12 h soak — C-1·L2, trace pending
Jitter 2.1 µs σ — C-2 · L2, trace pending
Consent Withdrawal proven to terminate in the correct state — C-4·L1, from Granted · ≤ 1,648 cycles — analytical
Front end ADS1299 · 8 channels · 24-bit
Memory safety unsafe confined to axonos-spsc; #![forbid(unsafe_code)] everywhere else in the kernel
Verification 30 Kani harnesses in the kernel, re-run in CI
Discipline #![no_std] · no heap on the critical path · zero-copy DMA

Evidence levels — L1 formally proven · L2 measured on reference hardware · L3 independently reproduced · analytical derived by hand from a reference — are defined in VALIDATION.md and catalogued in CLAIMS.md. No measured figure is claimed until its raw trace lands in axonos-validation. L3 is claimed for nothing. The peer-readable derivation is the Zenodo preprint: analytical, falsifiable, no measurement claims.

In focus · dy-wcet

Timing analysis that refuses rather than rounds. Worst-case response time in integer arithmetic, and a named refusal wherever a bound cannot be justified — the AxonOS timing work as a standalone crate, at DY Research.

0 dependencies, no floating point · 8 Kani proofs, every one closing in CI · 100 tests, fifteen derived by hand · 6 named refusals

Try it live → · Source · The method

One stream, every language

The kernel emits a single 32-byte intent record, and the wire format is the contract: the reference codec and the Rust SDK decode it identically, checked on every push, and the C header is checked against it by the compiler — in axonos-conformance, alongside bindings for Java, JavaScript and assembly.

use axonos_sdk::{Capability, IntentKind, IntentStream, Manifest};

let manifest = Manifest::builder()
    .app_id("org.axonos.cursor")?
    .capability(Capability::Navigation)   // kernel caps delivery at 50 Hz
    .max_rate_hz(50)
    .build()?;

let mut stream = IntentStream::connect(&manifest)?; // ABI handshake, then data flows
while let Some(obs) = stream.poll() {
    if let IntentKind::Direction(dir) = obs.kind() {
        cursor.step(dir, obs.confidence_raw());       // u16 Q0.16 — exact, never a float
    }
}

The engineering substrate — AxonOS-org

Layer Repository What it holds
Kernel axonos-kernel The hard real-time core · EDF · #![no_std] · no heap on the critical path
Signal axonos-signal-pipeline ADS1299 to intent, deterministically · zero-copy DMA into a static slab arena
Consent axonos-consent Layer-2 enforcement below the coupling engine · Withdrawn is terminal
Protocol axonos-protocol The wire format and the 32-byte intent record
Swarm axonos-swarm Multi-device coordination over the protocol
Silicon axonos-hal A timing budget that refuses a configuration whose deadline the measured chain cannot meet
Privacy axonos-vault Raw samples unreachable by construction; only bounded, purpose-bound reductions leave, each recorded
Posture axonos-supervisor The right to act is withdrawn on signal quality; the right to record never is
Integration axonos-stack The layers running as one session from a seed, diffed byte for byte in CI
Scoring axonos-brs The score behind the Radar, in integer arithmetic a browser can recompute
Standard axonos-standard The specification, the evidence levels, CLAIMS.md, VALIDATION.md
Conformance axonos-conformance Test vectors and bindings for the wire format
Validation axonos-validation Pre-registered on-hardware validation and its traces
SDKs axonos-sdk · python · swift Capability-gated client bindings
Governance axonos-rfcs Design proposals, and the record of how the architecture is decided

Doubt it in ninety seconds

The fastest way to judge any of this is not to read it.

# the whole chain from a seed: electrode -> privacy vault -> the right to act
git clone https://github.com/AxonOS-org/axonos-stack && cd axonos-stack
cargo run --locked --bin session -- --seed 7 --frames 3000 | diff - reference/session-7.txt

Silence means it reproduced byte for byte on your machine. The session is not a happy path: an electrode lifts at 4.8 s and the transcript records the system withdrawing the right to actuate 96 ms later, while continuing to record — because the moments a device stops trusting itself are the ones a clinician needs afterwards. Its last line is an accounting identity, delivered + lost = produced, and if it ever fails, one of the three components is lying about what it saw.

Then check who wrote the automated commits on the live map, and whether GitHub signed them:

gh api repos/AxonOS-BCI/axonos-community-radar/commits \
  --jq '.[0:10][] | "\(.commit.verification.verified)  \(.author.login)"'

That one is here because it once read false. The scanner published through a personal token, and GitHub signs API-created commits only for app identities, so the public map's history was unsigned for six weeks. The fix was to stop the token writing at all: the scanner now hands its payload over as a release asset, which creates no commit, and the repository's own workflow commits it under the identity that is signed. The command stays because a claim that was wrong once is worth leaving checkable.

This account

The founder half of one project: AxonOS-org holds the specification and the running core; this account holds the live map of the field and the playable demos.

Repository What it is
axonos-community-radar · live A living map of open neurotech: refreshed from GitHub every three hours, scored by evidence tier, with zero runtime dependencies
neural-boundary-game The canonical demo: a deterministic Rust/WASM model of the AxonOS sovereignty architecture — consent, least-privilege scopes, sealed privacy vault, StimGuard — replayable byte for byte, and embedded on axonos.org
axonos-boundary-run-v64 The Sovereign Signal: a zero-telemetry browser game whose SHA-256 replay proof is re-checked in CI, in JavaScript and in Python

Earlier iterations — axonos-boundary-run-v9, axonos-boundary-run-v52, neural-boundary-game-play — are kept as historical references.

Fund the work

AxonOS is open, and it is funded by the work it makes possible.

Commission an engagement. DY Research carries out independent technical due diligence — Snapshot, Focused Audit, Due Diligence — at a fixed price from $5,000, and its revenue funds AxonOS. Engagements and scope →

Contribute voluntarily, in Dogecoin, to DMwHAhqVNWf7dyEznukxCufNS5rjuP5MTp — support page · verify on-chain.

Contributions are voluntary: not purchases, not investments, and no product entitlement. Commercial licensing is a separate written agreement, in fiat by default: connect@axonos.org. Terms: CRYPTO_PAYMENT_TERMS.md.


© The AxonOS Project / Denis Yermakou

axonos.org · connect@axonos.org · security@axonos.org · LinkedIn

Pinned Loading

  1. AxonOS-org/axonos-sdk AxonOS-org/axonos-sdk Public

    Rust SDK for building applications on AxonOS — a real-time operating system for brain-computer interfaces. Provides intent APIs, capability-based permissions, and deterministic execution.

    Rust 4

  2. axonos-community-radar axonos-community-radar Public

    AxonOS Radar — a living, auto-updated map of the open brain-computer-interface field. An AxonOS community project.

    Python 4

  3. AxonOS-org/axonos-consent AxonOS-org/axonos-consent Public

    Kernel-level consent state machine for brain–computer interfaces — no_std, zero-alloc, #![forbid(unsafe_code)], formally bounded (Kani), with optional guardian co-authorisation.

    Rust 6

  4. AxonOS-org/axonos-protocol AxonOS-org/axonos-protocol Public

    The AxonOS Consent Protocol — specification and reference implementation. no_std, zero-alloc, forbid(unsafe): bounded CBOR codec, exhaustive consent state machine, StimGuard for brain–computer inte…

    Rust 9

  5. AxonOS-org/axonos-standard AxonOS-org/axonos-standard Public

    Canonical technical standard and architecture manual for AxonOS: deterministic BCI software, neural permissions, consent, validation, and governance.

    Python 6

  6. AxonOS-org/axonos-kernel AxonOS-org/axonos-kernel Public

    Hard real-time Rust microkernel for brain-computer interfaces. #![no_std] on Cortex-M, EDF scheduling with Kani-verified WCRT bounds, zero-copy intent path, capability-based privacy by construction…

    Rust 9