cu29-runtime 1.1.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",
            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"],
        ),
    ],
)