node-mavlink 1.0.9 → 1.0.10-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
<sup>If you're looking for the officially supported bindings for JavaScript see the [pymavlink](https://github.com/ArduPilot/pymavlink/tree/master/generator/javascript) project.</sup>
|
2
2
|
|
3
3
|
# Node.js MavLink library
|
4
4
|
|
@@ -41,8 +41,7 @@ Each message consists of multiple fields that contain specific data. Parsing the
|
|
41
41
|
|
42
42
|
```javascript
|
43
43
|
import {
|
44
|
-
minimal, common, ardupilotmega, uavionix, icarous,
|
45
|
-
asluav, development, matrixpilot, paparazzi, ualberta,
|
44
|
+
minimal, common, ardupilotmega, uavionix, icarous, asluav, ualberta
|
46
45
|
} from 'node-mavlink'
|
47
46
|
|
48
47
|
// create a registry of mappings between a message id and a data class
|
@@ -53,9 +52,6 @@ const REGISTRY = {
|
|
53
52
|
...uavionix.REGISTRY,
|
54
53
|
...icarous.REGISTRY,
|
55
54
|
...asluav.REGISTRY,
|
56
|
-
...development.REGISTRY,
|
57
|
-
...matrixpilot.REGISTRY,
|
58
|
-
...paparazzi.REGISTRY,
|
59
55
|
...ualberta.REGISTRY,
|
60
56
|
}
|
61
57
|
|
@@ -17,14 +17,14 @@ export declare const SERIALIZERS: {
|
|
17
17
|
float: (value: float, buffer: Buffer, offset: number) => number;
|
18
18
|
double: (value: double, buffer: Buffer, offset: number) => number;
|
19
19
|
'char[]': (value: string, buffer: Buffer, offset: number, maxLen: number) => void;
|
20
|
-
'
|
21
|
-
'
|
22
|
-
'
|
23
|
-
'
|
24
|
-
'
|
25
|
-
'
|
26
|
-
'
|
27
|
-
'
|
20
|
+
'int8_t[]': (value: uint8_t[], buffer: Buffer, offset: number, maxLen: number) => void;
|
21
|
+
'uint8_t[]': (value: uint8_t[], buffer: Buffer, offset: number, maxLen: number) => void;
|
22
|
+
'int16_t[]': (value: uint16_t[], buffer: Buffer, offset: number, maxLen: number) => void;
|
23
|
+
'uint16_t[]': (value: uint16_t[], buffer: Buffer, offset: number, maxLen: number) => void;
|
24
|
+
'int32_t[]': (value: uint32_t[], buffer: Buffer, offset: number, maxLen: number) => void;
|
25
|
+
'uint32_t[]': (value: uint32_t[], buffer: Buffer, offset: number, maxLen: number) => void;
|
26
|
+
'int64_t[]': (value: uint64_t[], buffer: Buffer, offset: number, maxLen: number) => void;
|
27
|
+
'uint64_t[]': (value: uint64_t[], buffer: Buffer, offset: number, maxLen: number) => void;
|
28
28
|
'float[]': (value: float[], buffer: Buffer, offset: number, maxLen: number) => void;
|
29
29
|
'double[]': (value: double[], buffer: Buffer, offset: number, maxLen: number) => void;
|
30
30
|
};
|
@@ -26,42 +26,42 @@ exports.SERIALIZERS = {
|
|
26
26
|
buffer.writeUInt8(code, offset + i);
|
27
27
|
}
|
28
28
|
},
|
29
|
-
'
|
29
|
+
'int8_t[]': (value, buffer, offset, maxLen) => {
|
30
30
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
31
31
|
buffer.writeInt8(value[i], offset + i);
|
32
32
|
}
|
33
33
|
},
|
34
|
-
'
|
34
|
+
'uint8_t[]': (value, buffer, offset, maxLen) => {
|
35
35
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
36
36
|
buffer.writeUInt8(value[i], offset + i);
|
37
37
|
}
|
38
38
|
},
|
39
|
-
'
|
39
|
+
'int16_t[]': (value, buffer, offset, maxLen) => {
|
40
40
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
41
41
|
buffer.writeInt16LE(value[i], offset + i * 2);
|
42
42
|
}
|
43
43
|
},
|
44
|
-
'
|
44
|
+
'uint16_t[]': (value, buffer, offset, maxLen) => {
|
45
45
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
46
46
|
buffer.writeUInt16LE(value[i], offset + i * 2);
|
47
47
|
}
|
48
48
|
},
|
49
|
-
'
|
49
|
+
'int32_t[]': (value, buffer, offset, maxLen) => {
|
50
50
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
51
51
|
buffer.writeInt32LE(value[i], offset + i * 4);
|
52
52
|
}
|
53
53
|
},
|
54
|
-
'
|
54
|
+
'uint32_t[]': (value, buffer, offset, maxLen) => {
|
55
55
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
56
56
|
buffer.writeUInt32LE(value[i], offset + i * 4);
|
57
57
|
}
|
58
58
|
},
|
59
|
-
'
|
59
|
+
'int64_t[]': (value, buffer, offset, maxLen) => {
|
60
60
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
61
61
|
buffer.writeBigInt64LE(value[i], offset + i * 8);
|
62
62
|
}
|
63
63
|
},
|
64
|
-
'
|
64
|
+
'uint64_t[]': (value, buffer, offset, maxLen) => {
|
65
65
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
66
66
|
buffer.writeBigUInt64LE(value[i], offset + i * 8);
|
67
67
|
}
|
@@ -2,7 +2,10 @@
|
|
2
2
|
|
3
3
|
import { createReadStream } from 'fs'
|
4
4
|
import { MavLinkPacketSplitter, MavLinkPacketParser } from '..'
|
5
|
-
import {
|
5
|
+
import {
|
6
|
+
minimal, common, ardupilotmega, uavionix, icarous,
|
7
|
+
asluav, development, ualberta,
|
8
|
+
} from '..'
|
6
9
|
|
7
10
|
const file = createReadStream('./GH-5.bin')
|
8
11
|
|
@@ -20,6 +23,9 @@ const REGISTRY = {
|
|
20
23
|
...ardupilotmega.REGISTRY,
|
21
24
|
...uavionix.REGISTRY,
|
22
25
|
...icarous.REGISTRY,
|
26
|
+
...asluav.REGISTRY,
|
27
|
+
...development.REGISTRY,
|
28
|
+
...ualberta.REGISTRY,
|
23
29
|
}
|
24
30
|
|
25
31
|
reader.on('data', packet => {
|
package/lib/serialization.ts
CHANGED
@@ -38,42 +38,42 @@ export const SERIALIZERS = {
|
|
38
38
|
buffer.writeUInt8(code, offset + i)
|
39
39
|
}
|
40
40
|
},
|
41
|
-
'
|
41
|
+
'int8_t[]': (value: uint8_t[], buffer: Buffer, offset: number, maxLen: number) => {
|
42
42
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
43
43
|
buffer.writeInt8(value[i], offset + i)
|
44
44
|
}
|
45
45
|
},
|
46
|
-
'
|
46
|
+
'uint8_t[]': (value: uint8_t[], buffer: Buffer, offset: number, maxLen: number) => {
|
47
47
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
48
48
|
buffer.writeUInt8(value[i], offset + i)
|
49
49
|
}
|
50
50
|
},
|
51
|
-
'
|
51
|
+
'int16_t[]': (value: uint16_t[], buffer: Buffer, offset: number, maxLen: number) => {
|
52
52
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
53
53
|
buffer.writeInt16LE(value[i], offset + i * 2)
|
54
54
|
}
|
55
55
|
},
|
56
|
-
'
|
56
|
+
'uint16_t[]': (value: uint16_t[], buffer: Buffer, offset: number, maxLen: number) => {
|
57
57
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
58
58
|
buffer.writeUInt16LE(value[i], offset + i * 2)
|
59
59
|
}
|
60
60
|
},
|
61
|
-
'
|
61
|
+
'int32_t[]': (value: uint32_t[], buffer: Buffer, offset: number, maxLen: number) => {
|
62
62
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
63
63
|
buffer.writeInt32LE(value[i], offset + i * 4)
|
64
64
|
}
|
65
65
|
},
|
66
|
-
'
|
66
|
+
'uint32_t[]': (value: uint32_t[], buffer: Buffer, offset: number, maxLen: number) => {
|
67
67
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
68
68
|
buffer.writeUInt32LE(value[i], offset + i * 4)
|
69
69
|
}
|
70
70
|
},
|
71
|
-
'
|
71
|
+
'int64_t[]': (value: uint64_t[], buffer: Buffer, offset: number, maxLen: number) => {
|
72
72
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
73
73
|
buffer.writeBigInt64LE(value[i], offset + i * 8)
|
74
74
|
}
|
75
75
|
},
|
76
|
-
'
|
76
|
+
'uint64_t[]': (value: uint64_t[], buffer: Buffer, offset: number, maxLen: number) => {
|
77
77
|
for (let i = 0; i < value.length && i < maxLen; i++) {
|
78
78
|
buffer.writeBigUInt64LE(value[i], offset + i * 8)
|
79
79
|
}
|