diff --git a/schema/core.yml b/schema/core.yml index e7a1cbd..7a60fe8 100644 --- a/schema/core.yml +++ b/schema/core.yml @@ -11,36 +11,43 @@ registers: type: U8 access: Read description: Specifies the major hardware version of the device. + deprecated: true HardwareVersionLow: address: 2 type: U8 access: Read description: Specifies the minor hardware version of the device. + deprecated: true AssemblyVersion: address: 3 type: U8 access: Read description: Specifies the version of the assembled components in the device. + deprecated: true CoreVersionHigh: address: 4 type: U8 access: Read description: Specifies the major version of the Harp core implemented by the device. + deprecated: true CoreVersionLow: address: 5 type: U8 access: Read description: Specifies the minor version of the Harp core implemented by the device. + deprecated: true FirmwareVersionHigh: address: 6 type: U8 access: Read description: Specifies the major version of the Harp core implemented by the device. + deprecated: true FirmwareVersionLow: address: 7 type: U8 access: Read description: Specifies the minor version of the Harp core implemented by the device. + deprecated: true TimestampSeconds: address: 8 type: U32 @@ -100,12 +107,79 @@ registers: type: U16 access: Write description: Specifies the unique serial number of the device. + deprecated: true ClockConfiguration: address: 14 type: U8 access: Write maskType: ClockConfigurationFlags description: Specifies the configuration for the device synchronization clock. + TimestampOffset: + address: 15 + type: U8 + access: Write + description: Configures an offset for Timestamp updates. + deprecated: true + UID: + address: 16 + type: U8 + access: Read + length: 16 + description: Specifies the unique identifier of the device. + Tag: + address: 17 + type: U8 + access: Write + length: 8 + description: Stores a user-defined tag for the device. + Heartbeat: + address: 18 + type: U16 + access: Event + maskType: HeartbeatFlags + description: Stores the number of seconds since the device was last reset. + Version: + address: 19 + type: U8 + access: Read + length: 32 + description: Specifies the semantic version of the different device components. + payloadSpec: + ProtocolMajor: + offset: 0 + description: Specifies the major version of the Harp protocol implementation. + ProtocolMinor: + offset: 1 + description: Specifies the minor version of the Harp protocol implementation. + ProtocolPatch: + offset: 2 + description: Specifies the patch version of the Harp protocol implementation. + FirmwareMajor: + offset: 3 + description: Specifies the major version of the firmware. + FirmwareMinor: + offset: 4 + description: Specifies the minor version of the firmware. + FirmwarePatch: + offset: 5 + description: Specifies the patch version of the firmware. + HardwareMajor: + offset: 6 + description: Specifies the major version of the hardware. + HardwareMinor: + offset: 7 + description: Specifies the minor version of the hardware. + HardwarePatch: + offset: 8 + description: Specifies the patch version of the hardware. + SdkId: + offset: 9 + description: Specifies the microcontroller SDK used to implement the device. + mask: 0xFFFFFF + InterfaceHash: + offset: 12 + description: Specifies the SHA-1 hash value of the device interface contract. + mask: 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF groupMasks: OperationMode: description: Specifies the operation mode of the device. @@ -132,6 +206,7 @@ bitMasks: RestoreEeprom: {value: 0x2, description: The device will boot and restore all the registers to the values stored in non-volatile memory.} Save: {value: 0x4, description: The device will boot and save all the current register values to non-volatile memory.} RestoreName: {value: 0x8, description: The device will boot with the default device name.} + UpdateFirmware: {value: 0x20, description: The device will enter firmware update mode.} BootFromDefault: {value: 0x40, description: Specifies that the device has booted from default factory values.} BootFromEeprom: {value: 0x80, description: Specifies that the device has booted from non-volatile values stored in EEPROM.} ClockConfigurationFlags: @@ -143,4 +218,9 @@ bitMasks: RepeaterCapability: {value: 0x8, description: Specifies the device has the capability to repeat the clock synchronization signal to the clock output connector.} GeneratorCapability: {value: 0x10, description: Specifies the device has the capability to generate the clock synchronization signal to the clock output connector.} ClockUnlock: {value: 0x40, description: The device will unlock the timestamp register counter and will accept commands to set new timestamp values.} - ClockLock: {value: 0x80, description: The device will lock the timestamp register counter and will not accept commands to set new timestamp values.} \ No newline at end of file + ClockLock: {value: 0x80, description: The device will lock the timestamp register counter and will not accept commands to set new timestamp values.} + HeartbeatFlags: + description: Specifies configuration flags for the device heartbeat event. + bits: + IsActive: {value: 0x1, description: "The device is in Active mode."} + IsSynchronized: {value: 0x2, description: "The device is synchronized to an external Harp clock generator. The value is 1 if the device is itself a clock generator."} \ No newline at end of file diff --git a/schema/registers.json b/schema/registers.json index ad1913f..3787c9c 100644 --- a/schema/registers.json +++ b/schema/registers.json @@ -168,6 +168,10 @@ "type": "string", "enum": ["public", "private"] }, + "deprecated": { + "description": "Specifies whether the register function is deprecated.", + "type": "boolean" + }, "volatile": { "description": "Specifies whether register values can be saved in non-volatile memory.", "type": "boolean"