From ef6a70787e95c5de47e75496020b36b42bc664ff Mon Sep 17 00:00:00 2001 From: "Ake Hedman, Grodans Paradis AB" Date: Tue, 22 May 2018 11:35:57 +0200 Subject: [PATCH] Renamed files for more persistent naming --- SUMMARY.md | 64 ++++++++++--------- appendix_a.md | 2 +- data_coding.md => vscp_data_coding.md | 0 decision_matrix.md => vscp_decision_matrix.md | 0 ....md => vscp_globally_unique_identifiers.md | 0 ...specifics.md => vscp_level_ii_specifics.md | 57 +++-------------- ...file.md => vscp_module_description_file.md | 0 ...l.md => vscp_register_abstraction_model.md | 0 8 files changed, 44 insertions(+), 79 deletions(-) rename data_coding.md => vscp_data_coding.md (100%) rename decision_matrix.md => vscp_decision_matrix.md (100%) rename globally_unique_identifiers.md => vscp_globally_unique_identifiers.md (100%) rename level_ii_specifics.md => vscp_level_ii_specifics.md (74%) rename module_description_file.md => vscp_module_description_file.md (100%) rename register_abstraction_model.md => vscp_register_abstraction_model.md (100%) diff --git a/SUMMARY.md b/SUMMARY.md index a07dc87..c735ce7 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -8,12 +8,12 @@ ## Essential VSCP Parts * [VSCP Level I Specifics](vscp_level_i_specifics.md) -* [VSCP Level II Specifics](level_ii_specifics.md) -* [Globally Unique Identifiers GUID](globally_unique_identifiers.md) -* [Register Abstraction Model](register_abstraction_model.md) -* [Decision Matrix](decision_matrix.md) -* [Data coding](data_coding.md) -* [Module Description File - MDF](module_description_file.md) +* [VSCP Level II Specifics](vscp_level_ii_specifics.md) +* [Globally Unique Identifiers GUID](vscp_globally_unique_identifiers.md) +* [Register Abstraction Model](vscp_register_abstraction_model.md) +* [Decision Matrix](vscp_decision_matrix.md) +* [Data coding](vscp_data_coding.md) +* [Module Description File - MDF](vscp_module_description_file.md) * [VSCP boot loader algorithm](vscp_boot_loader_algorithm.md) * [VSCP Multicast](vscp_multicast.md) @@ -43,31 +43,33 @@ ## Level I events * [Level I Events](level_i_events.md) -* [CLASS1.PROTOCOL(0)](class1.protocol.md) -* [CLASS1.ALARM(1)](class1.alarm.md) -* [CLASS1.SECURITY(2)](class1.security.md) -* [CLASS1.MEASUREMENT(10)](class1.measurement.md) -* [CLASS1.DATA(15)](class1.data.md) -* [CLASS1.INFORMATION(20)](class1.information.md) -* [CLASS1.CONTROL(30)](class1.control.md) -* [CLASS1.MULTIMEDIA(28)](class1.multimedia.md) -* [CLASS1.AOL(50)](class1.aol.md) -* [CLASS1.MEASUREMENT64(60)](class1.measurement64.md) -* [CLASS1.MEASUREZONE(65)](class1.measurezone.md) -* [CLASS1.MEASUREMENT32(70)](class1.measurement32.md) -* [CLASS1.SETVALUEZONE(85)](class1.setvaluezone.md) -* [CLASS1.WEATHER(90)](class1.weather.md) -* [CLASS1.WEATHER_FORECAST(95)](class1.weather_forecast.md) -* [CLASS1.PHONE(100)](class1.phone.md) -* [CLASS1.DISPLAY(102)](class1.display.md) -* [CLASS1.IR(110)](class1.ir.md) -* [CLASS1.GPS(206)](class1.gps.md) -* [CLASS1.WIRELESS(212)](class1.wireless.md) -* [CLASS1.DIAGNOSTIC(506)](class1.diagnostic.md) -* [CLASS1.ERROR(508)](class1.error.md) -* [CLASS1.LOG(509)](class1.log.md) -* [CLASS1.LABORATORY(510)](class1.laboratory.md) -* [CLASS1.LOCAL(511)](class1.local.md) +* [CLASS1.PROTOCOL (0)](class1.protocol.md) + * [Type=0, Undefined](class1.protocol.md#Type=0-\(0x00\)-Undefined.) + * [Type=1, Segment Controller Heartbeat](class1.protocol.md#Type=1-\(0x01\)-Segment-Controller-Heartbeat.) +* [CLASS1.ALARM (1)](class1.alarm.md) +* [CLASS1.SECURITY (2)](class1.security.md) +* [CLASS1.MEASUREMENT (10)](class1.measurement.md) +* [CLASS1.DATA (15)](class1.data.md) +* [CLASS1.INFORMATION (20)](class1.information.md) +* [CLASS1.CONTROL (30)](class1.control.md) +* [CLASS1.MULTIMEDIA (28)](class1.multimedia.md) +* [CLASS1.AOL (50)](class1.aol.md) +* [CLASS1.MEASUREMENT64 (60)](class1.measurement64.md) +* [CLASS1.MEASUREZONE (65)](class1.measurezone.md) +* [CLASS1.MEASUREMENT32 (70)](class1.measurement32.md) +* [CLASS1.SETVALUEZONE (85)](class1.setvaluezone.md) +* [CLASS1.WEATHER (90)](class1.weather.md) +* [CLASS1.WEATHER_FORECAST (95)](class1.weather_forecast.md) +* [CLASS1.PHONE (100)](class1.phone.md) +* [CLASS1.DISPLAY (102)](class1.display.md) +* [CLASS1.IR (110)](class1.ir.md) +* [CLASS1.GPS (206)](class1.gps.md) +* [CLASS1.WIRELESS (212)](class1.wireless.md) +* [CLASS1.DIAGNOSTIC (506)](class1.diagnostic.md) +* [CLASS1.ERROR (508)](class1.error.md) +* [CLASS1.LOG (509)](class1.log.md) +* [CLASS1.LABORATORY (510)](class1.laboratory.md) +* [CLASS1.LOCAL (511)](class1.local.md) ## Level II events diff --git a/appendix_a.md b/appendix_a.md index dcac477..6d38c35 100644 --- a/appendix_a.md +++ b/appendix_a.md @@ -1,6 +1,6 @@ # Appendix A - Assigned GUIDs -If you want your own GUID series you can ask for one by sending an email to [guid@vscp.org](guid@vscp.org) or filling in [this form](https///docs.google.com/forms/d/1PwH-8E5z3oiFcoxUvDqIDhSqVXBIhAMt-92MNnvgEBM/viewform). It is a free service. +If you want your own GUID series you can ask for one by sending an email to [guid@vscp.org](guid@vscp.org). It is a free service. #### 01:00:00:00:00:00:00:00:00:00:00:00:XX:XX:XX:XX Grodans Paradis AB, Brattbergavägen 17 820 50 LOS Sweden Phone: +46 (0)8 40011835 diff --git a/data_coding.md b/vscp_data_coding.md similarity index 100% rename from data_coding.md rename to vscp_data_coding.md diff --git a/decision_matrix.md b/vscp_decision_matrix.md similarity index 100% rename from decision_matrix.md rename to vscp_decision_matrix.md diff --git a/globally_unique_identifiers.md b/vscp_globally_unique_identifiers.md similarity index 100% rename from globally_unique_identifiers.md rename to vscp_globally_unique_identifiers.md diff --git a/level_ii_specifics.md b/vscp_level_ii_specifics.md similarity index 74% rename from level_ii_specifics.md rename to vscp_level_ii_specifics.md index 364a410..37420dc 100644 --- a/level_ii_specifics.md +++ b/vscp_level_ii_specifics.md @@ -17,11 +17,11 @@ typedef struct { /* Time block - Always UTC time */ uint16_t year; - uint8_t month; /* 1-12 */ - uint8_t day; /* 1-31 */ - uint8_t hour; /* 0-23 */ - uint8_t minute; /* 0-59 */ - uint8_t second; /* 0-59 */ + uint8_t month; /* 1-12 */ + uint8_t day; /* 1-31 */ + uint8_t hour; /* 0-23 */ + uint8_t minute; /* 0-59 */ + uint8_t second; /* 0-59 */ uint32_t timestamp; /* Relative time stamp for package in microseconds */ /* ~71 minutes before roll over */ @@ -29,7 +29,7 @@ typedef struct { /* ----- CRC should be calculated from here to end + data block ---- */ uint16_t head; /* Bit 15 GUID is IP v.6 address. */ - /* Bit 14 This is a dumb node. No MDF, register, nothing. */ + /* Bit 14 This is a dumb node. No MDF, register, nothing. */ /* Bit 8-13 = Reserved */ /* bit 765 priority, Priority 0-7 where 0 is highest. */ /* bit 4 = hard coded, true for a hard coded device. */ @@ -56,6 +56,7 @@ The CRC is calculated using the CCITT polynomial The format in a stream is + ## VSCP LEVEL II UDP datagram offsets ```c++ @@ -172,51 +173,13 @@ The VSCP team controls the rest of the addresses and will allocate addresses to ## Predefined VSCP GUID's -It is possible to create your own GUID without requesting a series and still get a valid VSCP GUID. - -### Assigned Global Unique IDs - -** FF:FF:FF:FF:FF:FF:FF:FF:YY:YY:YY:YY:YY:YY:YY:YY ** -Dallas Semiconductor GUID's. This is the 1-wire/iButton 64-bit ID. The device code is in the MSB byte and CRC in the LSB byte. - -** FF:FF:FF:FF:FF:FF:FF:FE:YY:YY:YY:YY:YY:YY:XX:XX ** -Ethernet Device GUID's. The holder of the address can freely use the two least significant bytes of the GUID. MAC address in MSB - LSB order. Also called MAC-48 or EUI-48 by IEEE - -** FF:FF:FF:FF:FF:FF:FF:FD:YY:YY:YY:YY:XX:XX:XX:XX ** -Internet version 4 GUID's. This is a 32-bit ID so the holder of the address can freely use the four least significant bytes of the GUID. IP V4 address in MSB - LSB order. - -** FF:FF:FF:FF:FF:FF:FF:FC:XX:XX:XX:XX:XX:XX:XX:XX ** -Private. Use for in-house local use. The GUID should never appear outside your local segments. - -** FF:FF:FF:FF:FF:FF:FF:FB:YY:YY:YY:XX:XX:XX:XX:XX ** -ISO ID. This is a three byte ID so the holder of the ISO ID can freely use the five least significant bytes of the GUID. - -** FF:FF:FF:FF:FF:FF:FF:FA:YY:YY:YY:YY:XX:XX:XX:XX ** -CiA (CAN in Automation) vendor ID. This is a 32-bit ID so the holder of the vendor ID can freely use the four least significant bytes of the GUID. - -** FF:FF:FF:FF:FF:FF:FF:F9:YY:YY:YY:XX:XX:XX:XX:XX ** -ZigBee 802.15.4 OID. This is a 24-bit ID so the holder of the OID can freely use the five least significant bytes of the GUID. - -** FF:FF:FF:FF:FF:FF:FF:F8:YY:YY:YY:YY:YY:YY:XX:XX ** -Bluetooth MAC. This is a 48-bit ID so the holder of the OID can freely use the two least significant bytes of the GUID. - -** FF:FF:FF:FF:FF:FF:FF:F7:YY:YY:YY:YY:YY:YY:YY:YY ** -IEEE EUI-64. This is a 64-bit ID. The upper three bytes are purchased from IEEE by the company that releases the product. The lower five bytes are assigned by the device and must be unique. - -** FF:FF:FF:FF:FF:FF:FF:F6:00:YY:YY:YY:YY:YY:YY:YY ** -Reserved for RAMTRON MRAM (and compatible), seven byte IDs. +It is possible to create your own GUID without requesting a series and still have a valid global VSCP GUID. This is because GUID series has been constructed from Ethernet MAC addresses and other common id series. Full list is [here](./vscp_globally_unique_identifiers.md). -** FF:FF:FF:FF:FF:FF:FF:F6:01:YY:YY:YY:YY:YY:YY:YY - FF:FF:FF:FF:FF:FF:FF:F6:FF:YY:YY:YY:YY:YY:YY:YY ** -Reserved other future seven bit ID (memory devices) that may have ID, such as PRAM etc. -** FF:FF:FF:FF:FF:FF:FF:F5:00:00:00:00:XX:XX:xXX:XX - FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:FF:XX:XX:XX:XX ** -Reserved -**00:00:00:00:00:00:00:00:00:00:00:00:xx:xx:xx:xx** -Lab usage. You can use this range for your own development or for in-house local use. The GUID should never appear outside your local segments. +## Assigned VSCP GUID's -** FE:YY:YY:YY:YY:YY:YY:YY:YY:YY:YY:YY:YY:YY:YY:YY** -Reserved for a generated 128 bit GUID where the most significant byte is replaced by FE Only use for Level II and on internal net. [http://hegel.ittc.ku.edu/topics/internet/internet-drafts/draft-l/draft-leach-uuids-guids-01.txt](http://hegel.ittc.ku.edu/topics/internet/internet-drafts/draft-l/draft-leach-uuids-guids-01.txt) +Current predefined GUID series is listed in [appendix A](./appendix_a.md). You can request your own series by writing [guid@vscp.org](guid@vscp.org) ## Shorthand GUID's diff --git a/module_description_file.md b/vscp_module_description_file.md similarity index 100% rename from module_description_file.md rename to vscp_module_description_file.md diff --git a/register_abstraction_model.md b/vscp_register_abstraction_model.md similarity index 100% rename from register_abstraction_model.md rename to vscp_register_abstraction_model.md