SfAR Modules - 30001 register - Decoding
This article describes how to decode the decimal value of the 30001 register in SfAR modules, so as it is possible to read the type and versions of the module.
1. Conversion of a variable
After reading the decimal value, convert it to a hexadecimal value, for example, using a built-in calculator in Windows. For example, the value of the register is 10240 converted to a hexadecimal is 2800.
Fig. 1 Decimal to hexagonal value conversion
In the next step, divide this value into two parts, MSB (most significant bit) and LSB (least significant bit), for a value of 2800 MSB is 28 and LSB is 00. Then convert the value of each bit separately. As a result of the conversion, the decimal value of MSB is 40 and LSB is 0.
2. Decoding bits decimal value
The MSB bit defines the module's firmware version, to read it, divide the value of the bit by 10. If the MSB is 40, the firmware version will be 4.0. The LSB bit defines the module's type. To read it, use the following table:
Type no. | Type |
---|---|
0 | SfAR-S-8DI8DO |
1 | SfAR-S-16DI |
2 | SfAR-S-16DO |
3 | SfAR-S-6RO |
4 | SfAR-S-8TO |
5 | SfAR-S-8DI8TO |
7 | SfAR-S-16RO |
8 | SfAR-S-8DI8RO |
10 | SfAR-S-6TI |
20 | SfAR-S-8AI2DO |
30 | SfAR-S-8AO |
39 | SfAR-S-ETH |
40 | SfAR-1M-1AI1DO |
41 | SfAR-1M-1TI1DO |
42 | SfAR-1M-4DI |
43 | SfAR-1M-2DI2DO |
44 | SfAR-1M-4DO |
45 | SfAR-1M-4DI-M |
46 | SfAR-1M-2DI1AO |
Table 1 A table comparing the type number with the module name
Fig. 2 Screenshot from the SfAR Configurator confirming correct decoding of register 30001, for the example given in this article