cu29-runtime 1.3.0

Copper Runtime Runtime crate. Copper is an engine for robotics.
Documentation
(
    missions: [(id: "Alpha"), (id: "Beta")],
    resources: [
        (id: "board", provider: "demo::BoardBundle"),
        (id: "memory", provider: "demo::MemoryBundle"),
        (
            id: "radio",
            provider: "demo::RadioBundle",
            resources: {"serial": "board.uart1", "set": "board.gpio1"},
            missions: ["Beta"],
        ),
        (id: "unused", provider: "demo::UnusedBundle"),
    ],
    tasks: [
        (
            id: "sensor",
            type: "tasks::Sensor",
            missions: ["Alpha", "Beta"],
            resources: {"spi": "board.spi1", "adc": "board.adc1"},
        ),
        (
            id: "control",
            type: "tasks::Control",
            missions: ["Alpha"],
            resources: {"spi": "board.spi1"},
        ),
        (id: "logger", type: "tasks::Logger", missions: ["Beta"], resources: {"cfg": "memory.cfg"}),
    ],
    bridges: [
        (
            id: "telemetry",
            type: "bridges::Telemetry",
            missions: ["Beta"],
            resources: {"serial": "radio.uart1"},
            channels: [Tx(id: "tx"), Rx(id: "rx")],
        ),
    ],
    cnx: [
        (src: "sensor", dst: "control", msg: "messages::Sensor", missions: ["Alpha"]),
        (src: "sensor", dst: "logger", msg: "messages::Sensor", missions: ["Beta"]),
        (src: "logger", dst: "telemetry/tx", msg: "messages::Log", missions: ["Beta"]),
    ],
)