ACP Sensorboard Command List
Total Commands and their CRC16 Modbus Results:
4X 00 CMD CMD_LEN CRC16.
Where X should be replaced to one of the ACP Source Node regardingly.
Notes :
While sending:
[source]4 00 01 CMDHEX CRC16
While receiving:
[4][destination] 00 DLEN PAYLOAD_ID PAYLOAD CRC16
NDX | CMD | CMD Definition | CMD HEX | P_ID |
---|---|---|---|---|
1 | 04 00 01 01 C1 44 | CMD_GET_CMD_LIST | 0x01 | 0x01 |
2 | 04 00 01 02 81 45 | CMD_STAT | 0x02 | 0x02 |
3 | ||||
4 | 04 00 01 04 01 47 | CMD_GET_BME_ALL | 0x04 | |
5 | ||||
6 | 04 00 01 06 80 86 | CMD_GET_GG_ALL | 0x06 | |
7 | 04 00 01 07 0F 44 | CMD_GET_SI_ALL | 0x07 | |
8 | 04 00 01 64 6F 9F | CMD_BMET | 0x64 | 0x03 |
9 | 40 00 01 65 D4 5F | CMD_BMEP | 0x65 | 0x04 |
10 | 40 00 01 66 94 5E | CMD_BMEH | 0x66 | 0x05 |
11 | 40 00 01 67 55 9E | CMD_BMEG | 0x67 | 0x06 |
12 | 40 00 01 68 15 9A | CMD_BMEA | 0x68 | 0x07 |
13 | 40 00 01 69 D4 5A | CMD_BNOT | 0x69 | 0x08 |
14 | 40 00 01 6A 94 5B | CMD_BNOA | 0x6A | 0x09 |
15 | 40 00 01 6B 15 90 | CMD_BNOM | 0x6B | 0x0A |
16 | 40 00 01 6C 14 59 | CMD_BNOGS | 0x6C | 0x0B |
17 | 40 00 01 6D D5 99 | CMD_BNOE | 0x6D | 0x0C |
18 | 40 00 01 6E 95 98 | CMD_BNOL | 0x6E | 0x0D |
19 | 40 00 01 6F 54 58 | CMD_BNOGR | 0x6F | 0x0E |
20 | 40 00 01 78 14 56 | CMD_GGC | 0x78 | 0x0F |
21 | 40 00 01 82 94 15 | CMD_SIV | 0x82 | 0x10 |
22 | 40 00 01 83 55 D5 | CMD_SIR | 0x83 | 0x11 |
23 | 40 00 01 84 14 17 | CMD_SUV | 0x84 | 0x12 |
Sample Responses for ACP SBRD CMDs
40 00 01 01 D5 B4 - CMD-LIST
This returns the available commands for sensor board in this software and hardware version. [19 byte]
40 00 01 02 95 B5 - STATUS
This returns the sensor board sensors numbers and the I2C address of each existing sensors:
In response : 03 28 60 76
.
03
means there are 3 I2C sensors on the sensor board now (or 3 of all the sensors working properly now)
28, 60, 76
are the addresses of those working sensors that mentioned above.
Generally :
- BME680 0x76
- BNO055 0x28
- SI1145 0x60
40 00 01 03 54 75 - GET ALL
This returns all the sensor board data together.
40 00 01 04 15 B7 - BME
This returns all the BME680 data together.
The response payload has 20 bits.
Header: 04 00
( From Sensorboard(0x04) to the OBC(0x00) )
Data Length: 14
(HEX 0x14 == DEC 20)
each for bit is respectivly for one BME680 parapeter in this order:
Temperature : 00 00 0D BA
= 3514 = 35.14 ℃
Pressure: 00 01 7F 5A
= 98138 = 981.38 Pa
Humidity: 00 00 2A 09
= 10761 = 10.761 %
Gas (resistance) : 00 01 18 44
= 71748 = 717.48 mΩ
Altitude: 00 00 68 FE
= 26878 = 268.78 m
CRC: 8F 5F
40 00 01 05 D4 77 -BNO
This returns all the BNO055 data together
40 00 01 06 94 76 - GG
This returns all the Geiger data together
Geiger counter counts inturrupts at digital pin2 (interrupt 0) on arduino for 1 minute. This command returns the CPM (geiger count per minute) value.
The CPM is not an Instant quantity, when you call this command, it returns the most last tested CPM.
Wait at least 15 seconds to get a newer data.
40 00 01 07 55 B6 - SI1145
This returns all the SI1145 Data Together
Visible light has a wave length that ranges from 380 nm – 750 nm on the electromagnetic spectrum while infrared light is just beyond it, ranging from 700 nm – 1 mm, the start of the non-visible portion of the spectrum.
The UV Index is a number linearly related to the intensity of sunlight reaching the earth and is weighted according to the CIE Erythemal Action Spectrum as shown in Figure 13. This weighting is a standardized measure of human skin’s response to different wavelengths of sunlight from UVB to UVA. The UV Index has been standardized by the World Health Organization and includes a simplified consumer UV exposure level as shown in Figure 14 and Figure 15.
The SI1145 Sensor reads three parameters about light :
- Visible
- IR
- UV Index
While Asking queries, a sample response can be like this:
01 06
: VIS = 262
00 FD
: IR = 253
00 03
: UV Index = 3
40 00 01 64 15 9F - BMET
This returns BME680 Temperature value.
40 00 01 65 D4 5F -BMEP
This returns BME680 Pressure Value
40 00 01 66 94 5E - BMEH
This returns BME680 Humidity value
40 00 01 67 55 9E - BMEG
This returns BME680 gas resistance value
40 00 01 68 15 9A - BMEA
This returns BME680 altitude value
40 00 01 69 D4 5A - BNOT
The command returns the current ambient temperature in degrees celsius
40 00 01 6A 94 5B - BNOA
This returns the 3-axis vector data for **ACCELEROMETER **(values in m/s^2)
40 00 01 6B 15 90 - BNOM
This returns the 3-axis vector data for MAGNETOMETER (values in uT, micro Teslas)
40 00 01 6F 54 58 - BNOGS
This returns the 3-axis vector data for GYROSCOPE (values in rps, radians per second)
40 00 01 70 15 90 - BNOE
This returns the 3-axis vector data for EULER (values in Euler angles or ‘degrees’, from 0..359)
40 00 01 6E 95 98 - BNOL
This returns the 3-axis vector data for LINEARACCEL (values in m/s^2)
40 00 01 6F 54 58 CMD_BNOGR
This returns the 3-axis vector data for GRAVITY (values in m/s^2)
40 00 01 78 14 56 - GG-CPM
This returns the Geiger CPM value:
40 00 01 82 94 15 -VIS
This returns the SI1145 Visiable Light Sensor Value:
40 00 01 82 94 15
:
40 00 01 83 55 D5 - IR
This returns SI1145 IR light sensor value :
40 00 01 83 55 D5
:
40 00 01 84 14 17 - UV
This returns the SI1145 UV index value :
40 00 01 84 14 17
: