Publish
The Cyphal class (cyphal/Cyphal.cpp and cyphal/CyphalBase.cpp) registers the following publishing features:
| service | cyphal/application/ | Type | Description |
|---|---|---|---|
uavcan.pnp.NodeIDAllocation |
NodeIDAllocation | Thread | Begins a PnP NodeID Client to request a Node ID |
uavcan.node.Heartbeat |
Heartbeat | Thread | Publishes a UAVCAN heartbeat message periodically |
uavcan.diagnostic.Record |
DiagnosticRecord | Backend for Log | Publishes diagnostic messages |
uavcan.time.Synchronization |
TimeSynchronization | Thread + Handle | Handles time synchronization messages |
Reserved Cyphal Subject Port¶
| Subject Port | Description |
|---|---|
| [7168, 8191] | Reserved by Cyphal (as for Services: [384, 511]) |
| 6060 | BMS Power Data Publish, starcopter.highdra.bms.PowerData.0.2 |
| 6061 | BMS Temperature Data Publish, starcopter.highdra.bms.TempData.0.1 |
| 6062 | BMS State Data Publish, starcopter.highdra.bms.State.0.2 |
| 6063 | BMS Energy Source Publish, reg.udral.physics.electricity.Power.0.1 |
| 6064 | BMS Data Publish, starcopter.highdra.bms.BMSData.0.1 |
| 6065 | BMS Synchronized HotSwap Engage (from MB), starcopter.highdra.bms.BMSSynchronizeHotSwapActivationPulse.0.1 |
| 6076 | MMB sync pulse (from MB), uavcan.primitive.Empty.1.0 |
| 6091 | Gear Setpoints (from MB), starcopter.GearState.0.1 |
| --- | --- |
| xxxx | MB Data |
| xxxx | MMB Data |
Note
Maybe change all internal ports to [6144,7167] - Non-standard fixed regulated identifiers (i.e., vendor-specific).