forked from mavlink/mavlink
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathperipherals.schema.json
93 lines (92 loc) · 4.19 KB
/
peripherals.schema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
{
"$id": "https://mavlink.io/comp_version.schema.json",
"$schema": "http://json-schema.org/draft-07/schema",
"description": "Schema for COMP_METADATA_TYPE_PERIPHERALS",
"type": "object",
"properties": {
"version": {
"description": "Version number for the format of this file.",
"type": "integer",
"minimum": 1
},
"peripherals": {
"type": "array",
"description": "All external peripherals",
"items": {
"name": {
"type": "string",
"description": "Human-readable name of the peripheral."
},
"vendorName": {
"type": "string",
"description": "Name of the peripheral vendor."
},
"modelName": {
"type": "string",
"description": "Name of the peripheral model."
},
"firmwareVersion": {
"type": "string",
"pattern": "^\\d+\\.\\d+\\.\\d+(\\.\\d+)?$",
"description": "major.minor.patch.dev format"
},
"hardwareVersion": {
"type": "string",
"pattern": "^\\d+\\.\\d+\\.\\d+(\\.\\d+)?$",
"description": "major.minor.patch.dev format"
},
"metadataTypes": {
"type": "array",
"description": "Which `COMP_METADATA_TYPE` specs are supported, with URI's.",
"items": {
"type": "object",
"properties": {
"type": {
"description": "COMP_METADATA_TYPE",
"type": "integer"
},
"uri": {
"description": "http[s] or MAVLink FTP uri",
"type": "string"
},
"fileCrc": {
"description": "CRC32 checksum of the file",
"type": "integer"
},
"uriFallback": {
"description": "Fallback URI when primary is not available",
"type": "string"
},
"fileCrcFallback": {
"description": "CRC32 checksum of the fallback file",
"type": "integer"
},
"translationUri": {
"description": "http[s] or MAVLink FTP url",
"type": "string"
},
"translationFileCrc": {
"description": "CRC32 checksum of the translation file",
"type": "integer"
},
"translationUriFallback": {
"description": "Fallback URI when primary translation is not available",
"type": "string"
},
"translationFileCrcFallback": {
"description": "CRC32 checksum of the translation fallback file",
"type": "integer"
}
},
"required": [ "type", "uri", "fileCrc", "uriFallback", "fileCrcFallback" ],
"additionalProperties": false
}
}
},
"required": [ "name" ],
"additionalProperties": false
}
},
"required": [ "version", "peripherals" ],
"additionalProperties": false
}