Difference between revisions of "EYE SENSOR Test"

From Wiki Knowledge Base | Teltonika GPS
 
(90 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
{{Template:BTS Home|model=BTSID1|description=GNSS/GSM/Bluetooth® tracker with internal GNSS/GSM antennas and internal battery|image=FMB130-side-2023-12-29.png|link=
 +
https://teltonika-gps.com/product/fmb130/}}
 +
 +
[[Category:Advanced Trackers]]
 +
 +
==Downloads==
 +
{{Template:Downloads|model=FMB130}}
 +
 +
 
__TOC__
 
__TOC__
 
==<p style="font-size:32px"><span style="color:#0054A6">Introduction</span></p>==
 
==<p style="font-size:32px"><span style="color:#0054A6">Introduction</span></p>==
 
Wireless solutions open up new horizons for your business and help to keep an eye on your assets. Discover our brand-new and certified Bluetooth® Low Energy ID sensor model from Teltonika with robust waterproof casing and a long-lifetime battery. The model is designed for a low-cost fast and easy configuration and integration to save precious time, resources, and ensure accountability.
 
Wireless solutions open up new horizons for your business and help to keep an eye on your assets. Discover our brand-new and certified Bluetooth® Low Energy ID sensor model from Teltonika with robust waterproof casing and a long-lifetime battery. The model is designed for a low-cost fast and easy configuration and integration to save precious time, resources, and ensure accountability.
 
[[File:BTSMP1-datasheet-2023-12-18.2.png|center|frameless|1157x1157px]]
 
[[File:BTSMP1-datasheet-2023-12-18.2.png|center|frameless|1157x1157px]]
 
+
==<p style="font-size:32px"><span style="color:#0054A6">About BTSMP1</span></p>==
==<p style="font-size:32px><span style="color:#0054A6">About BTSMP1</span></p>==
 
 
Perfect for traceability use cases, delivery tracking, monitoring of various movable objects in logistics (trailers, containers), agriculture (tractor attachments), and constructions (tools and inventory). Sensors data makes it especially suitable for cold chain refrigerator use cases. The built-in accelerometer can detect item movement, pitch and roll of the device. Magnet detection can be used for wireless open/close detection and notifications such as trailer door events, etc. EYE sensor supports iBeacon and Eddystone protocols. The device is fully compatible with the Teltonika firmware platform which provides extended functionality. Configure, scan, and update anytime anywhere with a dedicated Teltonika mobile app
 
Perfect for traceability use cases, delivery tracking, monitoring of various movable objects in logistics (trailers, containers), agriculture (tractor attachments), and constructions (tools and inventory). Sensors data makes it especially suitable for cold chain refrigerator use cases. The built-in accelerometer can detect item movement, pitch and roll of the device. Magnet detection can be used for wireless open/close detection and notifications such as trailer door events, etc. EYE sensor supports iBeacon and Eddystone protocols. The device is fully compatible with the Teltonika firmware platform which provides extended functionality. Configure, scan, and update anytime anywhere with a dedicated Teltonika mobile app
==<p style="font-size:32px><span style="color:#0054A6">Product Specification</span></p>==
+
==<p style="font-size:32px"><span style="color:#0054A6">Product Specification</span></p>==
 
+
<div class="mw-collapsible mw-collapsed">
 
===<p style="font-size:24px><span style="color:#0054A6">Features</span>===
 
===<p style="font-size:24px><span style="color:#0054A6">Features</span>===
 +
<div class="mw-collapsible-content">
 
{| class="wikitable"
 
{| class="wikitable"
 
|+
 
|+
Line 111: Line 120:
 
| style="width:10%;border: 1px solid white; border-bottom: 2px solid #E8E8E8; text-align: left; vertical-align: center; background: white;" |Yes
 
| style="width:10%;border: 1px solid white; border-bottom: 2px solid #E8E8E8; text-align: left; vertical-align: center; background: white;" |Yes
 
|}
 
|}
 
+
</div>
 +
</div>
 +
<div class="mw-collapsible mw-collapsed">
 
===<p style="font-size:24px><span style="color:#0054A6">Dimensions</span>===
 
===<p style="font-size:24px><span style="color:#0054A6">Dimensions</span>===
 +
<div class="mw-collapsible-content">
 
[[File:Eye dimensions.png]]
 
[[File:Eye dimensions.png]]
 
+
</div>
 +
</div>
 
==<p style="font-size:32px><span style="color:#0054A6">Value-adding Features</span></p>==
 
==<p style="font-size:32px><span style="color:#0054A6">Value-adding Features</span></p>==
 
+
<div class="mw-collapsible mw-collapsed">
 
===<p style="font-size:24px"><span style="color:#0054A6">Hibernate mode</span>===
 
===<p style="font-size:24px"><span style="color:#0054A6">Hibernate mode</span>===
 
+
<div class="mw-collapsible-content">
 
Hibernated mode means that the EYE device is OFF when shipping from the factory, preserving battery life.
 
Hibernated mode means that the EYE device is OFF when shipping from the factory, preserving battery life.
 
PLEASE NOTE that EYE devices are available in two modes: factory-activated (ON) or Hibernated (OFF). You may order the device version which better suits your needs. Order codes are described on [https://teltonika-gps.com/products/accessories/sensors-beacons/eye eye page]
 
PLEASE NOTE that EYE devices are available in two modes: factory-activated (ON) or Hibernated (OFF). You may order the device version which better suits your needs. Order codes are described on [https://teltonika-gps.com/products/accessories/sensors-beacons/eye eye page]
 
+
</div>
====<p style="font-size:24px"><span style="color:#0054A6">Value of hibernate mode</span>====
+
</div>
 
+
<div class="mw-collapsible mw-collapsed">
 +
===<p style="font-size:24px"><span style="color:#0054A6">Value of hibernate mode</span>===
 +
<div class="mw-collapsible-content">
 
Hibernated versions of EYE devices simplify stock management for our partners while maximizing battery life. <br>1. '''Accelerated delivery times:'''
 
Hibernated versions of EYE devices simplify stock management for our partners while maximizing battery life. <br>1. '''Accelerated delivery times:'''
  
Line 131: Line 146:
  
 
In scenarios where projects encounter unforeseen challenges, our hibernated EYE devices offer a buffer. Hibernate feature allows to safeguard your investments and potential revenue streams. This means that even if projects encounter delays or complications, you can still deploy EYE devices with full battery capacity, ensuring optimal performance when the time is right.
 
In scenarios where projects encounter unforeseen challenges, our hibernated EYE devices offer a buffer. Hibernate feature allows to safeguard your investments and potential revenue streams. This means that even if projects encounter delays or complications, you can still deploy EYE devices with full battery capacity, ensuring optimal performance when the time is right.
 
+
</div>
====<p style="font-size:24px"><span style="color:#0054A6">How to activate hibernated eye device?</span>====
+
</div>
 
+
<div class="mw-collapsible mw-collapsed">
 +
===<p style="font-size:24px"><span style="color:#0054A6">How to activate hibernated eye device?</span>===
 +
<div class="mw-collapsible-content">
 
Attach any magnet to sleeping device and wait for LED to blink.
 
Attach any magnet to sleeping device and wait for LED to blink.
 
<br>'''NOTE: ANY MAGNET CAN BE USED'''
 
<br>'''NOTE: ANY MAGNET CAN BE USED'''
 
<br>[[File:520746 Magnet EYE gif v1.6-min.gif|frameless|684x684px]]
 
<br>[[File:520746 Magnet EYE gif v1.6-min.gif|frameless|684x684px]]
 
<br>Now device is discoverable, scannable, connectable via BLE.
 
<br>Now device is discoverable, scannable, connectable via BLE.
 
+
</div>
====<p style="font-size:24px"><span style="color:#0054A6">How to send the device to hibernate mode?</span>====
+
</div>
 
+
<div class="mw-collapsible mw-collapsed">
 +
===<p style="font-size:24px"><span style="color:#0054A6">How to send the device to hibernate mode?</span>===
 +
<div class="mw-collapsible-content">
 
If you want to put the EYE device back to hibernate mode after accidental activation or simply pause its use, you may do that following steps below:
 
If you want to put the EYE device back to hibernate mode after accidental activation or simply pause its use, you may do that following steps below:
 
<br>Step 1. While connected and in overview tap "Send device to sleep":  
 
<br>Step 1. While connected and in overview tap "Send device to sleep":  
Line 146: Line 165:
 
<br>Step 3. Wait for EYE App to disconnect:                             
 
<br>Step 3. Wait for EYE App to disconnect:                             
 
<br>[[File:Device screen 1.2.8 2.jpg|400x400px]][[File:Screenshot 20230509 173323 EYE APP.jpg|400x400px]][[File:Screenshot 20230512 164509 Gallery.jpg|400x400px]]
 
<br>[[File:Device screen 1.2.8 2.jpg|400x400px]][[File:Screenshot 20230509 173323 EYE APP.jpg|400x400px]][[File:Screenshot 20230512 164509 Gallery.jpg|400x400px]]
 
+
</div>
====<p style="font-size:24px"><span style="color:#0054A6">Can All devices hibernate?</span>====
+
</div>
 
+
<div class="mw-collapsible mw-collapsed">
 +
===<p style="font-size:24px"><span style="color:#0054A6">Can All devices hibernate?</span>===
 +
<div class="mw-collapsible-content">
 
1. All EYE Sensors with firmware version starting from 1.2.9.R.8 can hibernate.
 
1. All EYE Sensors with firmware version starting from 1.2.9.R.8 can hibernate.
  
 
2. Only new EYE Beacons bought with order codes that have hardware modification can hibernate standard codes are available in [https://teltonika-gps.com/products/accessories/sensors-beacons/eye eye page], for special order codes consult your sales manager.
 
2. Only new EYE Beacons bought with order codes that have hardware modification can hibernate standard codes are available in [https://teltonika-gps.com/products/accessories/sensors-beacons/eye eye page], for special order codes consult your sales manager.
 
+
</div>
 +
</div>
 
==<p style="font-size:32px><span style="color:#0054A6">Mounting recomendations</span></p>==
 
==<p style="font-size:32px><span style="color:#0054A6">Mounting recomendations</span></p>==
 
[[File:Neweyemouning.png|858x858px]]
 
[[File:Neweyemouning.png|858x858px]]
 
<br>[[File:New mounting recomendations 1.png|848x848px]]
 
<br>[[File:New mounting recomendations 1.png|848x848px]]
 
 
==<p style="font-size:32px><span style="color:#0054A6">EYE App Configuration</span></p>==
 
==<p style="font-size:32px><span style="color:#0054A6">EYE App Configuration</span></p>==
 
Devices work constantly and are ready to perform out of the box. Default basic Sensor settings are set to:
 
Devices work constantly and are ready to perform out of the box. Default basic Sensor settings are set to:
Line 166: Line 187:
 
<br>1) Download and install EYE APP - Teltonika application to change sensor settings.
 
<br>1) Download and install EYE APP - Teltonika application to change sensor settings.
 
<br>[[File:QR.jpg]]
 
<br>[[File:QR.jpg]]
 
+
<div class="mw-collapsible mw-collapsed">
 
===<p style="font-size:24px><span style="color:#0054A6">Eye App Overview</span>===
 
===<p style="font-size:24px><span style="color:#0054A6">Eye App Overview</span>===
 +
<div class="mw-collapsible-content">
 
'''With the application you will be able to scan for visible Teltonika EYE devices, check their statuses or connect for configuration or firmware update.'''
 
'''With the application you will be able to scan for visible Teltonika EYE devices, check their statuses or connect for configuration or firmware update.'''
 
<br>
 
<br>
Line 231: Line 253:
 
|}
 
|}
 
<br>
 
<br>
 
+
</div>
 +
</div>
 
==<p style="font-size:32px"><span style="color:#0054A6">FM Tracker Configuration</span></p>==
 
==<p style="font-size:32px"><span style="color:#0054A6">FM Tracker Configuration</span></p>==
 
+
<div class="mw-collapsible mw-collapsed">
 
===<p style="font-size:24px"><span style="color:#0054A6">Teltonika configurator (Base firmware / advanced mode)</span>===
 
===<p style="font-size:24px"><span style="color:#0054A6">Teltonika configurator (Base firmware / advanced mode)</span>===
 +
<div class="mw-collapsible-content">
 
If you have firmware / configurator which does not support EYE sensor tab in Bluetooth® 4.0 section, then you can still use Avanced BLE configuration to connect with EYE Sensors.
 
If you have firmware / configurator which does not support EYE sensor tab in Bluetooth® 4.0 section, then you can still use Avanced BLE configuration to connect with EYE Sensors.
  
Line 677: Line 701:
 
         <td style="width: 25%; text-align:center; vertical-align:middle;">Custom IO element for BLE sensor</td>
 
         <td style="width: 25%; text-align:center; vertical-align:middle;">Custom IO element for BLE sensor</td>
 
     </tr></table>
 
     </tr></table>
 
+
</div>
 +
</div>
 +
<div class="mw-collapsible mw-collapsed">
 
===<p style="font-size:24px"><span style="color:#0054A6">Teltonika configurator new functionalities (Evaluation firmware / EYE Sensor filtering by name)</span>===
 
===<p style="font-size:24px"><span style="color:#0054A6">Teltonika configurator new functionalities (Evaluation firmware / EYE Sensor filtering by name)</span>===
 +
<div class="mw-collapsible-content">
 
Starting with firmware <b>03.28.04.Rev.207</b> there is additional tabs available in Bluetooth® 4.0 section that allow for easier configuration to connect FM and EYE sensor or beacon.
 
Starting with firmware <b>03.28.04.Rev.207</b> there is additional tabs available in Bluetooth® 4.0 section that allow for easier configuration to connect FM and EYE sensor or beacon.
  
Line 1,389: Line 1,416:
  
  
'''Note:''' If you are using presets(firmware/configurator without EYE product support), then refer to [[FMB130 Teltonika Data Sending Parameters ID#BLE%20Sensors%20I.2FO%20elements|BLE Sensors I/O elements]] table instead.<p style="font-size:32px"><span style="color:#0054A6">EYE Sensor Protocol overview</span></p>
+
'''Note:''' If you are using presets(firmware/configurator without EYE product support), then refer to [[FMB130 Teltonika Data Sending Parameters ID#BLE%20Sensors%20I.2FO%20elements|BLE Sensors I/O elements]] table instead.
 +
</div>
 +
</div>
 +
==<p style="font-size:32px"><span style="color:#0054A6">New EYE Features (Proximity and Lost & Found)</span></p>==
 +
<div class="mw-collapsible mw-collapsed">
 +
===<p style="font-size:24px><span style="color:#0054A6">Proximity</span>===
 +
<div class="mw-collapsible-content">
 +
[[File:Eye_Beacon_Proximity_Events.png|alt=|right|frameless]]
 +
EYE beacon Proximity events is a functionality which creates three different types of records, depending on the captured Beacons RSSI level. This functionality is only supported with Teltonika EYE beacons.
 +
Proximity events consist of near, away and lost events:
 +
 
 +
* When EYE beacon RSSI level is below the first configured threshold, the beacon will be added to Near Beacon Record '''(AVL ID: 10828)'''
 +
* When EYE BEACON RSSI level is between the second and first configured threshold, beacon is added to Away Beacon record '''(AVL ID: 10829)'''
 +
* When EYE Beacon RSSI level is lower than the second configured threshold, beacon is added to Lost Beacon record '''(AVL ID: 10831)'''. In the case of EYE Beacon disappearing from the environment and not being detected by the FM tracker anymore, the beacon will be added to Lost Beacon record and will be removed from Beacon list.
 +
'''Event modes'''
  
==<p style="font-size:24px><span style="color:#0054A6">Sensor advertising</span>==
+
* Disabled – Record generating is disabled for the selected range
<br>
+
* Periodic – Records will be periodically generated for the selected range, according to the configured record period on move or on stop value.
[[File:Sensors data.png|center]]
+
* On Change – Records will be generated as soon as the Eye Beacon number changes for the selected range.
<br>
 
===<p style="font-size:24px><span style="color:#0054A6">Beacon and sensors data</span>===
 
[[File:Beacon and sensors data.png|center|1000x1000px|alt=|frameless]]
 
<br>
 
<br>
 
  
===<p style="font-size:24px><span style="color:#0054A6">Protocol description</span>===
+
'''Averaging Timeout'''
At the highest-level Bluetooth® LE advertising packet consists of Advertising Indication and Scan Response. Both packets can be maximum of 31 bytes in size. Advertising Indication packet is always broadcasted when Scan Response is broadcasted only if Observer device requests it by using Active Scan.
 
<br><br>
 
BTSMP1 uses Advertising Indication to send beacon data which can be configured to select between iBeacon and Eddystone protocols or to be disabled at all. In that case, data which is shown as Scan Response in protocol overview will be sent as Advertising Indication without Scan Response following it.
 
<br><br>
 
Scan Response is used to send device name and manufacturer specific data. Manufacturer specific data includes Teltonika Company ID (0x089A) and protocol version (0x01). It is followed by Flag Encoded Data (Table 1) and Extended Data (Table 2). Later on, protocol will be highly configurable in and will allow to disable/enable sending of device name or any sensor value allowing to reduce size of the packet being sent.
 
<br><br>
 
  
Teltonika BTSX devices are transmitting one or two packets depending on the selected protocol. Broadcast packet + Scan response packet.
+
This parameter specifies how long it will take current RSSI value to reach new RSSI value. For example, current EYE Beacon RSSI value is -40 dBm. FMB captures same EYE Beacon with RSSI value of -60 dBm. If averaging timeout is configured to be 10 seconds, it will take 10 seconds for RSSI value to reach -60 dBm from -40 dBm. Keep in mind that this is assuming perfect conditions and subsequent EYE Beacon RSSI.
 +
</div>
 +
</div>
 +
<div class="mw-collapsible mw-collapsed">
 +
===<p style="font-size:24px><span style="color:#0054A6">Lost & Found</span>===
 +
<div class="mw-collapsible-content">
 +
[[File:Lost & found.png|right|frameless]]
 +
Purpose of this functionality is to '''periodically''' generate records with all EYE Beacon list (AVL ID: 10828) and create eventual '''On Change''' records only when EYE Beacon is lost (AVL ID: 10831) or found (AVL ID: 10829).
  
A scan response packet is sent when an active scan is used, within the BLE layer of communication.
+
Lost and Found Beacon records only include EYE Beacon which was lost or found, not the full Beacon list.
The default for our FM devices and many other applications for example our EYE Appication or nRF connect Application is an active scan.
 
 
There are three protocols, with the following packets:
 
  
'''1.iBeacon + EYE Sensors'''
+
* If multiple EYE Beacons were found or lost at the same time, multiple will be included into the record.
 +
* If Visible Beacon List is enabled, Beacon records containing the list of visible beacons will be generated according to the configured period parameters ''Record Period on Move'' and ''Record Period on Stop''
  
'''2.Eddystone + EYE Sensors'''
+
Advanced Beacon protocol is being used to send Lost & Found records.
  
For '''iBeacon + EYE Sensors''' and '''Eddystone + EYE Sensors''' protocols only iBeacon/Eddystone packet is broadcasted and will be seen by both active and passive scans, to see the EYE Sensors packet you need to use an active scan.
+
Note:Same AVL ID’s as for Proximity events are being used, since two features cannot work at the same time.
In other words in an environment where no BLE devices are scanning with an active scan or in case when there are no scanning devices at all, only the iBeacon/Eddystone packet will be sent by the BTS device to conserve energy.
 
  
'''3. EYE Sensors'''
+
* '''AVL ID: 10828''' Visible Beacon List (periodic)
 +
* '''AVL ID: 10829''' Found Beacon List (On Change)
 +
* '''AVL ID: 10831''' Lost Eye Beacon List (On Change)
 +
</div>
 +
</div>
 +
==<p style="font-size:32px"><span style="color:#0054A6">Data Parsing</span></p>==
 +
<div class="mw-collapsible mw-collapsed">
 +
===<p style="font-size:24px><span style="color:#0054A6">Parsing for Base Functionality (Advanced Mode)</span>===
 +
<div class="mw-collapsible-content">
 +
{| class="nd-othertables_2" style="width:100%;"
 +
|+
 +
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" | Unparsed data
 +
|-
 +
| style="vertical-align: middle; text-align: center;" | Received data in hexadecimal stream: <code>00000000000000488E010000017CA6B6BFD8010F0E5188209AB482008600A80F0000000</code><br><code>00006000000020019090400560024000301CF0000001601D00000FF4D01D10000006D00000001014B0001B6010000CF7D</code>
 +
|}
  
With '''EYE Sensors''' protocol, the EYE Sensor packet becomes broadcast.
+
{| class="nd-othertables_2" style="width:100%;"
In other words, in an environment where no BLE devices are scanning with an active scan or in case when there are no scanning devices at all EYE Sensors packet will be sent by the BTS device.
+
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |AVL Data Packet
 
 
More Information on
 
[https://support.digitalmatter.com/support/solutions/articles/16000100684-active-vs-passive-bluetooth-scanning| Active vs passive scans]
 
<br>
 
<br>
 
Device Name has the following default value for Beacon – ID1_XXXXXXX
 
<br>
 
<div style="display:inline-table">
 
{| class="nd-othertables_2" style="width:125%;" ;
 
|+'''Table 1. Flag Encoded Date'''
 
 
|-
 
|-
!Data!! Size (Bytes)!!Description
+
! colspan="2" rowspan="1" style="width:60%; vertical-align: middle; text-align: center;" | AVL Data Packet Part
 +
! rowspan="1" style="width:40%; vertical-align: middle; text-align: center;" |HEX Code Part
 
|-
 
|-
|Flags||1||Each set bit (0-7) means the presence of value (0-7). Bits:
+
| rowspan="4" style="vertical-align: middle; text-align: center;" |
<br>0 – Temperature value presence
+
| style="vertical-align: middle; text-align: center;" |Zero Bytes
<br>1 – Humidity value presence
+
| style="vertical-align: middle; text-align: center;" | 00 00 00 00
<br>2 – Magnetic sensor presence
+
|-
<br>3 – Magnetic sensor state (1 magnetic field is detected/0 magnetic field is not detected) Valid value is present only if bit 2 flag is set.
+
| style="vertical-align: middle; text-align: center;" |Data Field Length
<br>4 – Movement sensor counter
+
| style="vertical-align: middle; text-align: center;" |00 00 00 48
<br>5 – Movement sensor angle
 
<br>6 – Low Battery indication (if set to 1 low battery voltage detected)
 
<br>7 – Battery voltage value presence
 
 
|-
 
|-
|Value 0||2||Temperature
+
| style="vertical-align: middle; text-align: center;" |Codec ID
<br>Value in Celsius / 100
+
| style="vertical-align: middle; text-align: center;" |8E (Codec8 Extended)
<br>NOTE: present only if bit 0 is set, otherwise is not being sent
 
 
|-
 
|-
|Value 1 ||1||Humidity
+
| style="vertical-align: middle; text-align: center;" |Number of Data 1 (Number of Total Records)
<br>Value in percent
+
| style="vertical-align: middle; text-align: center;" |01
<br>NOTE: present only if bit 1 is set, otherwise is not being sent
 
 
|-
 
|-
|Value 2||2||Movement Sensor counter
+
| rowspan="34" style="vertical-align: middle; text-align: center;" |AVL Data
<br>Most significant bit indicates movement state and 15 least significant bits represent count of movement events.
+
| style="vertical-align: middle; text-align: center;" |Timestamp
<br>NOTE: present only if bit 4 is set, otherwise is not being sent
+
| style="vertical-align: middle; text-align: center;" |00 00 01 7C A6 B6 BF D8 (GMT: Friday, 22 October 2021 06:36:07)
 
|-
 
|-
|Value 3 ||3||Movement sensor angle
+
| style="vertical-align: middle; text-align: center;" | Priority
<br>Most significant byte – pitch (-90/+90)
+
| style="vertical-align: middle; text-align: center;" |01
<br>Two least significant bytes – roll (-180/+180)
 
<br>NOTE: present only if bit 5 is set, otherwise is not being sent
 
 
|-
 
|-
|Value 4||1|| Battery Voltage
+
| style="vertical-align: middle; text-align: center;" |Longitude
<br>Battery voltage in mV = 2000 + VALUE * 10
+
| style="vertical-align: middle; text-align: center;" |0F 0E 51 88
<br>NOTE: present only if bit 7 is set, otherwise is not being sent
 
|}
 
</div>
 
 
 
===<p style="font-size:24px><span style="color:#0054A6">GATT Characteristics</span>===
 
 
 
{| class="wikitable" style="width: 100%; background-color: white; border-bottom: 2px solid #0054A6;"
 
 
 
 
|-
 
|-
 
+
| style="vertical-align: middle; text-align: center;" |Latitude
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6; width: 20px;" | Name
+
| style="vertical-align: middle; text-align: center;" |20 9A B4 82
 
 
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6; width: 280px;" | Service UUID
 
 
 
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6; width: 280px;" | Characteristic UUID
 
 
 
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6;" | Data Type
 
 
 
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6;" | Min
 
 
 
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6;" | Max
 
 
 
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6; width: 120px" | Default Value
 
 
 
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6;" | Notes
 
 
 
 
|-
 
|-
 
+
| style="vertical-align: middle; text-align: center;" |Altitude
| Device Name || e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0016-7df2-4d4e-8e6d-c611745b92e9  || ASCII || 0 || 12 || Unique for each device || -
+
| style="vertical-align: middle; text-align: center;" |00 86
 
 
 
|-
 
|-
 
+
| style="vertical-align: middle; text-align: center;" | Angle
| Tx Power Lever || 1804 || 2a07 || SINT8 || -14 || 8 || 2 || Possible values: -14, -11, -8, -5, -2, 2, 4, 8
+
| style="vertical-align: middle; text-align: center;" |00 0A
 
+
|-
 +
| style="vertical-align: middle; text-align: center;" |Satellites
 +
| style="vertical-align: middle; text-align: center;" |0E
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Speed
 +
| style="vertical-align: middle; text-align: center;" |00 00
 
|-
 
|-
 
+
| style="vertical-align: middle; text-align: center;" |Event IO ID
| Protocol Type|| e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0001-7df2-4d4e-8e6d-c611745b92e9 || UINT8 || 0 || 4*
+
| style="vertical-align: middle; text-align: center;" |00 00
 
 
 
 
<small>*Max 2 with 01.02.10+ firmware</small>
 
| 1 for EYE_Beacon, <br>4 for EYE_Sensor*
 
 
 
 
 
<small>*with 01.02.10+ firmware 1 for both EYE_Beacon & EYE_Sensor</small>
 
| 0 - iBeacon <br>1 - Eddystone <br>2 - EYE Sensor <br>3 - iBeacon + EYE Sensor* <br>4 - Eddystone + EYE Sensor*
 
 
 
 
 
<small>*01.02.10+ sensors are enabled over ''Activate / Deactivate Sensors''</small>
 
 
|-
 
|-
|Activate / Deactivate Sensors*
+
| style="vertical-align: middle; text-align: center;" |N of Total ID
 
+
| style="vertical-align: middle; text-align: center;" |00 06
 
 
<small>*from 01.02.10+ firmware</small>
 
|e61c0000-7df2-4d4e-8e6d-c611745b92e9
 
|e61c0021-7df2-4d4e-8e6d-c611745b92e9
 
|UINT8
 
|0
 
|15
 
 
 
(0b1111)
 
|4 (0b0100) for EYE_Beacon, <br>15 (0b1111) for EYE_Sensor
 
|(LSb) bit 0 – Temperature
 
 
 
Bit 1 – Humidity
 
 
 
Bit 2 – Magnetic
 
 
 
Bit 3 - Movement
 
 
 
 
 
E.g. EYE_Sensor disabled movement & enabled temperature, humidity, magnetic sensors 7 (0b0111)
 
 
|-
 
|-
 
+
| style="vertical-align: middle; text-align: center;" |N1 of One Byte IO
| Advertising Interval|| e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0002-7df2-4d4e-8e6d-c611745b92e9 || UINT16 || 1000 || 10000 || 5000 || miliseconds
+
| style="vertical-align: middle; text-align: center;" |00 00
 
 
 
|-
 
|-
 
+
| style="vertical-align: middle; text-align: center;" |N2 of Two Bytes IO
| Sub Advertising Interval || e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0003-7df2-4d4e-8e6d-c611745b92e9 || UINT16 || 20 || 1000 || 100 || Used by repeats, miliseconds
+
| style="vertical-align: middle; text-align: center;" |00 02
 
 
 
|-
 
|-
 
+
| style="vertical-align: middle; text-align: center;" |ID
| Advertising Repeats || e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0004-7df2-4d4e-8e6d-c611745b92e9 || UINT16 || 1 || 10 || 1 || Repeats work only if Advertising Interval is more than 2000 ms and Repeats set to more than 1
+
| style="vertical-align: middle; text-align: center;" |00 19 (25 = BLE Temperature #1)
 
 
 
|-
 
|-
 
+
| style="vertical-align: middle; text-align: center;" |Value
| iBeacon ID || e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0005-7df2-4d4e-8e6d-c611745b92e9 || BYTE ARRAY || 20 bytes || 20 bytes || Unique for each device || 16 B - UUID<br>2 B - major<br>2 B - minor
+
| style="vertical-align: middle; text-align: center;" |09 04 (2308=23.08°C)
 
 
 
|-
 
|-
 
+
| style="vertical-align: middle; text-align: center;" |ID
| Eddystone ID || e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0006-7df2-4d4e-8e6d-c611745b92e9 || BYTE ARRAY || 16 bytes || 16 bytes || Unique for each device || 10 B - Namespace<br>6 B - Instance
+
| style="vertical-align: middle; text-align: center;" |00 56 (86 = BLE Humidity #1)
 
|-
 
|-
|Command
+
| style="vertical-align: middle; text-align: center;" | Value
|e61c0000-7df2-4d4e-8e6d-c611745b92e9
+
| style="vertical-align: middle; text-align: center;" | 00 36 (24 %RHT)
|e61c0007-7df2-4d4e-8e6d-c611745b92e9
 
| colspan="5" |[[EYE SENSOR / BTSMP1#Command characteristic|Command characteristic]]
 
 
|-
 
|-
 
+
| style="vertical-align: middle; text-align: center;" | N4 of Four Bytes IO
|Password||e61c0000-7df2-4d4e-8e6d-c611745b92e9|| e61c0008-7df2-4d4e-8e6d-c611745b92e9 ||BYTE ARRAY|| 6 bytes||6 bytes||123456||Always 6 Digits
+
| style="vertical-align: middle; text-align: center;" |00 03
 
 
 
|-
 
|-
 
+
| style="vertical-align: middle; text-align: center;" |ID
|Sensor Interval||e61c0000-7df2-4d4e-8e6d-c611745b92e9|| e61c0009-7df2-4d4e-8e6d-c611745b92e9||UINT16||0||10000||1000||miliseconds
+
| style="vertical-align: middle; text-align: center;" |01 CF (463 - BLE 1 Custom #2 = Movement status and movement events count)
 
 
 
|-
 
|-
 
+
| style="vertical-align: middle; text-align: center;" |Value
|Event Interval||e61c0000-7df2-4d4e-8e6d-c611745b92e9|| e61c000a-7df2-4d4e-8e6d-c611745b92e9||UINT16||0||10000||1000 || miliseconds
+
| style="vertical-align: middle; text-align: center;" |00 00 00 16 (Currently not moving events count 22)
 
 
 
|-
 
|-
 
+
| style="vertical-align: middle; text-align: center;" |ID
|Event Duration||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c000b-7df2-4d4e-8e6d-c611745b92e9||UINT8||0||30 ||30||seconds
+
| style="vertical-align: middle; text-align: center;" |01 D0 (464 - BLE 1 Custom #3 = Angle )
 
+
|-
 +
| style="vertical-align: middle; text-align: center;" |Value
 +
| style="vertical-align: middle; text-align: center;" |00 00 FF 4D (Pitch = 0°, Roll = -179°)
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |ID
 +
| style="vertical-align: middle; text-align: center;" |01 D1 (465 - BLE 1 Custom #4 = Battery Voltage)
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Value
 +
| style="vertical-align: middle; text-align: center;" |00 00 00 6D (109 = 2000 + 109 * 10 mV = 3090 mV)
 
|-
 
|-
  
| Temperature Event||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c000c-7df2-4d4e-8e6d-c611745b92e9||UINT8 ||0||2|| 2||0 - on entrance<br>1 - on exit<br>2 - no event
+
| style="vertical-align: middle; text-align: center;" |N8 of Eight Bytes IO
 
+
| style="vertical-align: middle; text-align: center;" |00 00
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |NX of X Bytes IO
 +
| style="vertical-align: middle; text-align: center;" |00 01
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |N’th IO ID - AVL ID.
 +
| style="vertical-align: middle; text-align: center;" |01 4B (331 - BLE 1 Custom #1 = Flags)
 
|-
 
|-
 
+
| style="vertical-align: middle; text-align: center;" |Length of Variable Length IO
|Temperature Low||e61c0000-7df2-4d4e-8e6d-c611745b92e9 ||e61c000d-7df2-4d4e-8e6d-c611745b92e9||INT8||-40|| 85||-20||celsius
+
| style="vertical-align: middle; text-align: center;" |00 01
 
 
 
|-
 
|-
 +
| style="vertical-align: middle; text-align: center;" | Value of Variable Length IO
 +
| style="vertical-align: middle; text-align: center;" |B7 = (MSB)<span style="background:#B284BE">1</span>1011 011<span style="background:#00FFFF">1</span>(LSB)
 +
It's parsed from least significant byte(LSB):
  
|Temperature High|| e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c000e-7df2-4d4e-8e6d-c611745b92e9||INT8||-40||85 ||50||celsius
 
  
|-
+
Bit 0 – Temperature value presence.
  
| Humidity Event||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c000f-7df2-4d4e-8e6d-c611745b92e9||UINT8||0||2||2||0 - on entrance<br>1 - on exit<br>2 - no event
+
<span style="background:#00FFFF">1</span> Means device is reading and transmitting temperature value.
  
|-
 
  
|Humidity Low||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c0010-7df2-4d4e-8e6d-c611745b92e9 || UINT8||0||100||15||%
+
Bit 1 – Humidity value presence.
  
|-
+
1 Means device is reading and transmitting humidity value.
  
|Humidity High ||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c0011-7df2-4d4e-8e6d-c611745b92e9||UINT8||0||100||50||%
 
  
|-
+
Bit 2 – Magnetic sensor presence.
 +
 
 +
1 Means device is reading and transmitting Magnetic sensor value.
 +
 
 +
 
 +
Bit 3 – Magnetic sensor state
 +
 
 +
1 magnetic field is detected/0 magnetic field is not detected) Valid value is present only if bit 2 flag is set.
 +
 
  
|Movement Event||e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0012-7df2-4d4e-8e6d-c611745b92e9||UINT8||0||2||2||0 - on entrance<br>1 - on exit<br>2 - no event
+
Bit 4 – Movement sensor counter.
  
|-
+
1 Means device is reading and transmitting movement state and count values.
  
|Movement Start ||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c0013-7df2-4d4e-8e6d-c611745b92e9|| UINT16||0||300||5||seconds
 
  
|-
+
Bit 5 – Movement sensor angle.
  
|Movement Stop||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c0014-7df2-4d4e-8e6d-c611745b92e9|| UINT16||0||300||5 ||seconds
+
1 Means device is reading and transmitting angle roll and pitch values.
  
|-
 
  
|Magnetic Event||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c0015-7df2-4d4e-8e6d-c611745b92e9||UINT8||0||2|| 2||0 - on entrance <br> 1 - on exit <br> 2 - no event
+
Bit 6 – Low Battery indication.
|-
+
 
| Password Counter
+
0 – Means device battery is from 100 to 15 % (When value changes to 1 Battery level is lower than 15 %.
|e61c0000-7df2-4d4e-8e6d-c611745b92e9
 
| e61c0019-7df2-4d4e-8e6d-c611745b92e9
 
|UINT8
 
|0 (counter)
 
|10 (counter)
 
| 0
 
|Byte 0 – counter,
 
  
Byte 1 and 2 - timeout
 
|-
 
|Master Password (PUK)
 
|e61c0000-7df2-4d4e-8e6d-c611745b92e9
 
|e61c0020-7df2-4d4e-8e6d-c611745b92e9
 
| UINT8
 
|8 bytes
 
|8 bytes
 
|MAC address dependency
 
|Byte array
 
|-
 
|Manufacturer sleep (Hibernate mode)
 
|e61c0000-7df2-4d4e-8e6d-c611745b92e9
 
|e61c0018-7df2-4d4e-8e6d-c611745b92e9
 
|UINT8
 
|0
 
|1
 
|1
 
|0 – sleep disabled,
 
  
1 sleep enabled
+
7 Battery voltage value presence.
|-
 
|User ADV Spam Duration
 
|e61c0000-7df2-4d4e-8e6d-c611745b92e9
 
|e61c0022-7df2-4d4e-8e6d-c611745b92e9
 
|UINT16
 
|1
 
|300
 
|30
 
|WakeUp Advertising
 
  
Spam Duration in seconds
+
<span style="background:#B284BE">1</span> Means device is reading and transmitting battery voltage value.
 
|-
 
|-
|RSSI Calibration Value
+
| style="vertical-align: middle; text-align: center;" |Number of Data 2 (Number of Total Records)
|e61c0000-7df2-4d4e-8e6d-c611745b92e9
+
| style="vertical-align: middle; text-align: center;" |01
|e61c0023-7df2-4d4e-8e6d-c611745b92e9
 
|INT8
 
|<nowiki>-100</nowiki>
 
|127
 
| 127
 
|RSSI value in dBm
 
 
 
127  – Use default calib. table
 
 
|-
 
|-
 
+
| style="vertical-align: middle; text-align: center;" |CRC-16
|Manufacturer||180A||2A29||BYTE ARRAY||-||-||Not Configurable ||Read Only. Ex. "Teltonika"
+
| style="vertical-align: middle; text-align: center;" |00 00 CF 7D
 
 
 
|-
 
|-
 
+
|}
| Model|| 180A||2A24|| BYTE ARRAY|| -||-|| Not Configurable||Read Only. Ex. "BTSID1"
+
</div>
 
+
</div>
 +
<div class="mw-collapsible mw-collapsed">
 +
===<p style="font-size:24px><span style="color:#0054A6">Parsing for Proximity Feature</span>===
 +
<div class="mw-collapsible-content">
 +
{| class="nd-othertables_2" style="width:100%;"
 +
|+
 +
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |PROXIMITY FEATURE
 
|-
 
|-
 +
| style="vertical-align: middle; text-align: center;" |Received data in hexadecimal stream:
 +
00000000000000BD8E03
 +
<br>0000018D1468C11B00E42CC908F1F475CC000000000300002A4C0001000000000000000000012A4C001401120001E50F067CD9F401EF770D01000E020BFE
 +
<br>0000018D1468C12500E42CC908F1F475CC000000000300002A4D0001000000000000000000012A4D001401120001C80F067CD9F40255BE0D01000E020BF4
 +
<br>0000018D1468C12F00E42CC908F1F475CC000000000300002A4F0001000000000000000000012A4F001401120001B90F067CD9F4004B490D01000E020BFE
 +
<br>03000086BA
 +
|}
  
|Serial||180A||2A25 ||BYTE ARRAY||-||-||Not Configurable ||Not used
+
{| class="nd-othertables_2" style="width:100%;"
 
+
|+
 +
! colspan="4" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |AVL Data Packet
 
|-
 
|-
 
+
! colspan="2" rowspan="1" style="width:50%; vertical-align: middle; text-align: center;" |AVL Data Packet Part
| Hardware||180A|| 2A27 ||BYTE ARRAY||-||-||Not Configurable||Read Only. Ex. "Table:1 Volt:325
+
! rowspan="1" style="width:30%; vertical-align: middle; text-align: center;" |HEX Code Part
 
+
! rowspan="1" style="width:20%; vertical-align: middle; text-align: center;" |Decoded
 
|-
 
|-
 
+
|
|Firmware|| 180A ||2A26||BYTE ARRAY||-||-||Not Configurable||Read Only. Ex. "1.1.0-beta"
+
| style="vertical-align: middle; text-align: center;" |Zero Bytes
 
+
| style="vertical-align: middle; text-align: center;" |00 00 00 00
 +
|
 
|-
 
|-
 
+
|
| System ID ||180A||2A23||BYTE ARRAY||-||-|| Not Configurable||Not used
+
| style="vertical-align: middle; text-align: center;" |Data Field Length
 
+
| style="vertical-align: middle; text-align: center;" |00 00 00 BD
 +
| style="vertical-align: middle; text-align: center;" |189 bytes
 
|-
 
|-
 
+
|
|MAC||180A||652143dc-dec6-4fb1-bd46-3e919d2410a6 || BYTE ARRAY||6||6||Not Configurable||Read Only. ex. 112233445566 -> 11:22:33:44:55:66
+
| style="vertical-align: middle; text-align: center;" |Codec ID
 
+
| style="vertical-align: middle; text-align: center;" |8E
 +
| style="vertical-align: middle; text-align: center;" |Codec8 Extended
 
|-
 
|-
 
+
|
|Scan Response Data ||e61c0000-7df3-4d4e-8e6d-c611745b92e9|| e61c0001-7df3-4d4e-8e6d-c611745b92e9||BYTE ARRAY||17 || 17||Not Configurable ||Scan Response Data, see picture for detail view of data structure
+
| style="vertical-align: middle; text-align: center;" |Number of Data 1 (Number of Total Records)
 
+
| style="vertical-align: middle; text-align: center;" |03
|}
+
| style="vertical-align: middle; text-align: center;" |3
 
 
[[File:Lentele0603.png|800px|frameless|center]]
 
===Command characteristic===
 
{| class="wikitable" style="width: 100%; background-color: white; border-bottom: 2px solid #0054A6;"
 
 
|-
 
|-
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6; width: 20px;" |Command's name
+
| rowspan="18" style="vertical-align: middle; text-align: center;" |AVL DATA
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6; width: 280px;" |Data to send
+
| style="vertical-align: middle; text-align: center;" |Timestamp
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6; width: 280px;" |Description
+
| style="vertical-align: middle; text-align: center;" |00 00 01 8D 14 68 C1 1B
 +
| style="vertical-align: middle; text-align: center;" |2024/01/16 - 22:33:46.001
 
|-
 
|-
|Write to flash||0x0010|| Writes set parameters to flash
+
| style="vertical-align: middle; text-align: center;" |Priority
 +
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |HIGH
 
|-
 
|-
|General boot||0x0011||Enter boot mode
+
| style="vertical-align: middle; text-align: center;" |Longitude
 +
| style="vertical-align: middle; text-align: center;" |E4 2C C9 08
 +
| style="vertical-align: middle; text-align: center;" | -466827000
 
|-
 
|-
|Instant reset||0x0012||Software reset
+
| style="vertical-align: middle; text-align: center;" |Latitude
 +
| style="vertical-align: middle; text-align: center;" |F1 F4 75 CC
 +
| style="vertical-align: middle; text-align: center;" | -235637300
 
|-
 
|-
|Reset after connection||0x0013||Reset after disconnect
+
| style="vertical-align: middle; text-align: center;" |Altitude
 +
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Angle
 +
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
|Get hw voltage||0x0014||Sets detected hw voltage in response data
+
| style="vertical-align: middle; text-align: center;" |Satellites
 +
| style="vertical-align: middle; text-align: center;" |03
 +
| style="vertical-align: middle; text-align: center;" |3
 
|-
 
|-
|Keep connection alive||0x0015|| Resets disconnect timer
+
| style="vertical-align: middle; text-align: center;" |Speed
 +
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
|Restore defaults||0x0016||Sets all configurable parameters to default values
+
| style="vertical-align: middle; text-align: center;" |Event IO ID
|}
+
| style="vertical-align: middle; text-align: center;" |2A 4C
 
+
| style="vertical-align: middle; text-align: center;" |10828
===<p style="font-size:24px"><span style="color:#0054A6">EYE Sensor Bluetooth® frame parsing example</span>===
 
 
 
{| class="nd-othertables_2" style="width:100%;"
 
|+
 
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |Unparsed data
 
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |<span style="background:#0048BA">02</span><span style="background:#B0BF1A">01</span><span style="background:#7CB9E8">06</span><span style="background:#C0E8D5">1A</span><span style="background:#B284BE">FF</span><span style="background:#72A0C1">4C00</span><span style="background:#EDEAE0">0215</span><span style="background:#C46210">FFFFFFFF0B8C404510C655AAB636EBEF</span><span style="background:#EFDECD">BB70</span><span style="background:#E52B50">0055</span><span style="background:#FFF600">02</span><span style="background:#03C03C">0C</span><span style="background:#FF3800">09</span><span style="background:#FFBF00">4D50315F31323334353637</span><span style="background:#FF7E00">0E</span><span style="background:#3DDC84">FF</span><span style="background:#008000">9A08</span><span style="background:#00FFFF">01</span><span style="background:#D0FF14">B7</span><span style="background:#00FF00">08B4</span><span style="background:#007FFF">12</span><span style="background:#F4C2C2">0CCB</span><span style="background:#BFFF00">0BFFC7</span><span style="background:#00BFFF">67</span>
+
| style="vertical-align: middle; text-align: center;" | N of Total ID
|}
+
| style="vertical-align: middle; text-align: center;" |00 01
<br>
+
| style="vertical-align: middle; text-align: center;" |1
{| class="nd-othertables_2" style="width:100%;"
 
|+
 
! colspan="4" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |Parsed data
 
 
|-
 
|-
! colspan="2" rowspan="1" style="width:33%; vertical-align: middle; text-align: center;" |Parameter
+
| style="vertical-align: middle; text-align: center;" |N1 of One Byte IO
! rowspan="1" style="width:33%; vertical-align: middle; text-align: center;" |HEX Code Part
+
| style="vertical-align: middle; text-align: center;" |00 00
! rowspan="1" style="width:33%; vertical-align: middle; text-align: center;" |Actual Value
+
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| rowspan="50" style="vertical-align: middle; text-align: center;" |
+
| style="vertical-align: middle; text-align: center;" |N2 of Two Bytes IO
| style="vertical-align: middle; text-align: center;" |Length
+
| style="vertical-align: middle; text-align: center;" |00 00
| style="vertical-align: middle; text-align: center;" |<span style="background:#0048BA">02</span>
+
| style="vertical-align: middle; text-align: center;" |0
|
+
|-
 +
| style="vertical-align: middle; text-align: center;" |N4 of Four Bytes IO
 +
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
  
| style="vertical-align: middle; text-align: center;" |Type
+
| style="vertical-align: middle; text-align: center;" |N8 of Eight Bytes IO
| style="vertical-align: middle; text-align: center;" |<span style="background:#B0BF1A">01</span>
+
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" | Flags
+
| style="vertical-align: middle; text-align: center;" |NX of X Bytes IO
| style="vertical-align: middle; text-align: center;" |<span style="background:#7CB9E8">06</span>
+
| style="vertical-align: middle; text-align: center;" |00 01
 +
| style="vertical-align: middle; text-align: center;" |1
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" | Length
+
| style="vertical-align: middle; text-align: center;" |N’th IO ID - AVL ID.
| style="vertical-align: middle; text-align: center;" |<span style="background:#C0E8D5">1A</span>
+
| style="vertical-align: middle; text-align: center;" |2A 4C
 +
| style="vertical-align: middle; text-align: center;" |10828
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Type
+
| style="vertical-align: middle; text-align: center;" |Length of Variable Length IO
| style="vertical-align: middle; text-align: center;" |<span style="background:#B284BE">FF</span>
+
| style="vertical-align: middle; text-align: center;" |00 14
 +
| style="vertical-align: middle; text-align: center;" |20
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Apple company identifier (big endian)
+
| style="vertical-align: middle; text-align: center;" |Value of Variable Length IO
| style="vertical-align: middle; text-align: center;" |<span style="background:#72A0C1">4C00</span>
+
| style="vertical-align: middle; text-align: center;" |01 12 00 01 E5 0F 06 7C D9 F4 01 EF 77 0D 01 00 0E 02 0B FE
 +
| style="vertical-align: middle; text-align: center;" |
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Beacon type
+
| rowspan="18" style="vertical-align: middle; text-align: center;" |AVL DATA
| style="vertical-align: middle; text-align: center;" |<span style="background:#EDEAE0">0215</span>
+
| style="vertical-align: middle; text-align: center;" |Timestamp
 +
| style="vertical-align: middle; text-align: center;" |00 00 01 8D 14 68 C1 25
 +
| style="vertical-align: middle; text-align: center;" |2024/01/16 - 22:33:46.001
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |UUID
+
| style="vertical-align: middle; text-align: center;" |Priority
| style="vertical-align: middle; text-align: center;" |<span style="background:#C46210">FFFFFFFF0B8C404510C655AAB636EBEF</span>
+
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" | Major
+
| style="vertical-align: middle; text-align: center;" |Longitude
| style="vertical-align: middle; text-align: center;" |<span style="background:#EFDECD">BB70</span>
+
| style="vertical-align: middle; text-align: center;" |E4 2C C9 08
 +
| style="vertical-align: middle; text-align: center;" | -466827000
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Minor
+
| style="vertical-align: middle; text-align: center;" |Latitude
| style="vertical-align: middle; text-align: center;" |<span style="background:#E52B50">0055</span>
+
| style="vertical-align: middle; text-align: center;" |F1 F4 75 CC
 +
| style="vertical-align: middle; text-align: center;" | -235637300
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Power
+
| style="vertical-align: middle; text-align: center;" |Altitude
| style="vertical-align: middle; text-align: center;" |<span style="background:#FFF600">02</span>
+
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Length
+
| style="vertical-align: middle; text-align: center;" |Angle
| style="vertical-align: middle; text-align: center;" |<span style="background:#03C03C">0C</span>
+
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Type
+
| style="vertical-align: middle; text-align: center;" |Satellites
| style="vertical-align: middle; text-align: center;" |<span style="background:#FF3800">09</span>
+
| style="vertical-align: middle; text-align: center;" |03
 +
| style="vertical-align: middle; text-align: center;" |3
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Device name
+
| style="vertical-align: middle; text-align: center;" |Speed
| style="vertical-align: middle; text-align: center;" |<span style="background:#FFBF00">4D50315F31323334353637</span>
+
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Length
+
| style="vertical-align: middle; text-align: center;" |Event IO ID
| style="vertical-align: middle; text-align: center;" |<span style="background:#FF7E00">0E</span>
+
| style="vertical-align: middle; text-align: center;" |2A 4D
 +
| style="vertical-align: middle; text-align: center;" |10829
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Type
+
| style="vertical-align: middle; text-align: center;" |N of Total ID
| style="vertical-align: middle; text-align: center;" |<span style="background:#3DDC84">FF</span>
+
| style="vertical-align: middle; text-align: center;" |00 01
 +
| style="vertical-align: middle; text-align: center;" |1
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Teltonika company ID (big endian)
+
| style="vertical-align: middle; text-align: center;" |N1 of One Byte IO
| style="vertical-align: middle; text-align: center;" |<span style="background:#008000">9A08</span>
+
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Protocol version
+
| style="vertical-align: middle; text-align: center;" |N2 of Two Bytes IO
| style="vertical-align: middle; text-align: center;" |<span style="background:#00FFFF">01</span>
+
| style="vertical-align: middle; text-align: center;" |00 00
|
+
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Flags
+
| style="vertical-align: middle; text-align: center;" |N4 of Four Bytes IO
| style="vertical-align: middle; text-align: center;" |<span style="background:#D0FF14">B7</span>
+
| style="vertical-align: middle; text-align: center;" |00 00
|Raw value example 0xB7. Data has to be interpretated as binary value.
+
| style="vertical-align: middle; text-align: center;" |0
In this example would be (MSB)<span style="background:#B284BE">1</span>011 011<span style="background:#00FFFF">1</span>(LSB) and is parsed from least significant byte(LSB).
 
 
 
 
 
0 – Temperature value presence. <span style="background:#00FFFF">1</span> Means device is reading and transmitting temperature value.
 
 
 
1 – Humidity value presence. 1 Means device is reading and transmitting humidity value.
 
 
 
2 – Magnetic sensor presence. 1 Means device is reading and transmitting Magnetic sensor value.
 
 
 
3 – Magnetic sensor state (1 magnetic field is detected/0 magnetic field is not detected) Valid value is present only if bit 2 flag is set.
 
 
 
4 – Movement sensor counter. 1 Means device is reading and transmitting movement state and count values.
 
 
 
5 – Movement sensor angle. 1 Means device is reading and transmitting angle roll and pitch values.
 
 
 
6 – Low Battery indication. 0 – Means device battery is from 100 to 15 % (When value changes to 1 Battery level is lower than 15 %.
 
 
 
7 – Battery voltage value presence. <span style="background:#B284BE">1</span> Means device is reading and transmitting battery voltage value.
 
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Temperature
+
| style="vertical-align: middle; text-align: center;" |N8 of Eight Bytes IO
| style="vertical-align: middle; text-align: center;" |<span style="background:#00FF00">08B4</span>
+
| style="vertical-align: middle; text-align: center;" |00 00
|Raw value example 0x08B4 hex, 2228 dec.
+
| style="vertical-align: middle; text-align: center;" |0
 
 
Raw value needs to be divided by 100.
 
 
 
'''Real temperature''' is 22,28 Celsius.
 
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" | Humidity
+
| style="vertical-align: middle; text-align: center;" |NX of X Bytes IO
| style="vertical-align: middle; text-align: center;" |<span style="background:#007FFF">12</span>
+
| style="vertical-align: middle; text-align: center;" |00 01
|Raw value example 0x12 hex, 18 dec.
+
| style="vertical-align: middle; text-align: center;" |1
Decimal value is humidity in percent. Humidity 18 %
 
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" | Movement
+
| style="vertical-align: middle; text-align: center;" |N’th IO ID - AVL ID.
| style="vertical-align: middle; text-align: center;" |<span style="background:#F4C2C2">0CCB</span>
+
| style="vertical-align: middle; text-align: center;" |2A 4D
| (MSB)0000 1100 1100 1011(LSB) binary
+
| style="vertical-align: middle; text-align: center;" |10829
0 - Most significant byte(MSB) represents '''Movement status'''. In this case device is not moving 0. If it was 1 device is moving.
 
 
 
000 1100 1100 1011 – represent detected movements count 3275 decimal value means device has detected total 3275 movement events,
 
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Angle
+
| style="vertical-align: middle; text-align: center;" |Length of Variable Length IO
| style="vertical-align: middle; text-align: center;" |<span style="background:#BFFF00">0BFFC7</span>
+
| style="vertical-align: middle; text-align: center;" |00 14
|0B – Most significant byte represents '''device pitch'''. Device pitch can be from -90 to 90 degrees.
+
| style="vertical-align: middle; text-align: center;" |20
In this example device pitch is 0000 1011 (2's complement) = 11° degrees.
 
 
 
 
 
FFC7– Two least significant bytes represent '''device roll'''. Device roll can be from -180 to 180 degrees.
 
 
 
In this example device Roll is 1111 1111 1100 0111 (2's complement) = -57° degrees
 
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Battery voltage
+
| style="vertical-align: middle; text-align: center;" |Value of Variable Length IO
| style="vertical-align: middle; text-align: center;" |<span style="background:#00BFFF">67</span>
+
| style="vertical-align: middle; text-align: center;" |01 12 00 01 C8 0F 06 7C D9 F4 02 55 BE 0D 01 00 0E 02 0B F4
|'''Battery voltage –''' raw value example 0x67 hex. Decimal value of parameter 103'''.''' To calculate battery voltage need to use calculation 2000 + (VALUE * 10). In this case battery voltage value 2000+(103x10)= 3030 mV
+
| style="vertical-align: middle; text-align: center;" |
|}
 
 
 
===<p style="font-size:24px"><span style="color:#0054A6">FM Packet parsing example (Base firmware / Advanced mode)</span>===
 
 
 
 
 
{| class="nd-othertables_2" style="width:100%;"
 
|+
 
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" | Unparsed data
 
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" | Received data in hexadecimal stream: <code>00000000000000488E010000017CA6B6BFD8010F0E5188209AB482008600A80F0000000</code><br><code>00006000000020019090400560024000301CF0000001601D00000FF4D01D10000006D00000001014B0001B6010000CF7D</code>
+
| rowspan="18" style="vertical-align: middle; text-align: center;" |AVL DATA
|}
+
| style="vertical-align: middle; text-align: center;" |Timestamp
 
+
| style="vertical-align: middle; text-align: center;" |00 00 01 8D 14 68 C1 2F
{| class="nd-othertables_2" style="width:100%;"
+
| style="vertical-align: middle; text-align: center;" |2024/01/16 - 22:33:46.001
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |AVL Data Packet
 
 
|-
 
|-
! colspan="2" rowspan="1" style="width:60%; vertical-align: middle; text-align: center;" | AVL Data Packet Part
+
| style="vertical-align: middle; text-align: center;" |Priority
! rowspan="1" style="width:40%; vertical-align: middle; text-align: center;" |HEX Code Part
+
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| rowspan="4" style="vertical-align: middle; text-align: center;" |
+
| style="vertical-align: middle; text-align: center;" |Longitude
| style="vertical-align: middle; text-align: center;" |Zero Bytes
+
| style="vertical-align: middle; text-align: center;" |E4 2C C9 08
| style="vertical-align: middle; text-align: center;" | 00 00 00 00
+
| style="vertical-align: middle; text-align: center;" | -466827000
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Data Field Length
+
| style="vertical-align: middle; text-align: center;" |Latitude
| style="vertical-align: middle; text-align: center;" |00 00 00 48
+
| style="vertical-align: middle; text-align: center;" |F1 F4 75 CC
 +
| style="vertical-align: middle; text-align: center;" | -235637300
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Codec ID
+
| style="vertical-align: middle; text-align: center;" |Altitude
| style="vertical-align: middle; text-align: center;" |8E (Codec8 Extended)
+
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Number of Data 1 (Number of Total Records)
+
| style="vertical-align: middle; text-align: center;" |Angle
| style="vertical-align: middle; text-align: center;" |01
+
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| rowspan="34" style="vertical-align: middle; text-align: center;" |AVL Data
+
| style="vertical-align: middle; text-align: center;" |Satellites
| style="vertical-align: middle; text-align: center;" |Timestamp
+
| style="vertical-align: middle; text-align: center;" |03
| style="vertical-align: middle; text-align: center;" |00 00 01 7C A6 B6 BF D8 (GMT: Friday, 22 October 2021 06:36:07)
+
| style="vertical-align: middle; text-align: center;" |3
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" | Priority
+
| style="vertical-align: middle; text-align: center;" |Speed
| style="vertical-align: middle; text-align: center;" |01
+
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Longitude
+
| style="vertical-align: middle; text-align: center;" |Event IO ID
| style="vertical-align: middle; text-align: center;" |0F 0E 51 88
+
| style="vertical-align: middle; text-align: center;" |2A 4F
 +
| style="vertical-align: middle; text-align: center;" |10831
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Latitude
+
| style="vertical-align: middle; text-align: center;" |N of Total ID
| style="vertical-align: middle; text-align: center;" |20 9A B4 82
+
| style="vertical-align: middle; text-align: center;" |00 01
 +
| style="vertical-align: middle; text-align: center;" |1
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Altitude
+
| style="vertical-align: middle; text-align: center;" |N1 of One Byte IO
| style="vertical-align: middle; text-align: center;" |00 86
+
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" | Angle
+
| style="vertical-align: middle; text-align: center;" |N2 of Two Bytes IO
| style="vertical-align: middle; text-align: center;" |00 0A
+
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Satellites
+
| style="vertical-align: middle; text-align: center;" |N4 of Four Bytes IO
| style="vertical-align: middle; text-align: center;" |0E
 
|-
 
| style="vertical-align: middle; text-align: center;" |Speed
 
 
| style="vertical-align: middle; text-align: center;" |00 00
 
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Event IO ID
+
| style="vertical-align: middle; text-align: center;" |N8 of Eight Bytes IO
 
| style="vertical-align: middle; text-align: center;" |00 00
 
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |N of Total ID
+
| style="vertical-align: middle; text-align: center;" |NX of X Bytes IO
| style="vertical-align: middle; text-align: center;" |00 06
+
| style="vertical-align: middle; text-align: center;" |00 01
 +
| style="vertical-align: middle; text-align: center;" |1
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |N1 of One Byte IO
+
| style="vertical-align: middle; text-align: center;" |N’th IO ID - AVL ID.
| style="vertical-align: middle; text-align: center;" |00 00
+
| style="vertical-align: middle; text-align: center;" |2A 4F
 +
| style="vertical-align: middle; text-align: center;" |10831
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |N2 of Two Bytes IO
+
| style="vertical-align: middle; text-align: center;" |Length of Variable Length IO
| style="vertical-align: middle; text-align: center;" |00 02
+
| style="vertical-align: middle; text-align: center;" |00 14
 +
| style="vertical-align: middle; text-align: center;" |20
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |ID
+
| style="vertical-align: middle; text-align: center;" |Value of Variable Length IO
| style="vertical-align: middle; text-align: center;" |00 19 (25 = BLE Temperature #1)
+
| style="vertical-align: middle; text-align: center;" |01 12 00 01 B9 0F 06 7C D9 F4 00 4B 49 0D 01 00 0E 02 0B FE
 +
| style="vertical-align: middle; text-align: center;" |
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Value
+
|
| style="vertical-align: middle; text-align: center;" |09 04 (2308=23.08°C)
+
| style="vertical-align: middle; text-align: center;" |Number of Data 2 (Number of Total Records)
 +
| style="vertical-align: middle; text-align: center;" |03
 +
| style="vertical-align: middle; text-align: center;" |20
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |ID
+
|
| style="vertical-align: middle; text-align: center;" |00 56 (86 = BLE Humidity #1)
+
| style="vertical-align: middle; text-align: center;" |CRC-16
 +
| style="vertical-align: middle; text-align: center;" |00 00 86 BA
 +
|
 +
|-
 +
|}
 +
 
 +
==== Near example (AVL ID - 10828) ====
 +
{| class="nd-othertables_2" style="width:100%;"
 +
|+
 +
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |nEAR BEACONS (AVL ID - 10828)
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" | Value
+
| style="vertical-align: middle; text-align: center;" |01120001E50F067CD9F401EF770D01000E020BFE
| style="vertical-align: middle; text-align: center;" | 00 36 (24 %RHT)
+
|}
 +
 
 +
{| class="nd-othertables_2" style="width:100%;"
 +
|+
 +
! colspan="4" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |AVL Data Packet
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" | N4 of Four Bytes IO
+
! colspan="2" rowspan="1" style="width:50%; vertical-align: middle; text-align: center;" |AVL Data Packet Part
| style="vertical-align: middle; text-align: center;" |00 03
+
! rowspan="1" style="width:30%; vertical-align: middle; text-align: center;" |HEX Code Part
 +
! rowspan="1" style="width:20%; vertical-align: middle; text-align: center;" |Decoded
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |ID
+
| colspan="2" style="vertical-align: middle; text-align: center;"|Protocol  ID
| style="vertical-align: middle; text-align: center;" |01 CF (463 - BLE 1 Custom #2 = Movement status and movement events count)
+
| style="vertical-align: middle; text-align: center;" |01
 +
|
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Value
+
| colspan="2" style="vertical-align: middle; text-align: center;"|Data Length
| style="vertical-align: middle; text-align: center;" |00 00 00 16 (Currently not moving events count 22)
+
| style="vertical-align: middle; text-align: center;" |12
 +
| style="vertical-align: middle; text-align: center;" |18
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |ID
+
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter ID
| style="vertical-align: middle; text-align: center;" |01 D0 (464 - BLE 1 Custom #3 = Angle )
+
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |Beacon RSSI Level
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Value
+
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data  Length
| style="vertical-align: middle; text-align: center;" |00 00 FF 4D (Pitch = 0°, Roll = -179°)
+
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |1
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |ID
+
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data
| style="vertical-align: middle; text-align: center;" |01 D1 (465 - BLE 1 Custom #4 = Battery Voltage)
+
| style="vertical-align: middle; text-align: center;" |E5
 +
| style="vertical-align: middle; text-align: center;" | -27
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Value
+
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter ID
| style="vertical-align: middle; text-align: center;" |00 00 00 6D (109 = 2000 + 109 * 10 mV = 3090 mV)
+
| style="vertical-align: middle; text-align: center;" |0F
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor MAC address
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data  Length
 +
| style="vertical-align: middle; text-align: center;" |06
 +
| style="vertical-align: middle; text-align: center;" |6
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |7C D9 F4 01 EF 77
 +
| style="vertical-align: middle; text-align: center;" |7CD9F401EF77
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |0D
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Low Battery
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data  Length
 +
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |1
 
|-
 
|-
 
+
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data
| style="vertical-align: middle; text-align: center;" |N8 of Eight Bytes IO
+
| style="vertical-align: middle; text-align: center;" |00
| style="vertical-align: middle; text-align: center;" |00 00
+
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |NX of X Bytes IO
+
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter ID
| style="vertical-align: middle; text-align: center;" |00 01
+
| style="vertical-align: middle; text-align: center;" |0E
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Battery Voltage
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |N’th IO ID - AVL ID.
+
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data  Length
| style="vertical-align: middle; text-align: center;" |01 4B (331 - BLE 1 Custom #1 = Flags)
+
| style="vertical-align: middle; text-align: center;" |02
 +
| style="vertical-align: middle; text-align: center;" |2
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Length of Variable Length IO
+
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data
| style="vertical-align: middle; text-align: center;" |00 01
+
| style="vertical-align: middle; text-align: center;" |0B FE
 +
| style="vertical-align: middle; text-align: center;" |3070
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" | Value of Variable Length IO
+
|}
| style="vertical-align: middle; text-align: center;" |B7 = (MSB)<span style="background:#B284BE">1</span>1011 011<span style="background:#00FFFF">1</span>(LSB)
 
It's parsed from least significant byte(LSB):
 
  
 +
==== Away example (AVL ID - 10829) ====
 +
{| class="nd-othertables_2" style="width:100%;"
 +
|+
 +
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |AWAY BEACONS (AVL ID - 10829)
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |01120001C80F067CD9F40255BE0D01000E020BF4
 +
|}
  
Bit 0 – Temperature value presence.
+
{| class="nd-othertables_2" style="width:100%;"
 
+
|+
<span style="background:#00FFFF">1</span> Means device is reading and transmitting temperature value.
+
! colspan="4" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |AVL Data Packet
 
+
|-
 +
! colspan="2" rowspan="1" style="width:50%; vertical-align: middle; text-align: center;" |AVL Data Packet Part
 +
! rowspan="1" style="width:30%; vertical-align: middle; text-align: center;" |HEX Code Part
 +
! rowspan="1" style="width:20%; vertical-align: middle; text-align: center;" |Decoded
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Protocol  ID
 +
| style="vertical-align: middle; text-align: center;" |01
 +
|
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Data Length
 +
| style="vertical-align: middle; text-align: center;" |12
 +
| style="vertical-align: middle; text-align: center;" |18
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |Beacon RSSI Level
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data  Length
 +
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |1
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |C8
 +
| style="vertical-align: middle; text-align: center;" |  -56
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |0F
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor MAC address
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data  Length
 +
| style="vertical-align: middle; text-align: center;" |06
 +
| style="vertical-align: middle; text-align: center;" |6
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |7C D9 F4 02 55 BE
 +
| style="vertical-align: middle; text-align: center;" |7CD9F40255BE
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |0D
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Low Battery
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data  Length
 +
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |1
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |0E
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Battery Voltage
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data  Length
 +
| style="vertical-align: middle; text-align: center;" |02
 +
| style="vertical-align: middle; text-align: center;" |2
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |0BF4
 +
| style="vertical-align: middle; text-align: center;" |3060
 +
|-
 +
|}
  
Bit 1 – Humidity value presence.
+
==== Lost example (AVL ID - 10831) ====
 +
{| class="nd-othertables_2" style="width:100%;"
 +
|+
 +
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |LOST BEACONS (AVL ID - 10831)
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |01120001E50F067CD9F401EF770D01000E020BFE
 +
|}
  
1 Means device is reading and transmitting humidity value.
+
{| class="nd-othertables_2" style="width:100%;"
 
+
|+
 
+
! colspan="4" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |AVL Data Packet
Bit 2 – Magnetic sensor presence.
+
|-
 
+
! colspan="2" rowspan="1" style="width:50%; vertical-align: middle; text-align: center;" |AVL Data Packet Part
1 Means device is reading and transmitting Magnetic sensor value.
+
! rowspan="1" style="width:30%; vertical-align: middle; text-align: center;" |HEX Code Part
 +
! rowspan="1" style="width:20%; vertical-align: middle; text-align: center;" |Decoded
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Protocol  ID
 +
| style="vertical-align: middle; text-align: center;" |01
 +
|
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Data Length
 +
| style="vertical-align: middle; text-align: center;" |12
 +
| style="vertical-align: middle; text-align: center;" |18
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |Beacon RSSI Level
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data  Length
 +
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |01
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |B9
 +
| style="vertical-align: middle; text-align: center;" |  -71
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |0F
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor MAC address
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data  Length
 +
| style="vertical-align: middle; text-align: center;" |06
 +
| style="vertical-align: middle; text-align: center;" |6
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |7C D9 F4 00 4B 49
 +
| style="vertical-align: middle; text-align: center;" |7CD9F4004B49
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |0D
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Low Battery
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data  Length
 +
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |1
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |0E
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Battery Voltage
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data  Length
 +
| style="vertical-align: middle; text-align: center;" |02
 +
| style="vertical-align: middle; text-align: center;" |2
 +
|-
 +
| colspan="2" style="vertical-align: middle; text-align: center;"|Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |0BFE
 +
| style="vertical-align: middle; text-align: center;" |3070
 +
|-
 +
|}
 +
</div>
 +
</div>
 +
<div class="mw-collapsible mw-collapsed">
 +
===<p style="font-size:24px><span style="color:#0054A6">Parsing for Lost & Found Feature</span>===
 +
<div class="mw-collapsible-content">
 +
==== Visible Beacons (AVL ID - 10828) ====
 +
{| class="nd-othertables_2" style="width:100%;"
 +
|+
 +
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |LOST & FOUND FEATURE
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Received data in hexadecimal stream:
 +
00000000000000678E010000018D1459964B00E42CA472F1F5B94D00000000000000
  
 +
2A4C0001000000000000000000012A4C003A01120001D60F067CD9F40255BE0D01000E020BF4120001E00F067CD9F4004B490D01000E020BFE120001AC0F067CD9F401EF770D01000E020BFE
  
Bit 3 – Magnetic sensor state
+
0100001ACD
 +
|}
  
1 magnetic field is detected/0 magnetic field is not detected) Valid value is present only if bit 2 flag is set.
+
{| class="nd-othertables_2" style="width:100%;"
 
+
|+
 
+
! colspan="4" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |AVL Data Packet
Bit 4 – Movement sensor counter.
 
 
 
1 Means device is reading and transmitting movement state and count values.
 
 
 
 
 
Bit 5 – Movement sensor angle.
 
 
 
1 Means device is reading and transmitting angle roll and pitch values.
 
 
 
 
 
Bit 6 – Low Battery indication.
 
 
 
0 – Means device battery is from 100 to 15 % (When value changes to 1 Battery level is lower than 15 %.
 
 
 
 
 
7 – Battery voltage value presence.
 
 
 
<span style="background:#B284BE">1</span> Means device is reading and transmitting battery voltage value.
 
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Number of Data 2 (Number of Total Records)
+
! colspan="2" rowspan="1" style="width:50%; vertical-align: middle; text-align: center;" |AVL Data Packet Part
| style="vertical-align: middle; text-align: center;" |01
+
! rowspan="1" style="width:30%; vertical-align: middle; text-align: center;" |HEX Code Part
 +
! rowspan="1" style="width:20%; vertical-align: middle; text-align: center;" |Decoded
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |CRC-16
+
|
| style="vertical-align: middle; text-align: center;" |00 00 CF 7D
+
| style="vertical-align: middle; text-align: center;" |Zero Bytes
 +
| style="vertical-align: middle; text-align: center;" |00 00 00 00
 +
|
 
|-
 
|-
|}
+
|
===<p style="font-size:24px"><span style="color:#0054A6">FM EYE Sensor record parsing example with the new firmware (Evaluation firmware / EYE Sensor filtering by name)</span>===
+
| style="vertical-align: middle; text-align: center;" |Data Field Length
'''Parsing EYE Sensor records example''' <br>
+
| style="vertical-align: middle; text-align: center;" |00 00 00 67
Below You will find an example on how to parse EYE Sensor record with two EYE Sensors present.
+
| style="vertical-align: middle; text-align: center;" |103
 
 
{| class="nd-othertables_2" style="width:100%;"
 
|+
 
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |Unparsed data
 
|-
 
| style="vertical-align: middle; text-align: center;" |Received data in hexadecimal stream: <code>00000000000000908E0100000183407a2beb000f0e3fe3209ab40e008801290d00002c350001000000000</code><br><code>000000000012c350063<span style="background-color:#91d4b9;">0130050f4d50315f42453241413500000000000602d60807012f0801000901000a024e000b01f90c025aff0d01000e020bcc</code><br><code><span style="background-color:#91d4b9;">30050f4d50315f33464539414100000000000602cb080701300801000901000a0263000b01000c02af000d01000e020b90</code><code>010000fef4</code>
 
|}
 
 
 
{| class="nd-othertables_2" style="width:100%;"
 
|+
 
 
 
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |AVL Data Packet
 
|-
 
! colspan="2" rowspan="1" style="width:60%; vertical-align: middle; text-align: center;" |AVL Data Packet Part
 
! rowspan="1" style="width:40%; vertical-align: middle; text-align: center;" |HEX Code Part
 
|-
 
| rowspan="4" style="vertical-align: middle; text-align: center;" |
 
| style="vertical-align: middle; text-align: center;" |Zero Bytes
 
| style="vertical-align: middle; text-align: center;" |00 00 00 00
 
|-
 
| style="vertical-align: middle; text-align: center;" |Data Field Length
 
| style="vertical-align: middle; text-align: center;" |00 00 00 90
 
 
|-
 
|-
 +
|
 
| style="vertical-align: middle; text-align: center;" |Codec ID
 
| style="vertical-align: middle; text-align: center;" |Codec ID
| style="vertical-align: middle; text-align: center;" |8E (Codec8 Extended)
+
| style="vertical-align: middle; text-align: center;" |8E
 +
| style="vertical-align: middle; text-align: center;" |142
 
|-
 
|-
 +
|
 
| style="vertical-align: middle; text-align: center;" |Number of Data 1 (Number of Total Records)
 
| style="vertical-align: middle; text-align: center;" |Number of Data 1 (Number of Total Records)
 
| style="vertical-align: middle; text-align: center;" |01
 
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |1
 
|-
 
|-
| rowspan="24" style="vertical-align: middle; text-align: center;" |AVL Data
+
| rowspan="18" style="vertical-align: middle; text-align: center;" |AVL DATA
 
| style="vertical-align: middle; text-align: center;" |Timestamp
 
| style="vertical-align: middle; text-align: center;" |Timestamp
| style="vertical-align: middle; text-align: center;" |00 00 01 83 40 7a 2b eb(GMT: Tuesday, 18 June 2019 08:25:22.001)
+
| style="vertical-align: middle; text-align: center;" |00 00 01 8D 14 59 96 4B
 +
| style="vertical-align: middle; text-align: center;" |2024/01/16 - 22:17:12.001
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Priority
 
| style="vertical-align: middle; text-align: center;" |Priority
 
| style="vertical-align: middle; text-align: center;" |00
 
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Longitude
 
| style="vertical-align: middle; text-align: center;" |Longitude
| style="vertical-align: middle; text-align: center;" |0f 0e 3f e3
+
| style="vertical-align: middle; text-align: center;" |E4 2C A4 72
 +
| style="vertical-align: middle; text-align: center;" | -466827000
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Latitude
 
| style="vertical-align: middle; text-align: center;" |Latitude
| style="vertical-align: middle; text-align: center;" |20 9a b4 0e
+
| style="vertical-align: middle; text-align: center;" |F1 F5 B9 4D
 +
| style="vertical-align: middle; text-align: center;" | -235637300
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Altitude
 
| style="vertical-align: middle; text-align: center;" |Altitude
| style="vertical-align: middle; text-align: center;" |00 88
+
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Angle
 
| style="vertical-align: middle; text-align: center;" |Angle
| style="vertical-align: middle; text-align: center;" | 01 29
+
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Satellites
 
| style="vertical-align: middle; text-align: center;" |Satellites
| style="vertical-align: middle; text-align: center;" | 0d
+
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Speed
 
| style="vertical-align: middle; text-align: center;" |Speed
 
| style="vertical-align: middle; text-align: center;" |00 00
 
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Event IO ID
 
| style="vertical-align: middle; text-align: center;" |Event IO ID
| style="vertical-align: middle; text-align: center;" |2c 35 (11317)
+
| style="vertical-align: middle; text-align: center;" |2A 4C
 +
| style="vertical-align: middle; text-align: center;" |10828
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |N of Total ID
+
| style="vertical-align: middle; text-align: center;" | N of Total ID
 
| style="vertical-align: middle; text-align: center;" |00 01
 
| style="vertical-align: middle; text-align: center;" |00 01
 +
| style="vertical-align: middle; text-align: center;" |1
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |N1 of One Byte IO
 
| style="vertical-align: middle; text-align: center;" |N1 of One Byte IO
| style="vertical-align: middle; text-align: center;" | 00 00
+
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" | N2 of Two Bytes IO
+
| style="vertical-align: middle; text-align: center;" |N2 of Two Bytes IO
 
| style="vertical-align: middle; text-align: center;" |00 00
 
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |N4 of Four Bytes IO
 
| style="vertical-align: middle; text-align: center;" |N4 of Four Bytes IO
 
| style="vertical-align: middle; text-align: center;" |00 00
 
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
  
 
| style="vertical-align: middle; text-align: center;" |N8 of Eight Bytes IO
 
| style="vertical-align: middle; text-align: center;" |N8 of Eight Bytes IO
 
| style="vertical-align: middle; text-align: center;" |00 00
 
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |NX of X Bytes IO
 
| style="vertical-align: middle; text-align: center;" |NX of X Bytes IO
 
| style="vertical-align: middle; text-align: center;" |00 01
 
| style="vertical-align: middle; text-align: center;" |00 01
 +
| style="vertical-align: middle; text-align: center;" |1
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |N’th IO ID - AVL ID.
 
| style="vertical-align: middle; text-align: center;" |N’th IO ID - AVL ID.
| style="vertical-align: middle; text-align: center;" |2c 35 (11317)
+
| style="vertical-align: middle; text-align: center;" |2A 4C
 +
| style="vertical-align: middle; text-align: center;" |10828
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Length of Variable Length IO
 
| style="vertical-align: middle; text-align: center;" |Length of Variable Length IO
| style="vertical-align: middle; text-align: center;" |00 63 (99 bytes)
+
| style="vertical-align: middle; text-align: center;" |00 3A
 +
| style="vertical-align: middle; text-align: center;" |58
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Value of Variable Length IO 11317
+
| style="vertical-align: middle; text-align: center;" |Value of Variable Length IO
 +
| style="vertical-align: middle; text-align: center;" |01120001D60F067CD9F40255BE0D01000E020BF4
 +
120001E00F067CD9F4004B490D01000E020BFE
 +
 
 +
120001AC0F067CD9F401EF770D01000E020BFE
 
| style="vertical-align: middle; text-align: center;" |
 
| style="vertical-align: middle; text-align: center;" |
'''0130050f4d50315f42453241413500000000000602d60807012f0801000901000a024e000b01f90c025aff0d01000e020bcc'''
 
'''30050f4d50315f33464539414100000000000602cb080701300801000901000a0263000b01000c02af000d01000e020b90'''
 
 
|-
 
|-
 +
|
 
| style="vertical-align: middle; text-align: center;" |Number of Data 2 (Number of Total Records)
 
| style="vertical-align: middle; text-align: center;" |Number of Data 2 (Number of Total Records)
 
| style="vertical-align: middle; text-align: center;" |01
 
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |1
 
|-
 
|-
 +
|
 
| style="vertical-align: middle; text-align: center;" |CRC-16
 
| style="vertical-align: middle; text-align: center;" |CRC-16
| style="vertical-align: middle; text-align: center;" |00 00 fe f4
+
| style="vertical-align: middle; text-align: center;" |00 00 1A CD
 +
|
 
|-
 
|-
 
|}
 
|}
 
===Parsing AVL ID 11317 data===
 
  
 
{| class="nd-othertables_2" style="width:100%;"
 
{| class="nd-othertables_2" style="width:100%;"
 
|+
 
|+
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |AVL ID 11317 Unparsed data
+
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |vISIBLE BEACONS (AVL ID - 10828)
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |<code>'''0130050f4d50315f42453241413500000000000602d60807012f0801000901000a024e000b01f90c025aff0d01000e020bcc'''</code>'''<br><code>30050f4d50315f33464539414100000000000602cb080701300801000901000a0263000b01000c02af000d01000e020b90'''
+
| style="vertical-align: middle; text-align: center;" |01120001D60F067CD9F40255BE0D01000E020BF4
 +
120001E00F067CD9F4004B490D01000E020BFE
 +
 
 +
120001AC0F067CD9F401EF770D01000E020BFE
 
|}
 
|}
  
 
{| class="nd-othertables_2" style="width:100%;"
 
{| class="nd-othertables_2" style="width:100%;"
 
|+
 
|+
 
+
! colspan="4" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |AVL Data Packet
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |Parsing the data
 
 
|-
 
|-
! colspan="2" rowspan="1" style="width:60%; vertical-align: middle; text-align: center;" |AVL Data packet part
+
! colspan="2" rowspan="1" style="width:50%; vertical-align: middle; text-align: center;" |AVL Data Packet Part
! rowspan="1" style="width:40%; vertical-align: middle; text-align: center;" |HEX Code Part
+
! rowspan="1" style="width:30%; vertical-align: middle; text-align: center;" |HEX Code Part
 +
! rowspan="1" style="width:20%; vertical-align: middle; text-align: center;" |Decoded
 
|-
 
|-
| rowspan="3" |
+
|
| style="vertical-align: middle; text-align: center;" |Constant
+
| style="vertical-align: middle; text-align: center;" |Protocol  ID
| style="vertical-align: middle; text-align: center;" |01
+
| style="vertical-align: middle; text-align: center;" |00 00 00 00
 +
|
 
|-
 
|-
! style="vertical-align: middle; text-align: center;" |Eye Sensor #1 data length
+
| rowspan="13" style="vertical-align: middle; text-align: center;" |EYE BEACON 1
| style="vertical-align: middle; text-align: center;" |30 (48 bytes)
+
| style="vertical-align: middle; text-align: center;" |Data  Length
 +
| style="vertical-align: middle; text-align: center;" |12
 +
| style="vertical-align: middle; text-align: center;" |18
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
| style="vertical-align: middle; text-align: center;" |05 (Eye Sensor Device name)
+
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |Beacon RSSI Level
 
|-
 
|-
| rowspan="60" style="vertical-align: middle; text-align: center;" |AVL Data
+
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
| style="vertical-align: middle; text-align: center;" |01
| style="vertical-align: middle; text-align: center;" |0f (15 bytes)
+
| style="vertical-align: middle; text-align: center;" | 1
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data
+
| style="vertical-align: middle; text-align: center;" |Parameter Data
| style="vertical-align: middle; text-align: center;" |4d 50 31 5f 42 45 32 41 41 35 00 00 00 00 00
+
| style="vertical-align: middle; text-align: center;" |D6
 +
| style="vertical-align: middle; text-align: center;" |  -42
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" | Parameter ID
+
| style="vertical-align: middle; text-align: center;" |Parameter ID
| style="vertical-align: middle; text-align: center;" |06 (Eye Sensor #1 temperature)
+
| style="vertical-align: middle; text-align: center;" |0F
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor MAC address
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
| style="vertical-align: middle; text-align: center;" |02 (2 bytes)
+
| style="vertical-align: middle; text-align: center;" |06
 +
| style="vertical-align: middle; text-align: center;" |6
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data
+
| style="vertical-align: middle; text-align: center;" |Parameter Data
| style="vertical-align: middle; text-align: center;" |d6 08 (With firmware 03.28.04.rev.203 the value is little endian, converted to decimal and multiplied by 0.01C = 22.42C.<br>
+
| style="vertical-align: middle; text-align: center;" |7CD9F40255BE
With firmware 03.28.04.rev.204 the value is big endian)
+
| style="vertical-align: middle; text-align: center;" |7CD9F40255BE
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
| style="vertical-align: middle; text-align: center;" |07 (Eye Sensor #1 Humidity)
+
| style="vertical-align: middle; text-align: center;" |0D
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Low Battery
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
| style="vertical-align: middle; text-align: center;" |01 (1 byte)
+
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |1
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data
+
| style="vertical-align: middle; text-align: center;" | Parameter Data
| style="vertical-align: middle; text-align: center;" |2f (converted to decimal = 47%)
+
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
| style="vertical-align: middle; text-align: center;" |08 (Eye Sensor #1 Magnet)
+
| style="vertical-align: middle; text-align: center;" |0E
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Battery Voltage
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
| style="vertical-align: middle; text-align: center;" |01 (1 byte)
+
| style="vertical-align: middle; text-align: center;" |02
 +
| style="vertical-align: middle; text-align: center;" |2
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter Data
 
| style="vertical-align: middle; text-align: center;" |Parameter Data
| style="vertical-align: middle; text-align: center;" |00 (no magnet detected)
+
| style="vertical-align: middle; text-align: center;" |0B F4
 +
| style="vertical-align: middle; text-align: center;" |3060
 +
|-
 +
| rowspan="13" style="vertical-align: middle; text-align: center;" |EYE BEACON 2
 +
| style="vertical-align: middle; text-align: center;" |Data  Length
 +
| style="vertical-align: middle; text-align: center;" |12
 +
| style="vertical-align: middle; text-align: center;" |18
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
| style="vertical-align: middle; text-align: center;" |09 (EYE Sensor #1 Movement presence)
+
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |Beacon RSSI Level
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
| style="vertical-align: middle; text-align: center;" | 01 (1 byte)
+
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" | 1
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data
+
| style="vertical-align: middle; text-align: center;" |Parameter Data
| style="vertical-align: middle; text-align: center;" |00 (none detected)
+
| style="vertical-align: middle; text-align: center;" |E0
 +
| style="vertical-align: middle; text-align: center;" |  -32
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
| style="vertical-align: middle; text-align: center;" |0a (parameter ID #10, EYE Sensor #1 Movement count)
+
| style="vertical-align: middle; text-align: center;" |0F
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor MAC address
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter Data length
+
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
| style="vertical-align: middle; text-align: center;" |02 (2 bytes)
+
| style="vertical-align: middle; text-align: center;" |06
 +
| style="vertical-align: middle; text-align: center;" |6
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data
+
| style="vertical-align: middle; text-align: center;" |Parameter Data
| style="vertical-align: middle; text-align: center;" | 4e 00 (converted to dec = 19968)
+
| style="vertical-align: middle; text-align: center;" |7CD9F4004B49
|-
+
| style="vertical-align: middle; text-align: center;" |7CD9F4004B49
| style="vertical-align: middle; text-align: center;" | Parameter ID
 
| style="vertical-align: middle; text-align: center;" |0b (Parameter ID #11 Eye Sensor #1 Pitch)
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter Data length
 
| style="vertical-align: middle; text-align: center;" | 01 (1 byte)
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter data
 
| style="vertical-align: middle; text-align: center;" |f9 (converted to decimal = 159 degrees)
 
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
| style="vertical-align: middle; text-align: center;" |0c (Parameter ID #12 Eye sensor #1 Roll)
+
| style="vertical-align: middle; text-align: center;" |0D
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Low Battery
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
| style="vertical-align: middle; text-align: center;" |02 (2 bytes)
+
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |1
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data
+
| style="vertical-align: middle; text-align: center;" |Parameter Data
| style="vertical-align: middle; text-align: center;" |5a ff (With firmware 03.28.04.rev.203 the value is Little endian, converted to decimal signed 2's complement =-166 degrees <br>
+
| style="vertical-align: middle; text-align: center;" |00
With firmware 03.28.04.rev.204 the value is Big Endian)
+
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
| style="vertical-align: middle; text-align: center;" |0d (parameter ID #13 low battery voltage indicator)
+
| style="vertical-align: middle; text-align: center;" |0E
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Battery Voltage
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
| style="vertical-align: middle; text-align: center;" |01 (1 byte)
+
| style="vertical-align: middle; text-align: center;" |02
 +
| style="vertical-align: middle; text-align: center;" |2
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data
+
| style="vertical-align: middle; text-align: center;" |Parameter Data
| style="vertical-align: middle; text-align: center;" |00 (low battery voltage not detected)
+
| style="vertical-align: middle; text-align: center;" |0B FE
 +
| style="vertical-align: middle; text-align: center;" |3070
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" | Parameter ID
+
| rowspan="13" style="vertical-align: middle; text-align: center;" |EYE BEACON 3
| style="vertical-align: middle; text-align: center;" |0e (Eye Sensor #1 battery voltage)
+
| style="vertical-align: middle; text-align: center;" |Data  Length
|-
+
| style="vertical-align: middle; text-align: center;" |12
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
| style="vertical-align: middle; text-align: center;" |18
| style="vertical-align: middle; text-align: center;" |02 (2 bytes)
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter data
 
| style="vertical-align: middle; text-align: center;" |0b cc (Converted to decimal = 3020 mV)
 
|-
 
! style="vertical-align: middle; text-align: center;" |Eye Sensor #2 data length
 
| style="vertical-align: middle; text-align: center;" | 30 (48 bytes)
 
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
| style="vertical-align: middle; text-align: center;" | 05 (Eye Sensor Device name)
+
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |Beacon RSSI Level
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
| style="vertical-align: middle; text-align: center;" |0f (15 bytes)
+
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" | 1
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter Data
 
| style="vertical-align: middle; text-align: center;" |Parameter Data
| style="vertical-align: middle; text-align: center;" |09 (EYE Sensor #1 Movement presence)
+
| style="vertical-align: middle; text-align: center;" |AC
 +
| style="vertical-align: middle; text-align: center;" |  -32
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
| style="vertical-align: middle; text-align: center;" |06 (Eye Sensor #1 temperature)
+
| style="vertical-align: middle; text-align: center;" |0F
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor MAC address
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
| style="vertical-align: middle; text-align: center;" |02 (2 bytes)
+
| style="vertical-align: middle; text-align: center;" |06
 +
| style="vertical-align: middle; text-align: center;" |6
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter Data
 
| style="vertical-align: middle; text-align: center;" |Parameter Data
| style="vertical-align: middle; text-align: center;" |cb 08 (little endian, converted to decimal and multiplied by 0.01C = 22.51C)
+
| style="vertical-align: middle; text-align: center;" |7CD9F401EF77
 +
| style="vertical-align: middle; text-align: center;" |7CD9F401EF77
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
| style="vertical-align: middle; text-align: center;" |07 (Eye Sensor #1 Humidity)
+
| style="vertical-align: middle; text-align: center;" |0D
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Low Battery
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
| style="vertical-align: middle; text-align: center;" |01 (1 byte)
+
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |1
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter Data
 
| style="vertical-align: middle; text-align: center;" |Parameter Data
| style="vertical-align: middle; text-align: center;" |30 (converted to decimal = 48%)
+
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |0
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
 
| style="vertical-align: middle; text-align: center;" |Parameter ID
| style="vertical-align: middle; text-align: center;" |08 (Eye Sensor #1 Magnet)
+
| style="vertical-align: middle; text-align: center;" |0E
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Battery Voltage
 
|-
 
|-
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
| style="vertical-align: middle; text-align: center;" |01 (1 byte)
+
| style="vertical-align: middle; text-align: center;" |02
 +
| style="vertical-align: middle; text-align: center;" |2
 
|-
 
|-
 
| style="vertical-align: middle; text-align: center;" |Parameter Data
 
| style="vertical-align: middle; text-align: center;" |Parameter Data
| style="vertical-align: middle; text-align: center;" | 00 (no magnet presence detected)
+
| style="vertical-align: middle; text-align: center;" |0B FE
|-
+
| style="vertical-align: middle; text-align: center;" |3070
| style="vertical-align: middle; text-align: center;" |Parameter ID
+
|-
| style="vertical-align: middle; text-align: center;" |09 (EYE Sensor #1 Movement presence)
+
|}
|-
+
 
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
==== Lost Beacons (AVL ID 10831) ====
| style="vertical-align: middle; text-align: center;" |01 (1 byte)
+
{| class="nd-othertables_2" style="width:100%;"
|-
+
|+
| style="vertical-align: middle; text-align: center;" |Parameter Data
+
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |LOST & FOUND FEATURE
| style="vertical-align: middle; text-align: center;" | 00 (no movement presence detected)
+
|-
|-
+
| style="vertical-align: middle; text-align: center;" |Received data in hexadecimal stream:
| style="vertical-align: middle; text-align: center;" |Parameter ID
+
00000000000000418E010000018D145CF59300E42CA472F1F5B94D00000000000000
| style="vertical-align: middle; text-align: center;" |0a (parameter ID #10, EYE Sensor #1 Movement count)
+
 
|-
+
2A4F0001000000000000000000012A4F001401120001AB0F067CD9F401EF770D01000E020BFE010000CBD8
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
|}
| style="vertical-align: middle; text-align: center;" |02 (2 bytes)
+
 
|-
+
{| class="nd-othertables_2" style="width:100%;"
| style="vertical-align: middle; text-align: center;" |Parameter Data
+
|+
| style="vertical-align: middle; text-align: center;" |63 00 (converted to decimal = 25344)
+
! colspan="4" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |AVL Data Packet
|-
+
|-
| style="vertical-align: middle; text-align: center;" |Parameter ID
+
! colspan="2" rowspan="1" style="width:50%; vertical-align: middle; text-align: center;" |AVL Data Packet Part
| style="vertical-align: middle; text-align: center;" |0b (Parameter ID #11 Eye Sensor #1 Pitch)
+
! rowspan="1" style="width:30%; vertical-align: middle; text-align: center;" |HEX Code Part
|-
+
! rowspan="1" style="width:20%; vertical-align: middle; text-align: center;" |Decoded
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
|-
| style="vertical-align: middle; text-align: center;" |01 (1 byte)
+
|
|-
+
| style="vertical-align: middle; text-align: center;" |Zero Bytes
| style="vertical-align: middle; text-align: center;" |Parameter Data
+
| style="vertical-align: middle; text-align: center;" |00 00 00 00
| style="vertical-align: middle; text-align: center;" |00 (converted to dec = 0 degrees)
+
|
|-
+
|-
| style="vertical-align: middle; text-align: center;" |Parameter ID
+
|
| style="vertical-align: middle; text-align: center;" |0c (Parameter ID #12 Eye sensor #1 Roll)
+
| style="vertical-align: middle; text-align: center;" |Data Field Length
|-
+
| style="vertical-align: middle; text-align: center;" |00 00 00 41
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
| style="vertical-align: middle; text-align: center;" |65
| style="vertical-align: middle; text-align: center;" |02 (2 bytes)
+
|-
|-
+
|
| style="vertical-align: middle; text-align: center;" |Parameter Data
+
| style="vertical-align: middle; text-align: center;" |Codec ID
| style="vertical-align: middle; text-align: center;" |af 00 (Little endian, converted to decimal signed 2's complement =175 degrees)
+
| style="vertical-align: middle; text-align: center;" |8E
|-
+
| style="vertical-align: middle; text-align: center;" |142
| style="vertical-align: middle; text-align: center;" |Parameter ID
+
|-
| style="vertical-align: middle; text-align: center;" |0d (parameter ID #13 low battery voltage indicator)
+
|
|-
+
| style="vertical-align: middle; text-align: center;" |Number of Data 1 (Number of Total Records)
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
| style="vertical-align: middle; text-align: center;" |01
| style="vertical-align: middle; text-align: center;" |01 (1 byte)
+
| style="vertical-align: middle; text-align: center;" |1
|-
+
|-
| style="vertical-align: middle; text-align: center;" |Parameter Data
+
| rowspan="18" style="vertical-align: middle; text-align: center;" |AVL DATA
| style="vertical-align: middle; text-align: center;" |00 (low battery voltage not detected)
+
| style="vertical-align: middle; text-align: center;" |Timestamp
|-
+
| style="vertical-align: middle; text-align: center;" |00 00 01 8D 14 5C F5 93
| style="vertical-align: middle; text-align: center;" |Parameter ID
+
| style="vertical-align: middle; text-align: center;" |2024/01/16 - 22:20:53.001
| style="vertical-align: middle; text-align: center;" |0e (Eye Sensor #1 battery voltage)
+
|-
|-
+
| style="vertical-align: middle; text-align: center;" |Priority
| style="vertical-align: middle; text-align: center;" |Parameter data length
+
| style="vertical-align: middle; text-align: center;" |00
| style="vertical-align: middle; text-align: center;" |02 (2 bytes)
+
| style="vertical-align: middle; text-align: center;" |0
|-
+
|-
| style="vertical-align: middle; text-align: center;" |Parameter Data
+
| style="vertical-align: middle; text-align: center;" |Longitude
| style="vertical-align: middle; text-align: center;" |0b 90 (Converted to decimal = 2960mV)
+
| style="vertical-align: middle; text-align: center;" |E4 2C A4 72
|-
+
| style="vertical-align: middle; text-align: center;" | -466827000
|}
+
|-
 
+
| style="vertical-align: middle; text-align: center;" |Latitude
 +
| style="vertical-align: middle; text-align: center;" |F1 F5 B9 4D
 +
| style="vertical-align: middle; text-align: center;" | -235637300
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Altitude
 +
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Angle
 +
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Satellites
 +
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Speed
 +
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Event IO ID
 +
| style="vertical-align: middle; text-align: center;" |2A 4F
 +
| style="vertical-align: middle; text-align: center;" |10831
 +
|-
 +
| style="vertical-align: middle; text-align: center;" | N of Total ID
 +
| style="vertical-align: middle; text-align: center;" |00 01
 +
| style="vertical-align: middle; text-align: center;" |1
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |N1 of One Byte IO
 +
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |N2 of Two Bytes IO
 +
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |N4 of Four Bytes IO
 +
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
 
 +
| style="vertical-align: middle; text-align: center;" |N8 of Eight Bytes IO
 +
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |NX of X Bytes IO
 +
| style="vertical-align: middle; text-align: center;" |00 01
 +
| style="vertical-align: middle; text-align: center;" |1
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |N’th IO ID - AVL ID.
 +
| style="vertical-align: middle; text-align: center;" |2A 4F
 +
| style="vertical-align: middle; text-align: center;" |10831
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Length of Variable Length IO
 +
| style="vertical-align: middle; text-align: center;" |00 14
 +
| style="vertical-align: middle; text-align: center;" |20
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Value of Variable Length IO
 +
| style="vertical-align: middle; text-align: center;" |01120001AB0F067CD9F401EF770D01000E020BFE
 +
| style="vertical-align: middle; text-align: center;" |
 +
|-
 +
|
 +
| style="vertical-align: middle; text-align: center;" |Number of Data 2 (Number of Total Records)
 +
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |1
 +
|-
 +
|
 +
| style="vertical-align: middle; text-align: center;" |CRC-16
 +
| style="vertical-align: middle; text-align: center;" |00 00 CB D8
 +
|
 +
|-
 +
|}
 +
 
 +
{| class="nd-othertables_2" style="width:100%;"
 +
|+
 +
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |lOST BEACONS (AVL ID - 10831)
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |01120001AB0F067CD9F401EF770D01000E020BFE
 +
|}
 +
 
 +
{| class="nd-othertables_2" style="width:100%;"
 +
|+
 +
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |AVL Data Packet
 +
|-
 +
! colspan="2" rowspan="1" style="width:50%; vertical-align: middle; text-align: center;" |AVL Data Packet Part
 +
! rowspan="1" style="width:30%; vertical-align: middle; text-align: center;" |HEX Code Part
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Protocol  ID
 +
| style="vertical-align: middle; text-align: center;" |01
 +
|
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Data  Length
 +
| style="vertical-align: middle; text-align: center;" |12
 +
| style="vertical-align: middle; text-align: center;" |18
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |Beacon RSSI Level
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
 +
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" | 1
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |AB
 +
| style="vertical-align: middle; text-align: center;" |  -85
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |0F
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor MAC address
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
 +
| style="vertical-align: middle; text-align: center;" |06
 +
| style="vertical-align: middle; text-align: center;" |6
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |7CD9F401EF77
 +
| style="vertical-align: middle; text-align: center;" |7CD9F401EF77
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |0D
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Low Battery
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
 +
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |1
 +
|-
 +
| style="vertical-align: middle; text-align: center;" | Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |0E
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Battery Voltage
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
 +
| style="vertical-align: middle; text-align: center;" |02
 +
| style="vertical-align: middle; text-align: center;" |2
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |0B FE
 +
| style="vertical-align: middle; text-align: center;" |3070
 +
|-
 +
|}
 +
 
 +
==== Found Beacons (AVL ID - 10829) ====
 +
{| class="nd-othertables_2" style="width:100%;"
 +
|+
 +
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |LOST & FOUND FEATURE
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Received data in hexadecimal stream:
 +
00000000000000418E010000018D1464ECA300E42CD682F1F4768402B1005A050003
 +
 
 +
2A4D0001000000000000000000012A4D001401120001D60F067CD9F401EF770D01000E020BFE010000E720
 +
|}
 +
 
 +
{| class="nd-othertables_2" style="width:100%;"
 +
|+
 +
! colspan="4" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |AVL Data Packet
 +
|-
 +
! colspan="2" rowspan="1" style="width:50%; vertical-align: middle; text-align: center;" |AVL Data Packet Part
 +
! rowspan="1" style="width:30%; vertical-align: middle; text-align: center;" |HEX Code Part
 +
! rowspan="1" style="width:20%; vertical-align: middle; text-align: center;" |Decoded
 +
|-
 +
|
 +
| style="vertical-align: middle; text-align: center;" |Zero Bytes
 +
| style="vertical-align: middle; text-align: center;" |00 00 00 00
 +
|
 +
|-
 +
|
 +
| style="vertical-align: middle; text-align: center;" |Data Field Length
 +
| style="vertical-align: middle; text-align: center;" |00 00 00 41
 +
| style="vertical-align: middle; text-align: center;" |65
 +
|-
 +
|
 +
| style="vertical-align: middle; text-align: center;" |Codec ID
 +
| style="vertical-align: middle; text-align: center;" |8E
 +
| style="vertical-align: middle; text-align: center;" |142
 +
|-
 +
|
 +
| style="vertical-align: middle; text-align: center;" |Number of Data 1 (Number of Total Records)
 +
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |1
 +
|-
 +
| rowspan="18" style="vertical-align: middle; text-align: center;" |AVL DATA
 +
| style="vertical-align: middle; text-align: center;" |Timestamp
 +
| style="vertical-align: middle; text-align: center;" |00 00 01 8D 14 64 EC A3
 +
| style="vertical-align: middle; text-align: center;" |2024/01/16 - 22:29:35.001
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Priority
 +
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Longitude
 +
| style="vertical-align: middle; text-align: center;" |E4 2C D6 82
 +
| style="vertical-align: middle; text-align: center;" | -466827000
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Latitude
 +
| style="vertical-align: middle; text-align: center;" |F1 F4 76 84
 +
| style="vertical-align: middle; text-align: center;" | -235637300
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Altitude
 +
| style="vertical-align: middle; text-align: center;" |02 B1
 +
| style="vertical-align: middle; text-align: center;" |689
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Angle
 +
| style="vertical-align: middle; text-align: center;" |00 5A
 +
| style="vertical-align: middle; text-align: center;" |90
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Satellites
 +
| style="vertical-align: middle; text-align: center;" |05
 +
| style="vertical-align: middle; text-align: center;" |5
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Speed
 +
| style="vertical-align: middle; text-align: center;" |00 03
 +
| style="vertical-align: middle; text-align: center;" |3
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Event IO ID
 +
| style="vertical-align: middle; text-align: center;" |2A 4D
 +
| style="vertical-align: middle; text-align: center;" |10829
 +
|-
 +
| style="vertical-align: middle; text-align: center;" | N of Total ID
 +
| style="vertical-align: middle; text-align: center;" |00 01
 +
| style="vertical-align: middle; text-align: center;" |1
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |N1 of One Byte IO
 +
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |N2 of Two Bytes IO
 +
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |N4 of Four Bytes IO
 +
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
 
 +
| style="vertical-align: middle; text-align: center;" |N8 of Eight Bytes IO
 +
| style="vertical-align: middle; text-align: center;" |00 00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |NX of X Bytes IO
 +
| style="vertical-align: middle; text-align: center;" |00 01
 +
| style="vertical-align: middle; text-align: center;" |1
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |N’th IO ID - AVL ID.
 +
| style="vertical-align: middle; text-align: center;" |2A 4D
 +
| style="vertical-align: middle; text-align: center;" |10829
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Length of Variable Length IO
 +
| style="vertical-align: middle; text-align: center;" |00 14
 +
| style="vertical-align: middle; text-align: center;" |20
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Value of Variable Length IO
 +
| style="vertical-align: middle; text-align: center;" |01120001D60F067CD9F401EF770D01000E020BFE
 +
| style="vertical-align: middle; text-align: center;" |
 +
|-
 +
|
 +
| style="vertical-align: middle; text-align: center;" |Number of Data 2 (Number of Total Records)
 +
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |1
 +
|-
 +
|
 +
| style="vertical-align: middle; text-align: center;" |CRC-16
 +
| style="vertical-align: middle; text-align: center;" |00 00 E7 20
 +
|
 +
|-
 +
|}
 +
 
 +
{| class="nd-othertables_2" style="width:100%;"
 +
|+
 +
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |FOUND BEACONS (AVL ID - 10829)
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |01120001D60F067CD9F401EF770D01000E020BFE
 +
|}
 +
 
 +
{| class="nd-othertables_2" style="width:100%;"
 +
|+
 +
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |AVL Data Packet
 +
|-
 +
! colspan="2" rowspan="1" style="width:50%; vertical-align: middle; text-align: center;" |AVL Data Packet Part
 +
! rowspan="1" style="width:30%; vertical-align: middle; text-align: center;" |HEX Code Part
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Protocol  ID
 +
| style="vertical-align: middle; text-align: center;" |01
 +
|
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Data  Length
 +
| style="vertical-align: middle; text-align: center;" |12
 +
| style="vertical-align: middle; text-align: center;" |18
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |Beacon RSSI Level
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
 +
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" | 1
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |D6
 +
| style="vertical-align: middle; text-align: center;" |  -42
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |0F
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor MAC address
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
 +
| style="vertical-align: middle; text-align: center;" |06
 +
| style="vertical-align: middle; text-align: center;" |6
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |7CD9F401EF77
 +
| style="vertical-align: middle; text-align: center;" |7CD9F401EF77
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |0D
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Low Battery
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
 +
| style="vertical-align: middle; text-align: center;" |01
 +
| style="vertical-align: middle; text-align: center;" |1
 +
|-
 +
| style="vertical-align: middle; text-align: center;" | Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |00
 +
| style="vertical-align: middle; text-align: center;" |0
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter ID
 +
| style="vertical-align: middle; text-align: center;" |0E
 +
| style="vertical-align: middle; text-align: center;" |EYE Sensor Battery Voltage
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter Data Length
 +
| style="vertical-align: middle; text-align: center;" |02
 +
| style="vertical-align: middle; text-align: center;" |2
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Parameter Data
 +
| style="vertical-align: middle; text-align: center;" |0B FE
 +
| style="vertical-align: middle; text-align: center;" |3070
 +
|-
 +
|}
 +
</div>
 +
</div>
 +
==<p style="font-size:32px><span style="color:#0054A6">Sensor advertising and EYE Sensor Protocol overview</span>==
 +
<br>
 +
[[File:Sensors data.png|center]]
 +
<br>
 +
<div class="mw-collapsible mw-collapsed">
 +
===<p style="font-size:24px><span style="color:#0054A6">Beacon and sensors data</span>===
 +
<div class="mw-collapsible-content">
 +
[[File:Beacon and sensors data.png|center|1000x1000px|alt=|frameless]]
 +
<br>
 +
<br>
 +
</div>
 +
</div>
 +
<div class="mw-collapsible mw-collapsed">
 +
===<p style="font-size:24px><span style="color:#0054A6">Protocol description</span>===
 +
<div class="mw-collapsible-content">
 +
At the highest-level Bluetooth® LE advertising packet consists of Advertising Indication and Scan Response. Both packets can be maximum of 31 bytes in size. Advertising Indication packet is always broadcasted when Scan Response is broadcasted only if Observer device requests it by using Active Scan.
 +
<br><br>
 +
BTSMP1 uses Advertising Indication to send beacon data which can be configured to select between iBeacon and Eddystone protocols or to be disabled at all. In that case, data which is shown as Scan Response in protocol overview will be sent as Advertising Indication without Scan Response following it.
 +
<br><br>
 +
Scan Response is used to send device name and manufacturer specific data. Manufacturer specific data includes Teltonika Company ID (0x089A) and protocol version (0x01). It is followed by Flag Encoded Data (Table 1) and Extended Data (Table 2). Later on, protocol will be highly configurable in and will allow to disable/enable sending of device name or any sensor value allowing to reduce size of the packet being sent.
 +
<br><br>
 +
 
 +
Teltonika BTSX devices are transmitting one or two packets depending on the selected protocol. Broadcast packet + Scan response packet.
 +
 
 +
A scan response packet is sent when an active scan is used, within the BLE layer of communication.
 +
The default for our FM devices and many other applications for example our EYE Appication or nRF connect Application is an active scan.
 +
 +
There are three protocols, with the following packets:
 +
 
 +
'''1.iBeacon + EYE Sensors'''
 +
 
 +
'''2.Eddystone + EYE Sensors'''
 +
 
 +
For '''iBeacon + EYE Sensors''' and '''Eddystone + EYE Sensors''' protocols only iBeacon/Eddystone packet is broadcasted and will be seen by both active and passive scans, to see the EYE Sensors packet you need to use an active scan.
 +
In other words in an environment where no BLE devices are scanning with an active scan or in case when there are no scanning devices at all, only the iBeacon/Eddystone packet will be sent by the BTS device to conserve energy.
 +
 
 +
'''3. EYE Sensors'''
 +
 
 +
With '''EYE Sensors''' protocol, the EYE Sensor packet becomes broadcast.
 +
In other words, in an environment where no BLE devices are scanning with an active scan or in case when there are no scanning devices at all EYE Sensors packet will be sent by the BTS device.
 +
 
 +
More Information on
 +
[https://support.digitalmatter.com/support/solutions/articles/16000100684-active-vs-passive-bluetooth-scanning| Active vs passive scans]
 +
<br>
 +
<br>
 +
Device Name has the following default value for Beacon – ID1_XXXXXXX
 +
<br>
 +
<div style="display:inline-table">
 +
{| class="nd-othertables_2" style="width:125%;" ;
 +
|+'''Table 1. Flag Encoded Date'''
 +
|-
 +
!Data!! Size (Bytes)!!Description
 +
|-
 +
|Flags||1||Each set bit (0-7) means the presence of value (0-7). Bits:
 +
<br>0 – Temperature value presence
 +
<br>1 – Humidity value presence
 +
<br>2 – Magnetic sensor presence
 +
<br>3 – Magnetic sensor state (1 magnetic field is detected/0 magnetic field is not detected) Valid value is present only if bit 2 flag is set.
 +
<br>4 – Movement sensor counter
 +
<br>5 – Movement sensor angle
 +
<br>6 – Low Battery indication (if set to 1 low battery voltage detected)
 +
<br>7 – Battery voltage value presence
 +
|-
 +
|Value 0||2||Temperature
 +
<br>Value in Celsius / 100
 +
<br>NOTE: present only if bit 0 is set, otherwise is not being sent
 +
|-
 +
|Value 1 ||1||Humidity
 +
<br>Value in percent
 +
<br>NOTE: present only if bit 1 is set, otherwise is not being sent
 +
|-
 +
|Value 2||2||Movement Sensor counter
 +
<br>Most significant bit indicates movement state and 15 least significant bits represent count of movement events.
 +
<br>NOTE: present only if bit 4 is set, otherwise is not being sent
 +
|-
 +
|Value 3 ||3||Movement sensor angle
 +
<br>Most significant byte – pitch (-90/+90)
 +
<br>Two least significant bytes – roll (-180/+180)
 +
<br>NOTE: present only if bit 5 is set, otherwise is not being sent
 +
|-
 +
|Value 4||1|| Battery Voltage
 +
<br>Battery voltage in mV = 2000 + VALUE * 10
 +
<br>NOTE: present only if bit 7 is set, otherwise is not being sent
 +
|}
 +
</div>
 +
</div>
 +
<div class="mw-collapsible mw-collapsed">
 +
===<p style="font-size:24px><span style="color:#0054A6">GATT Characteristics</span>===
 +
<div class="mw-collapsible-content">
 +
{| class="wikitable" style="width: 100%; background-color: white; border-bottom: 2px solid #0054A6;"
 +
 
 +
|-
 +
 
 +
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6; width: 20px;" | Name
 +
 
 +
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6; width: 280px;" | Service UUID
 +
 
 +
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6; width: 280px;" | Characteristic UUID
 +
 
 +
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6;" | Data Type
 +
 
 +
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6;" | Min
 +
 
 +
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6;" | Max
 +
 
 +
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6; width: 120px" | Default Value
 +
 
 +
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6;" | Notes
 +
 
 +
|-
 +
 
 +
| Device Name || e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0016-7df2-4d4e-8e6d-c611745b92e9  || ASCII || 0 || 12 || Unique for each device || -
 +
 
 +
|-
 +
 
 +
| Tx Power Lever || 1804 || 2a07 || SINT8 || -14 || 8 || 2 || Possible values: -14, -11, -8, -5, -2, 2, 4, 8
 +
 
 +
|-
 +
 
 +
| Protocol Type|| e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0001-7df2-4d4e-8e6d-c611745b92e9 || UINT8 || 0 || 4*
 +
 
 +
 
 +
<small>*Max 2 with 01.02.10+ firmware</small>
 +
| 1 for EYE_Beacon, <br>4 for EYE_Sensor*
 +
 
 +
 
 +
<small>*with 01.02.10+ firmware 1 for both EYE_Beacon & EYE_Sensor</small>
 +
| 0 - iBeacon <br>1 - Eddystone <br>2 - EYE Sensor <br>3 - iBeacon + EYE Sensor* <br>4 - Eddystone + EYE Sensor*
 +
 
 +
 
 +
<small>*01.02.10+ sensors are enabled over ''Activate / Deactivate Sensors''</small>
 +
|-
 +
|Activate / Deactivate Sensors*
 +
 
 +
 
 +
<small>*from 01.02.10+ firmware</small>
 +
|e61c0000-7df2-4d4e-8e6d-c611745b92e9
 +
|e61c0021-7df2-4d4e-8e6d-c611745b92e9
 +
|UINT8
 +
|0
 +
|15
 +
 
 +
(0b1111)
 +
|4 (0b0100) for EYE_Beacon, <br>15 (0b1111) for EYE_Sensor
 +
|(LSb) bit 0 – Temperature
 +
 
 +
Bit 1 – Humidity
 +
 
 +
Bit 2 – Magnetic
 +
 
 +
Bit 3 - Movement
 +
 
 +
 
 +
E.g. EYE_Sensor disabled movement & enabled temperature, humidity, magnetic sensors 7 (0b0111)
 +
|-
 +
 
 +
| Advertising Interval|| e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0002-7df2-4d4e-8e6d-c611745b92e9 || UINT16 || 1000 || 10000 || 5000 || miliseconds
 +
 
 +
|-
 +
 
 +
| Sub Advertising Interval || e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0003-7df2-4d4e-8e6d-c611745b92e9 || UINT16 || 20 || 1000 || 100 || Used by repeats, miliseconds
 +
 
 +
|-
 +
 
 +
| Advertising Repeats || e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0004-7df2-4d4e-8e6d-c611745b92e9 || UINT16 || 1 || 10 || 1 || Repeats work only if Advertising Interval is more than 2000 ms and Repeats set to more than 1
 +
 
 +
|-
 +
 
 +
| iBeacon ID ||  e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0005-7df2-4d4e-8e6d-c611745b92e9 || BYTE ARRAY || 20 bytes || 20 bytes || Unique for each device || 16 B - UUID<br>2 B - major<br>2 B - minor
 +
 
 +
|-
 +
 
 +
| Eddystone ID || e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0006-7df2-4d4e-8e6d-c611745b92e9 || BYTE ARRAY || 16 bytes || 16 bytes || Unique for each device || 10 B - Namespace<br>6 B - Instance
 +
|-
 +
|Command
 +
|e61c0000-7df2-4d4e-8e6d-c611745b92e9
 +
|e61c0007-7df2-4d4e-8e6d-c611745b92e9
 +
| colspan="5" |[[EYE SENSOR / BTSMP1#Command characteristic|Command characteristic]]
 +
|-
 +
 
 +
|Password||e61c0000-7df2-4d4e-8e6d-c611745b92e9|| e61c0008-7df2-4d4e-8e6d-c611745b92e9 ||BYTE ARRAY|| 6 bytes||6 bytes||123456||Always 6 Digits
 +
 
 +
|-
 +
 
 +
|Sensor Interval||e61c0000-7df2-4d4e-8e6d-c611745b92e9|| e61c0009-7df2-4d4e-8e6d-c611745b92e9||UINT16||0||10000||1000||miliseconds
 +
 
 +
|-
 +
 
 +
|Event Interval||e61c0000-7df2-4d4e-8e6d-c611745b92e9|| e61c000a-7df2-4d4e-8e6d-c611745b92e9||UINT16||0||10000||1000 || miliseconds
 +
 
 +
|-
 +
 
 +
|Event Duration||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c000b-7df2-4d4e-8e6d-c611745b92e9||UINT8||0||30 ||30||seconds
 +
 
 +
|-
 +
 
 +
| Temperature Event||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c000c-7df2-4d4e-8e6d-c611745b92e9||UINT8 ||0||2|| 2||0 - on entrance<br>1 - on exit<br>2 - no event
 +
 
 +
|-
 +
 
 +
|Temperature Low||e61c0000-7df2-4d4e-8e6d-c611745b92e9 ||e61c000d-7df2-4d4e-8e6d-c611745b92e9||INT8||-40|| 85||-20||celsius
 +
 
 +
|-
 +
 
 +
|Temperature High|| e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c000e-7df2-4d4e-8e6d-c611745b92e9||INT8||-40||85 ||50||celsius
 +
 
 +
|-
 +
 
 +
| Humidity Event||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c000f-7df2-4d4e-8e6d-c611745b92e9||UINT8||0||2||2||0 - on entrance<br>1 - on exit<br>2 - no event
 +
 
 +
|-
 +
 
 +
|Humidity Low||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c0010-7df2-4d4e-8e6d-c611745b92e9 || UINT8||0||100||15||%
 +
 
 +
|-
 +
 
 +
|Humidity High ||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c0011-7df2-4d4e-8e6d-c611745b92e9||UINT8||0||100||50||%
 +
 
 +
|-
 +
 
 +
|Movement Event||e61c0000-7df2-4d4e-8e6d-c611745b92e9 || e61c0012-7df2-4d4e-8e6d-c611745b92e9||UINT8||0||2||2||0 - on entrance<br>1 - on exit<br>2 - no event
 +
 
 +
|-
 +
 
 +
|Movement Start ||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c0013-7df2-4d4e-8e6d-c611745b92e9|| UINT16||0||300||5||seconds
 +
 
 +
|-
 +
 
 +
|Movement Stop||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c0014-7df2-4d4e-8e6d-c611745b92e9|| UINT16||0||300||5 ||seconds
 +
 
 +
|-
 +
 
 +
|Magnetic Event||e61c0000-7df2-4d4e-8e6d-c611745b92e9||e61c0015-7df2-4d4e-8e6d-c611745b92e9||UINT8||0||2|| 2||0 - on entrance <br> 1 - on exit <br> 2 - no event
 +
|-
 +
| Password Counter
 +
|e61c0000-7df2-4d4e-8e6d-c611745b92e9
 +
| e61c0019-7df2-4d4e-8e6d-c611745b92e9
 +
|UINT8
 +
|0 (counter)
 +
|10 (counter)
 +
| 0
 +
|Byte 0 – counter,
 +
 
 +
Byte 1 and 2 - timeout
 +
|-
 +
|Master Password (PUK)
 +
|e61c0000-7df2-4d4e-8e6d-c611745b92e9
 +
|e61c0020-7df2-4d4e-8e6d-c611745b92e9
 +
| UINT8
 +
|8 bytes
 +
|8 bytes
 +
|MAC address dependency
 +
|Byte array
 +
|-
 +
|Manufacturer sleep (Hibernate mode)
 +
|e61c0000-7df2-4d4e-8e6d-c611745b92e9
 +
|e61c0018-7df2-4d4e-8e6d-c611745b92e9
 +
|UINT8
 +
|0
 +
|1
 +
|1
 +
|0 – sleep disabled,
 +
 
 +
1 – sleep enabled
 +
|-
 +
|User ADV Spam Duration
 +
|e61c0000-7df2-4d4e-8e6d-c611745b92e9
 +
|e61c0022-7df2-4d4e-8e6d-c611745b92e9
 +
|UINT16
 +
|1
 +
|300
 +
|30
 +
|WakeUp Advertising
 +
 
 +
Spam Duration in seconds
 +
|-
 +
|RSSI Calibration Value
 +
|e61c0000-7df2-4d4e-8e6d-c611745b92e9
 +
|e61c0023-7df2-4d4e-8e6d-c611745b92e9
 +
|INT8
 +
|<nowiki>-100</nowiki>
 +
|127
 +
| 127
 +
|RSSI value in dBm
 +
 
 +
127  – Use default calib. table
 +
|-
 +
 
 +
|Manufacturer||180A||2A29||BYTE ARRAY||-||-||Not Configurable ||Read Only. Ex. "Teltonika"
 +
 
 +
|-
 +
 
 +
| Model|| 180A||2A24|| BYTE ARRAY|| -||-|| Not Configurable||Read Only. Ex. "BTSID1"
 +
 
 +
|-
 +
 
 +
|Serial||180A||2A25 ||BYTE ARRAY||-||-||Not Configurable ||Not used
 +
 
 +
|-
 +
 
 +
| Hardware||180A|| 2A27 ||BYTE ARRAY||-||-||Not Configurable||Read Only. Ex. "Table:1 Volt:325
 +
 
 +
|-
 +
 
 +
|Firmware|| 180A ||2A26||BYTE ARRAY||-||-||Not Configurable||Read Only. Ex. "1.1.0-beta"
 +
 
 +
|-
 +
 
 +
| System ID ||180A||2A23||BYTE ARRAY||-||-|| Not Configurable||Not used
 +
 
 +
|-
 +
 
 +
|MAC||180A||652143dc-dec6-4fb1-bd46-3e919d2410a6 || BYTE ARRAY||6||6||Not Configurable||Read Only. ex. 112233445566 -> 11:22:33:44:55:66
 +
 
 +
|-
 +
 
 +
|Scan Response Data ||e61c0000-7df3-4d4e-8e6d-c611745b92e9|| e61c0001-7df3-4d4e-8e6d-c611745b92e9||BYTE ARRAY||17 || 17||Not Configurable ||Scan Response Data, see picture for detail view of data structure
 +
 
 +
|}
 +
 
 +
[[File:Lentele0603.png|800px|frameless|center]]
 +
</div>
 +
</div>
 +
<div class="mw-collapsible mw-collapsed">
 +
===<p style="font-size:24px"><span style="color:#0054A6">Command Characteristic</span>===
 +
<div class="mw-collapsible-content">
 +
{| class="wikitable" style="width: 100%; background-color: white; border-bottom: 2px solid #0054A6;"
 +
|-
 +
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6; width: 20px;" |Command's name
 +
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6; width: 280px;" |Data to send
 +
! style="color: #0054A6; background-color: white; border-bottom: 2px solid #0054A6; width: 280px;" |Description
 +
|-
 +
|Write to flash||0x0010|| Writes set parameters to flash
 +
|-
 +
|General boot||0x0011||Enter boot mode
 +
|-
 +
|Instant reset||0x0012||Software reset
 +
|-
 +
|Reset after connection||0x0013||Reset after disconnect
 +
|-
 +
|Get hw voltage||0x0014||Sets detected hw voltage in response data
 +
|-
 +
|Keep connection alive||0x0015|| Resets disconnect timer
 +
|-
 +
|Restore defaults||0x0016||Sets all configurable parameters to default values
 +
|}
 +
</div>
 +
</div>
 +
<div class="mw-collapsible mw-collapsed">
 +
===<p style="font-size:24px"><span style="color:#0054A6">EYE Sensor Bluetooth® frame parsing example</span>===
 +
<div class="mw-collapsible-content">
 +
{| class="nd-othertables_2" style="width:100%;"
 +
|+
 +
! colspan="3" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |Unparsed data
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#0048BA">02</span><span style="background:#B0BF1A">01</span><span style="background:#7CB9E8">06</span><span style="background:#C0E8D5">1A</span><span style="background:#B284BE">FF</span><span style="background:#72A0C1">4C00</span><span style="background:#EDEAE0">0215</span><span style="background:#C46210">FFFFFFFF0B8C404510C655AAB636EBEF</span><span style="background:#EFDECD">BB70</span><span style="background:#E52B50">0055</span><span style="background:#FFF600">02</span><span style="background:#03C03C">0C</span><span style="background:#FF3800">09</span><span style="background:#FFBF00">4D50315F31323334353637</span><span style="background:#FF7E00">0E</span><span style="background:#3DDC84">FF</span><span style="background:#008000">9A08</span><span style="background:#00FFFF">01</span><span style="background:#D0FF14">B7</span><span style="background:#00FF00">08B4</span><span style="background:#007FFF">12</span><span style="background:#F4C2C2">0CCB</span><span style="background:#BFFF00">0BFFC7</span><span style="background:#00BFFF">67</span>
 +
|}
 +
<br>
 +
{| class="nd-othertables_2" style="width:100%;"
 +
|+
 +
! colspan="4" style="border-bottom: 2px solid #0054A6; vertical-align: middle; text-align: center;" |Parsed data
 +
|-
 +
! colspan="2" rowspan="1" style="width:33%; vertical-align: middle; text-align: center;" |Parameter
 +
! rowspan="1" style="width:33%; vertical-align: middle; text-align: center;" |HEX Code Part
 +
! rowspan="1" style="width:33%; vertical-align: middle; text-align: center;" |Actual Value
 +
|-
 +
| rowspan="50" style="vertical-align: middle; text-align: center;" |
 +
| style="vertical-align: middle; text-align: center;" |Length
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#0048BA">02</span>
 +
|
 +
|-
 +
 
 +
| style="vertical-align: middle; text-align: center;" |Type
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#B0BF1A">01</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" | Flags
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#7CB9E8">06</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" | Length
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#C0E8D5">1A</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Type
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#B284BE">FF</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Apple company identifier (big endian)
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#72A0C1">4C00</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Beacon type
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#EDEAE0">0215</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |UUID
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#C46210">FFFFFFFF0B8C404510C655AAB636EBEF</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" | Major
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#EFDECD">BB70</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Minor
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#E52B50">0055</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Power
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#FFF600">02</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Length
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#03C03C">0C</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Type
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#FF3800">09</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Device name
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#FFBF00">4D50315F31323334353637</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Length
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#FF7E00">0E</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Type
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#3DDC84">FF</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Teltonika company ID (big endian)
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#008000">9A08</span>
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Protocol version
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#00FFFF">01</span>
 +
|
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Flags
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#D0FF14">B7</span>
 +
|Raw value example 0xB7. Data has to be interpretated as binary value.
 +
In this example would be (MSB)<span style="background:#B284BE">1</span>011 011<span style="background:#00FFFF">1</span>(LSB) and is parsed from least significant byte(LSB).
 +
 
 +
 
 +
0 – Temperature value presence. <span style="background:#00FFFF">1</span> Means device is reading and transmitting temperature value.
 +
 
 +
1 – Humidity value presence. 1 Means device is reading and transmitting humidity value.
 +
 
 +
2 – Magnetic sensor presence. 1 Means device is reading and transmitting Magnetic sensor value.
 +
 
 +
3 – Magnetic sensor state (1 magnetic field is detected/0 magnetic field is not detected) Valid value is present only if bit 2 flag is set.
 +
 
 +
4 – Movement sensor counter. 1 Means device is reading and transmitting movement state and count values.
 +
 
 +
5 – Movement sensor angle. 1 Means device is reading and transmitting angle roll and pitch values.
 +
 
 +
6 – Low Battery indication. 0 – Means device battery is from 100 to 15 % (When value changes to 1 Battery level is lower than 15 %.
 +
 
 +
7 – Battery voltage value presence. <span style="background:#B284BE">1</span> Means device is reading and transmitting battery voltage value.
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Temperature
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#00FF00">08B4</span>
 +
|Raw value example 0x08B4 hex, 2228 dec.
 +
 
 +
Raw value needs to be divided by 100.
 +
 
 +
'''Real temperature''' is 22,28 Celsius.
 +
|-
 +
| style="vertical-align: middle; text-align: center;" | Humidity
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#007FFF">12</span>
 +
|Raw value example 0x12 hex, 18 dec.
 +
Decimal value is humidity in percent. Humidity 18 %
 +
|-
 +
| style="vertical-align: middle; text-align: center;" | Movement
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#F4C2C2">0CCB</span>
 +
| (MSB)0000 1100 1100 1011(LSB) binary
 +
0 - Most significant byte(MSB) represents '''Movement status'''. In this case device is not moving 0. If it was 1 device is moving.
 +
 
 +
000 1100 1100 1011 – represent detected movements count 3275 decimal value means device has detected total 3275 movement events,
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Angle
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#BFFF00">0BFFC7</span>
 +
|0B – Most significant byte represents '''device pitch'''. Device pitch can be from -90 to 90 degrees.
 +
In this example device pitch is 0000 1011 (2's complement) = 11° degrees.
 +
 
 +
 
 +
FFC7– Two least significant bytes represent '''device roll'''. Device roll can be from -180 to 180 degrees.
 +
 
 +
In this example device Roll is 1111 1111 1100 0111 (2's complement) = -57° degrees
 +
|-
 +
| style="vertical-align: middle; text-align: center;" |Battery voltage
 +
| style="vertical-align: middle; text-align: center;" |<span style="background:#00BFFF">67</span>
 +
|'''Battery voltage –''' raw value example 0x67 hex. Decimal value of parameter 103'''.''' To calculate battery voltage need to use calculation 2000 + (VALUE * 10). In this case battery voltage value 2000+(103x10)= 3030 mV
 +
|}
 +
</div>
 +
</div>
 
==<p style="font-size:32px"><span style="color:#0054A6">Safety information</span></p>==
 
==<p style="font-size:32px"><span style="color:#0054A6">Safety information</span></p>==
 
This message contains information on how to operate BTSID1 safely. By following these requirements and recommendations, you will avoid dangerous situations. You must read these instructions carefully and follow them strictly before operating the device!
 
This message contains information on how to operate BTSID1 safely. By following these requirements and recommendations, you will avoid dangerous situations. You must read these instructions carefully and follow them strictly before operating the device!
Line 2,461: Line 3,447:
 
|<small>(Updated on: {{{datasheet_date|2023-03-13}}})</small>
 
|<small>(Updated on: {{{datasheet_date|2023-03-13}}})</small>
 
|}
 
|}
 
[[Category:Sensors]]
 

Latest revision as of 09:33, 11 April 2024

Main Page > Advanced Trackers > EYE SENSOR Test
BTSID1

GNSS/GSM/Bluetooth® tracker with internal GNSS/GSM antennas and internal battery.

Toggle collapse/expand all content

Introduction


Certifications & Approvals

Product Specification

Hibernated versions of EYE devices simplify stock management for our partners while maximizing battery life.
1. Accelerated delivery times:

By stocking up on hibernated EYE devices, you ensure readiness to deploy EYE devices with full battery capacity at any moment. This proactive approach provides fastest possible service, increases your reputation for efficiency and positions you as an industry frontrunner, enhancing your competitive edge.

2. Mitigated project risks:

BTSMP1-datasheet-2023-12-18.2.png

In scenarios where projects encounter unforeseen challenges, our hibernated EYE devices offer a buffer. Hibernate feature allows to safeguard your investments and potential revenue streams. This means that even if projects encounter delays or complications, you can still deploy EYE devices with full battery capacity, ensuring optimal performance when the time is right.

Downloads

Manual & Documentation

Pdf icon.png BTSID1 Datasheet (EN) (Updated on: 2020-11-30)
Pdf icon.png BTSID1 Quick Manual (EN) (Updated on: 2020-11-30)
Image icon.png BTSID1 Wiring scheme (EN)

Driver & Utility

Zip icon.png PC drivers
Zip icon.png Firmware
Zip icon.png Configurator

    External links

    https://teltonika-gps.com/products/accessories/sensors-beacons

    Downloads

    Manual & Documentation

    Pdf icon.png FMB130 Datasheet (EN) (Updated on: 2020-11-30)
    Pdf icon.png FMB130 Quick Manual (EN) (Updated on: 2020-11-30)
    Image icon.png FMB130 Wiring scheme (EN)

    Driver & Utility

    Zip icon.png PC drivers (Updated on: 2020-11-30)


      Introduction

      Wireless solutions open up new horizons for your business and help to keep an eye on your assets. Discover our brand-new and certified Bluetooth® Low Energy ID sensor model from Teltonika with robust waterproof casing and a long-lifetime battery. The model is designed for a low-cost fast and easy configuration and integration to save precious time, resources, and ensure accountability.

      BTSMP1-datasheet-2023-12-18.2.png

      About BTSMP1

      Perfect for traceability use cases, delivery tracking, monitoring of various movable objects in logistics (trailers, containers), agriculture (tractor attachments), and constructions (tools and inventory). Sensors data makes it especially suitable for cold chain refrigerator use cases. The built-in accelerometer can detect item movement, pitch and roll of the device. Magnet detection can be used for wireless open/close detection and notifications such as trailer door events, etc. EYE sensor supports iBeacon and Eddystone protocols. The device is fully compatible with the Teltonika firmware platform which provides extended functionality. Configure, scan, and update anytime anywhere with a dedicated Teltonika mobile app

      Product Specification

      Features

      Functionalities
      Beacon ID, LED, Temperature, Humidity, Accelerometer, Magnet detection
      Dimensions and weight
      Dimensions 56,6 mm x 38 mm x 13 mm
      Weight 18g
      Battery and power
      Model CR2450
      Type Type Lithium, Manganese Dioxide
      Total Capacity 600 mAh
      Replaceable No
      Battery life (Tx=2 dBm; interval: 3 s) 2.5+ years
      Battery life (Tx=2 dBm; interval: 5 s), default 4+ years
      Battery life (Tx=2 dBm; interval: 10 s) 5+ years
      Connectivity
      Bluetooth® Bluetooth® 4.2 compliant,

      Bluetooth® 5.2 certified

      Range 80 m
      Available transmission power levels Up to 8 dBm
      Sensitivity -88 dBm
      Casing
      Protection IP67
      Mounting Two holes to screw/leash/strip, tape
      Customization Custom logo upon request (Special conditions)
      Environmental Requirements
      Humidity (non-condensing) From 0% to 100%
      Operational temperature -20°C / +60°C (-4°F / +140°F)
      Protocols compatibility
      iBeacon Yes

      *iOS doesn't show devices with iBeacon protocol

      Eddystone Yes
      EYE Sensor Yes

      Dimensions

      Eye dimensions.png

      Value-adding Features

      Hibernate mode

      Hibernated mode means that the EYE device is OFF when shipping from the factory, preserving battery life. PLEASE NOTE that EYE devices are available in two modes: factory-activated (ON) or Hibernated (OFF). You may order the device version which better suits your needs. Order codes are described on eye page

      Value of hibernate mode

      Hibernated versions of EYE devices simplify stock management for our partners while maximizing battery life.
      1. Accelerated delivery times:

      By stocking up on hibernated EYE devices, you ensure readiness to deploy EYE devices with full battery capacity at any moment. This proactive approach provides fastest possible service, increases your reputation for efficiency and positions you as an industry frontrunner, enhancing your competitive edge.

      2. Mitigated project risks:

      In scenarios where projects encounter unforeseen challenges, our hibernated EYE devices offer a buffer. Hibernate feature allows to safeguard your investments and potential revenue streams. This means that even if projects encounter delays or complications, you can still deploy EYE devices with full battery capacity, ensuring optimal performance when the time is right.

      How to activate hibernated eye device?

      Attach any magnet to sleeping device and wait for LED to blink.
      NOTE: ANY MAGNET CAN BE USED
      520746 Magnet EYE gif v1.6-min.gif
      Now device is discoverable, scannable, connectable via BLE.

      How to send the device to hibernate mode?

      If you want to put the EYE device back to hibernate mode after accidental activation or simply pause its use, you may do that following steps below:
      Step 1. While connected and in overview tap "Send device to sleep":
      Step 2. Confirm your selection:
      Step 3. Wait for EYE App to disconnect:
      Device screen 1.2.8 2.jpgScreenshot 20230509 173323 EYE APP.jpgScreenshot 20230512 164509 Gallery.jpg

      Can All devices hibernate?

      1. All EYE Sensors with firmware version starting from 1.2.9.R.8 can hibernate.

      2. Only new EYE Beacons bought with order codes that have hardware modification can hibernate standard codes are available in eye page, for special order codes consult your sales manager.

      Mounting recomendations

      Neweyemouning.png
      New mounting recomendations 1.png

      EYE App Configuration

      Devices work constantly and are ready to perform out of the box. Default basic Sensor settings are set to:
      • Transmitting at 2 dBm power.
      • Data advertising at 1 second intervals.
      • Eddystone and Sensors protocol

      If you would like to change these settings you will need to:
      1) Download and install EYE APP - Teltonika application to change sensor settings.
      QR.jpg

      Eye App Overview

      With the application you will be able to scan for visible Teltonika EYE devices, check their statuses or connect for configuration or firmware update.

      1.1.jpg 2.1.jpg Correct1.1.png 4.1.jpg

      Devices in view

      In this window you will see all visible devices. You have options to see devices in Short list Shortlist.jpg or in default list. When looking at devices in default list you will be able to open Detailed view Detailed.jpg of devices and check transmitted data statuses. Additionaly if you are looking for specific devices you will be able to use Search Search button eye app.jpg function to filter search options. When in this window select a device of your choice to connect and after passing pin code (default pin code is 123456) you will go to device overview window.

      Overview window

      In overview window you can see device details, check firmware version and update if available, go to device configuration settings and download the configuration. If you select to Configure device new window will open with Basic and Advanced settings. Other actions include changing the device PIN code and putting the device to sleep. A device in sleep mode will no longer be findable or connectable via the app. To wake it up, you need to attach a magnet and look for a green LED flashing.


      Configure window

      In this window you can check and change device configuration settings. In main tab Basic Settings you can change main settings. Change Device name, Power signal strength, Advertising interval and Packet transmission type*. For more settings go to Advanced settings tab to enable various events.

      Advanced configuration window

      Advanced configuration: Beacon Settings

      IBeacon ID settings.png Eddystone ID settings.png

      In Advanced settings tab you can can configure EYE beacon sensor parameters: Beacon information (iBeacon ID*, Eddystone ID). UUID/MINOR/MAJOR parameter can be changed for iBeacon ID*. Namespace ID/Instance ID can be changed for Eddystone ID. If you scroll down you will be able to adjust Sensor reading interval and event settings of the EYE Sensor Note: iOS doesn't show devices with iBeacon protocol

      Advanced configuration: Sensor reading and events

      !NOTE: These settings are no longer available after EYE APP 1.2.0-60 update.
      
      Magnetic field event.png Humidity event.png Temperature event.png Movement event2.png
      Magnetic field event - adjust if the device generates events based on detection or exit (loss) of the magnet. Humidity event - adjust if the device generates events based on entrance or exit to selected humidity range Temperature event - adjust if the device generates events based on entrance or exit to selected temperature range Movement event - adjust movement/stop detection and timeouts it takes to register movement / stopping
      Maximum event duration.png Event Advertising settings.png Sensor reading interval.png
      Maximum event duration - how long will one event be advertised Event advertising settings - advertising period after event detection Sensor reading interval - how often values are updated by the device


      FM Tracker Configuration

      Teltonika configurator (Base firmware / advanced mode)

      If you have firmware / configurator which does not support EYE sensor tab in Bluetooth® 4.0 section, then you can still use Avanced BLE configuration to connect with EYE Sensors.

      To configure FM with BTSMP1 EYE Sensor:

      Requirements:

      Firmware/configurator version with multiple custom IO fields per sensor, we recommend:

      FMBXXX: 03.27.07.Rev.00/1.7.22_B.3.27_R.21 or newer

      FMX640: 01.02.03/1.7.24_B.FM64_R.34 or newer (FMB640 does not support for BLE functionality)

      Step 1: Check EYE App Settings:

      1. Make sure that name of the sensor is default length (10 symbols) in EYE App Basic Configuration window
      2. Note what Packet settings you have set in EYE App Basic Configuration window

      Step 2: Configure FM device using Teltonika configurator:

      1. In System settings Enable Codec8 Extended;
      2. In GPRS settings Configure GPRS Settings and Server Settings
      3. In Bluetooth® settings Enable Bluetooth®, set this setting as either "Enable (hidden)" or "Enable (visible)", otherwise Bluetooth® will be disabled;
      4. In Bluetooth® 4.0 settings:
        1. set Non Stop Scan to "Disable", configure "Update Frequency" and "Scan duration" as 30 seconds. These settings will bring the best results for BLE scanning with our device;
        2. In Bluetooth® 4.0 settings Advanced Mode Settings Load EYE Sensor preset according to packet settings in EYE app(if you do not have preset you can download them from below table)
        3. Configure MAC address of the sensor
      5. To receive data to server enable corresponding IO elements in FMB120 I/O settings


      Advanced mode configuration:

      EYE Sensor Packet Setting:
      Preset you should use: EYE Sensors EYE iBeacon EYE Eddystone
      FMBXXX Preset download link: Download zip.png Download zip.png Download zip.png
      FMBXXX Configuration example download link: Download zip.png Download zip.png Download zip.png
      FMX640 Preset download link: Download zip.png Download zip.png Download zip.png
      Instructions how you can manually add a preset: link



      Preset Configuration:

      If EYE Sensor Packet Settings is EYE Sensors or Eddystone and EYE Sensors:
      Preset2EYE.png



      If EYE Sensor Packet Settings is EYE Sensors or iBeacon and EYE Sensors:

      Preset1EYE.png

      IO element value descriptions:

      NAME DESCRIPTION
      Custom1 Flags (not supported with current FMX640 preset)
      Temperature Ambient temperature in Celsius
      Humidity Ambient humidity in percent
      Custom2 Movement and movement events count
      Custom3 Angle
      Custom4 Battery voltage (2000 + (VALUE * 10)) in mV
      Property ID in AVL packet Property name Bytes Type Min Max Multiplier Units Description
      25 BLE Temperature #1 2 Signed -4000 12500 0.01* °C Degrees ( °C ), -40 - +125;

      Error codes:

      4000 - abnormal sensor state

      3000 - sensor not found

      2000 - failed sensor data parsing

      26 BLE Temperature #2 2 Signed -4000 12500 0.01* °C Degrees ( °C ), -40 - +125;

      Error codes:

      4000 - abnormal sensor state

      3000 - sensor not found

      2000 - failed sensor data parsing

      27 BLE Temperature #3 2 Signed -4000 12500 0.01* °C Degrees ( °C ), -40 - +125;

      Error codes:

      4000 - abnormal sensor state

      3000 - sensor not found

      2000 - failed sensor data parsing

      28 BLE Temperature #4 2 Signed -4000 12500 0.01* °C Degrees ( °C ), -40 - +125;

      Error codes:

      4000 - abnormal sensor state

      3000 - sensor not found

      2000 - failed sensor data parsing

      86 BLE Humidity #1 2 Unsigned 0 1000 0.1* %RH Humidity
      104 BLE Humidity #2 2 Unsigned 0 1000 0.1* %RH Humidity
      106 BLE Humidity #3 2 Unsigned 0 1000 0.1* %RH Humidity
      108 BLE Humidity #4 2 Unsigned 0 1000 0.1* %RH Humidity
      331 BLE 1 Custom #1 Variable HEX 0 - - - Custom IO element for BLE sensor
      463 BLE 1 Custom #2 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor
      464 BLE 1 Custom #3 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor
      465 BLE 1 Custom #4 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor
      466 BLE 1 Custom #5 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor
      332 BLE 2 Custom #1 Variable HEX 0 - - - Custom IO element for BLE sensor
      467 BLE 2 Custom #2 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor
      468 BLE 2 Custom #3 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor
      469 BLE 2 Custom #4 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor
      470 BLE 2 Custom #5 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor
      333 BLE 3 Custom #1 Variable HEX 0 - - - Custom IO element for BLE sensor
      471 BLE 3 Custom #2 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor
      472 BLE 3 Custom #3 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor
      473 BLE 3 Custom #4 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor
      474 BLE 3 Custom #5 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor
      334 BLE 4 Custom #1 Variable HEX 0 - - - Custom IO element for BLE sensor
      475 BLE 4 Custom #2 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor
      476 BLE 4 Custom #3 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor
      477 BLE 4 Custom #4 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor
      478 BLE 4 Custom #5 8 UNSIGNED LONG INT 0 4294967295 - - Custom IO element for BLE sensor

      Teltonika configurator new functionalities (Evaluation firmware / EYE Sensor filtering by name)

      Starting with firmware 03.28.04.Rev.207 there is additional tabs available in Bluetooth® 4.0 section that allow for easier configuration to connect FM and EYE sensor or beacon.

      It's now possible to connect up to 100 sensors at once just by entering one name in the configurator name list. It's required to enter at least 3 characters(case sensitive) in the name for FM to scan the sensors. Super easy to set up!

      For example, the you may order Sensors with special configuration from factory where the EYE Sensor names would be TRAILER_1,TRAILER_2,...,TRAILER_99 and so on.

      If you would enter TRAILERS in the EYE Fimrware FM configurator then sensors who meet this name condition, for example TRAILER_1, TRAILER_21 , TRAILER_17, would be scanned, while other sensors named Tools, MP1_123546, etc. will not be scanned. With this option, you can upload one configuration to FOTA web and it doesn’t matter which sensor from the list end user will mount, it will be scanned and sent to the server as long as it meets the name criteria.

      Bluetooth® 4.0
      Functionalities were reorganized and transferred to Bluetooth® 4.0 configuration tab with additional horizontal tabs selection for specific settings:

      • Global - Parameters responsible for device scanning ability like power and duratations.
      • EYE - Parameters to configure data reading from EYE sensors.


      Common settings

      • Non Stop Scan - Enable Non Stop Scan feature, the device will try to scan for the sensors all the time if any of them are configured.
      • Sensors and Beacons Update frequency - changes sensors temperature/humidity/battery voltage data update frequency. Minimum value: 30s, maximum value: 65535s. Recommended value 30.
      • BLE Scan Duration - Sensors data reading time. Recommended value 30.
      • Scan retries until error - Scan retries count, till start to show the value as Error '3000' - sensor disconnected. Recommended value 30.
      • BT Power Level - Telematics device Bluetooth® power level setting.
      • BLE Broadcasting service ID - Telematics device can broadcast configured ID.
      • BLE connection control - Connection mode settings. If broadcasting ID is configured, parameter should be set to Prohibit.


      BLE 4,0 Common settings.png

      Sensors
      Sensor Configuration can be set to Custom Sensors, Eye Sensors or both. With the Custom Sensors setting enabled, any BLE sensor can be configured.
      When EYE Sensors is selected, Eye Sensor connectionless functionalities or EYE list search window will appear, depending on the selected EYE Sensor filter.
      EYE Sensors NAME.png
      Name
      When EYE Sensors Filter is set to Name, the Eye List search window will appear on the configurator. With this setting, separate EYE Sensor records (AVL ID: 11317) will be generated according to the configured parameters, which are described below:

      • Data Clear period- defines how long the FM tracker waits when the Eye sensor is not detected before removing it from the Eye Sensor list and not sending the sensor values. If Data Clear Period is set to 0, then the EYE Sensor will not be removed from the EYE Sensor list and it will always be included in the periodic records.
      • RSSI- Parameter defines the dBm threshold value of when the EYE sensor will be added to the sensor list. If the FM tracker detects the RSSI lower than the configured value, it will not be added to the EYE Sensor list.
      • Record period - Defines how often the EYE Sensor record (AVL ID: 11317) will be generated when the FM tracker is operating On Stop or On Move modes, according to the configured movement source..
      • EYE Sensor Settings - Define what sensor readings data is included in to the EYE Sensor Records. Sensor readings which are not needed can be disabled, to reduce data consumption.
      • EYE Name list - Defines what EYE sensors will be added to EYE Sensor list. For EYE Sensors to be added to the list, only the beginning part of the EYE Sensor local name has to match. For example, if in the EYE name list “EYE_SENSOR” is added and the FM tracker detects EYE_SENSOR1, EYE_SENSOR2, EYE_SENSORXYZ, all these EYE Sensors will be added to EYE Sensor list. If the EYE name list is left empty, all the detected EYE Sensors will be included in the EYE Sensor list. NOTE: If EYE Sensor has a name that matches configured one in EYE Name List and if it has a MAC address, that matches configured one in EYE Sensors filtered by MAC address, then such sensor will not be added to EYE Sensor list, but it’s data will be added according EYE Sensor filtered by MAC IO elements.

      EYE List name search.png

      Once Eye Sensor filtering by name list is selected, EYE Sensor records containing the AVL ID:11317 will start being generated. Below is an example of how EYE Sensor data is packed into AVL ID 11317
      AVL ID 11317 structure

      Eye Sensor #1
      EYE Sensor #1 Data length 1 byte
      1st Parameter ID 1 byte
      1st Parameter Data Length 1 byte
      1st Parameter Data variable
      2nd Parameter ID 1 byte
      2nd Parameter Data Length 1 byte
      2nd Parameter Data variable
      <...>
      Nth Parameter ID 1 byte
      Nth Parameter Data Length 1 byte
      Nth Parameter Data variable
      Eye Sensor #2
      Eye Sensor #2 Data length 1 byte
      1st Parameter ID 1 byte
      1st Parameter Data Length 1 byte
      1st Parameter Data variable
      2nd Parameter ID 1 byte
      2nd Parameter Data Length 1 byte
      2nd Parameter Data variable
      <...>
      Nth Parameter ID 1 byte
      Nth Parameter Data Length 1 byte
      Nth Parameter Data variable
      Eye Sensor #N
      ... ...

      Parameter IDs are used to identify what type of EYE Sensor information is included in the packet. Below is the table describing the possible EYE Sensor parameter IDs, along with their data type and data length.

      Table 1. EYE Sensor Parameter IDs
      Parameter ID Name Data type Description
      5 Eye Sensor Device Name Array Device’s name from Device Name List tab
      6 EYE Sensor Temperature 2 byte signed integer Temperature value measured by EYE Sensor from List Values from -32768 to +32768 with 0.01 C delta
      7 EYE Sensor Humidity 1 byte unsigned integer Humidity measured by EYE Sensor from List Values from 0 to 100%
      8 EYE Sensor Magnet presence 1 byte unsigned integer Magnet measured by EYE Sensor from List Values from 0 to1
      9 EYE Sensor Movement presence 1 byte unsigned integer Movement measured by Eye Sensor from List Values
      10 EYE Sensor Movement count 2 byte unsigned integer Movement counts measured by EYE Sensor from List Values
      11 EYE Sensor Pitch 1 byte signed integer Pitch angle measured by Eye Sensor from list Values
      12 EYE Sensor Angle Roll 2 byte signed integer Roll Angle measured by EYE Sensor from List Values
      13 EYE Sensor Low battery indicator 1 byte unsigned integer Low battery state measured by EYE Sensor from List Values from 0 to1
      14 EYE Sensor Battery voltage 2 byte unsigned integer Low battery state measured by EYE Sensor from List Values from 0 to1
      15 EYE Sensor MAC adress 6 byte unsigned integer Device's MAC adress
      16 EYE Sensor Magnet trigger count* 2 byte unsigned integer Magnet trigger counts measured by EYE Sensor from List Values

      *Only available with evaluation firmware BTSX.1.2.8.magcounter.R.0 of EYE Devices



      EYE Sensors MAC.png
      MAC
      IF EYE Sensors are selected to be filtered by MAC address, separate EYE sensor records will not be generated; EYE sensor values will be included into regular records with their corresponding IO elements. Up to 4 EYE Sensors can be configured with different MAC Addresses. In the case of filtering by MAC Address, more advanced configuration is possible, as EYE Sensors’ IOs’ Low, High level, Event Only and Operand parameters can also be configured separately for each IO.

      • Working Mode - parameter has 2 options – Disabled and EYE Sensor. When it is disabled, EYE Sensor IO values will not be included into the records. When EYE Sensor is selected, EYE Sensor IO values will be included into records.
      • MAC Settings - parameter specifies the MAC address of the EYE Sensor for the FM tracker to read, parse its data and put to corresponding IO elements. If the sensor is not found for set amount of scan retries, error values will be stored into IO elements.
      • I/O elements - allows for advanced EYE sensor I/O elements configuration.

      Eye Sensor Connectionless Functionalities.png
      EYE Sensor AVL IDs

      Table below describes I/O elements which were added for EYE sensor with the new functionalities release.
      Property ID in AVL packet Property name Bytes Type Min Max Multiplier Units Description
      11317 EYE Sensor List variable length HEX 0 bytes 1024 bytes - - EYE Sensor List
      10800 EYE Temperature 1 2 Signed -32768 32768 0,01 °C Temperature measured by EYE sensor 1
      10801 EYE Temperature 2 2 Signed -32768 32768 0,01 °C Temperature measured by EYE sensor 2
      10802 EYE Temperature 3 2 Signed -32768 32768 0,01 °C Temperature measured by EYE sensor 3
      10803 EYE Temperature 4 2 Signed -32768 32768 0,01 °C Temperature measured by EYE sensor 4
      10804 EYE Humidity 1 1 Unsigned 0 100 - % Humidity measured by EYE sensor 1
      10805 EYE Humidity 2 1 Unsigned 0 100 - % Humidity measured by EYE sensor 2
      10806 EYE Humidity 3 1 Unsigned 0 100 - % Humidity measured by EYE sensor 3
      10807 EYE Humidity 4 1 Unsigned 0 100 - % Humidity measured by EYE sensor 4
      10808 EYE Magnet 1 1 Unsigned 0 1 - - Magnet measured by EYE sensor 1
      10809 EYE Magnet 2 1 Unsigned 0 1 - - Magnet measured by EYE sensor 2
      10810 EYE Magnet 3 1 Unsigned 0 1 - - Magnet measured by EYE sensor 3
      10811 EYE Magnet 4 1 Unsigned 0 1 - - Magnet measured by EYE sensor 4
      10812 EYE Movement 1 1 Unsigned 0 1 - - Movement state and count measured by EYE sensor 1
      10813 EYE Movement 2 1 Unsigned 0 1 - - Movement state and count measured by EYE sensor 2
      10814 EYE Movement 3 1 Unsigned 0 1 - - Movement state and count measured by EYE sensor 3
      10815 EYE Movement 4 1 Unsigned 0 1 - - Movement state and count measured by EYE sensor 4
      10816 EYE Pitch 1 1 signed -90 90 - - Pitch and Roll angles measured by EYE sensor 1
      10817 EYE Pitch 2 1 signed -90 90 - - Pitch and Roll angles measured by EYE sensor 2
      10818 EYE Pitch 3 1 signed -90 90 - - Pitch and Roll angles measured by EYE sensor 3
      10819 EYE Pitch 4 1 signed -90 90 - - Pitch and Roll angles measured by EYE sensor 4
      10820 EYE Low Battery 1 1 Unsigned 0 1 - - Low Battery indication EYE sensor 1
      10821 EYE Low Battery 2 1 Unsigned 0 1 - - Low Battery indication EYE sensor 2
      10822 EYE Low Battery 3 1 Unsigned 0 1 - - Low Battery indication EYE sensor 3
      10823 EYE Low Battery 4 1 Unsigned 0 1 - - Low Battery indication EYE sensor 4
      10824 EYE Battery Voltage 1 2 Unsigned 0 65535 - - Battery Voltage of EYE sensor 1
      10825 EYE Battery Voltage 2 2 Unsigned 0 65535 - - Battery Voltage of EYE sensor 2
      10826 EYE Battery Voltage 3 2 Unsigned 0 65535 - - Battery Voltage of EYE sensor 3
      10827 EYE Battery Voltage 4 2 Unsigned 0 65535 - - Battery Voltage of EYE sensor 4
      10832 EYE Roll 1 2 signed -180 180 - - Roll value of EYE Sensor 1
      10833 EYE Roll 2 2 signed -180 180 - - Roll value of EYE Sensor 2
      10834 EYE Roll 3 2 signed -180 180 - - Roll value of EYE Sensor 3
      10835 EYE Roll 4 2 signed -180 180 - - Roll value of EYE Sensor 4
      10836 EYE Movement Count 1 2 unsigned 0 65535 - - Movement count value of EYE Sensor 1
      10837 EYE Movement Count 2 2 unsigned 0 65535 - - Movement count value of EYE Sensor 2
      10838 EYE Movement Count 3 2 unsigned 0 65535 - - Movement count value of EYE Sensor 3
      10839 EYE Movement Count 4 2 unsigned 0 65535 - - Movement count value of EYE Sensor 4


      Eye sensor parameters have error code values, which will written to the I/O value if parameter data is not received. From the error code value, it is possible to distinguish whether the issue is on the FM tracker side or the EYE Sensor. Below is a table describing these values.

      Eye Sensor Error Values
      Parameter Data length

      (bytes)

      Data type Error codes Additional Notes
      Data Not Received by FM tracker EYE Sensor indicates error
      Temperature 2 signed 25000 25001
      Humidity 1 unsigned 250 251
      Magnet 1 unsigned 250 251
      Magnet trigger count 2 unsigned 65000 65001 Only available with evaluation firmware BTSX.1.2.8.magcounter.R.0 of EYE Devices
      Movement 1 unsigned 250 251
      Movement counter 2 unsigned 65000 65001
      Pitch 1 signed 120 121
      Roll 2 signed 250 251
      Low battery status 1 unsigned 250 251
      Battery voltage 1 unsigned 250 251


      Note: If you are using presets(firmware/configurator without EYE product support), then refer to BLE Sensors I/O elements table instead.

      New EYE Features (Proximity and Lost & Found)

      Proximity

      EYE beacon Proximity events is a functionality which creates three different types of records, depending on the captured Beacons RSSI level. This functionality is only supported with Teltonika EYE beacons. Proximity events consist of near, away and lost events:

      • When EYE beacon RSSI level is below the first configured threshold, the beacon will be added to Near Beacon Record (AVL ID: 10828)
      • When EYE BEACON RSSI level is between the second and first configured threshold, beacon is added to Away Beacon record (AVL ID: 10829)
      • When EYE Beacon RSSI level is lower than the second configured threshold, beacon is added to Lost Beacon record (AVL ID: 10831). In the case of EYE Beacon disappearing from the environment and not being detected by the FM tracker anymore, the beacon will be added to Lost Beacon record and will be removed from Beacon list.

      Event modes

      • Disabled – Record generating is disabled for the selected range
      • Periodic – Records will be periodically generated for the selected range, according to the configured record period on move or on stop value.
      • On Change – Records will be generated as soon as the Eye Beacon number changes for the selected range.

      Averaging Timeout

      This parameter specifies how long it will take current RSSI value to reach new RSSI value. For example, current EYE Beacon RSSI value is -40 dBm. FMB captures same EYE Beacon with RSSI value of -60 dBm. If averaging timeout is configured to be 10 seconds, it will take 10 seconds for RSSI value to reach -60 dBm from -40 dBm. Keep in mind that this is assuming perfect conditions and subsequent EYE Beacon RSSI.

      Lost & Found

      Lost & found.png

      Purpose of this functionality is to periodically generate records with all EYE Beacon list (AVL ID: 10828) and create eventual On Change records only when EYE Beacon is lost (AVL ID: 10831) or found (AVL ID: 10829).

      Lost and Found Beacon records only include EYE Beacon which was lost or found, not the full Beacon list.

      • If multiple EYE Beacons were found or lost at the same time, multiple will be included into the record.
      • If Visible Beacon List is enabled, Beacon records containing the list of visible beacons will be generated according to the configured period parameters Record Period on Move and Record Period on Stop

      Advanced Beacon protocol is being used to send Lost & Found records.

      Note:Same AVL ID’s as for Proximity events are being used, since two features cannot work at the same time.

      • AVL ID: 10828 Visible Beacon List (periodic)
      • AVL ID: 10829 Found Beacon List (On Change)
      • AVL ID: 10831 Lost Eye Beacon List (On Change)

      Data Parsing

      Parsing for Base Functionality (Advanced Mode)

      Unparsed data
      Received data in hexadecimal stream: 00000000000000488E010000017CA6B6BFD8010F0E5188209AB482008600A80F0000000
      00006000000020019090400560024000301CF0000001601D00000FF4D01D10000006D00000001014B0001B6010000CF7D
      AVL Data Packet
      AVL Data Packet Part HEX Code Part
      Zero Bytes 00 00 00 00
      Data Field Length 00 00 00 48
      Codec ID 8E (Codec8 Extended)
      Number of Data 1 (Number of Total Records) 01
      AVL Data Timestamp 00 00 01 7C A6 B6 BF D8 (GMT: Friday, 22 October 2021 06:36:07)
      Priority 01
      Longitude 0F 0E 51 88
      Latitude 20 9A B4 82
      Altitude 00 86
      Angle 00 0A
      Satellites 0E
      Speed 00 00
      Event IO ID 00 00
      N of Total ID 00 06
      N1 of One Byte IO 00 00
      N2 of Two Bytes IO 00 02
      ID 00 19 (25 = BLE Temperature #1)
      Value 09 04 (2308=23.08°C)
      ID 00 56 (86 = BLE Humidity #1)
      Value 00 36 (24 %RHT)
      N4 of Four Bytes IO 00 03
      ID 01 CF (463 - BLE 1 Custom #2 = Movement status and movement events count)
      Value 00 00 00 16 (Currently not moving events count 22)
      ID 01 D0 (464 - BLE 1 Custom #3 = Angle )
      Value 00 00 FF 4D (Pitch = 0°, Roll = -179°)
      ID 01 D1 (465 - BLE 1 Custom #4 = Battery Voltage)
      Value 00 00 00 6D (109 = 2000 + 109 * 10 mV = 3090 mV)
      N8 of Eight Bytes IO 00 00
      NX of X Bytes IO 00 01
      N’th IO ID - AVL ID. 01 4B (331 - BLE 1 Custom #1 = Flags)
      Length of Variable Length IO 00 01
      Value of Variable Length IO B7 = (MSB)11011 0111(LSB)

      It's parsed from least significant byte(LSB):


      Bit 0 – Temperature value presence.

      1 Means device is reading and transmitting temperature value.


      Bit 1 – Humidity value presence.

      1 Means device is reading and transmitting humidity value.


      Bit 2 – Magnetic sensor presence.

      1 Means device is reading and transmitting Magnetic sensor value.


      Bit 3 – Magnetic sensor state

      1 magnetic field is detected/0 magnetic field is not detected) Valid value is present only if bit 2 flag is set.


      Bit 4 – Movement sensor counter.

      1 Means device is reading and transmitting movement state and count values.


      Bit 5 – Movement sensor angle.

      1 Means device is reading and transmitting angle roll and pitch values.


      Bit 6 – Low Battery indication.

      0 – Means device battery is from 100 to 15 % (When value changes to 1 Battery level is lower than 15 %.


      7 – Battery voltage value presence.

      1 Means device is reading and transmitting battery voltage value.

      Number of Data 2 (Number of Total Records) 01
      CRC-16 00 00 CF 7D

      Parsing for Proximity Feature

      PROXIMITY FEATURE
      Received data in hexadecimal stream:

      00000000000000BD8E03
      0000018D1468C11B00E42CC908F1F475CC000000000300002A4C0001000000000000000000012A4C001401120001E50F067CD9F401EF770D01000E020BFE
      0000018D1468C12500E42CC908F1F475CC000000000300002A4D0001000000000000000000012A4D001401120001C80F067CD9F40255BE0D01000E020BF4
      0000018D1468C12F00E42CC908F1F475CC000000000300002A4F0001000000000000000000012A4F001401120001B90F067CD9F4004B490D01000E020BFE
      03000086BA

      AVL Data Packet
      AVL Data Packet Part HEX Code Part Decoded
      Zero Bytes 00 00 00 00
      Data Field Length 00 00 00 BD 189 bytes
      Codec ID 8E Codec8 Extended
      Number of Data 1 (Number of Total Records) 03 3
      AVL DATA Timestamp 00 00 01 8D 14 68 C1 1B 2024/01/16 - 22:33:46.001
      Priority 00 HIGH
      Longitude E4 2C C9 08 -466827000
      Latitude F1 F4 75 CC -235637300
      Altitude 00 00 0
      Angle 00 00 0
      Satellites 03 3
      Speed 00 00 0
      Event IO ID 2A 4C 10828
      N of Total ID 00 01 1
      N1 of One Byte IO 00 00 0
      N2 of Two Bytes IO 00 00 0
      N4 of Four Bytes IO 00 00 0
      N8 of Eight Bytes IO 00 00 0
      NX of X Bytes IO 00 01 1
      N’th IO ID - AVL ID. 2A 4C 10828
      Length of Variable Length IO 00 14 20
      Value of Variable Length IO 01 12 00 01 E5 0F 06 7C D9 F4 01 EF 77 0D 01 00 0E 02 0B FE
      AVL DATA Timestamp 00 00 01 8D 14 68 C1 25 2024/01/16 - 22:33:46.001
      Priority 00 0
      Longitude E4 2C C9 08 -466827000
      Latitude F1 F4 75 CC -235637300
      Altitude 00 00 0
      Angle 00 00 0
      Satellites 03 3
      Speed 00 00 0
      Event IO ID 2A 4D 10829
      N of Total ID 00 01 1
      N1 of One Byte IO 00 00 0
      N2 of Two Bytes IO 00 00 0
      N4 of Four Bytes IO 00 00 0
      N8 of Eight Bytes IO 00 00 0
      NX of X Bytes IO 00 01 1
      N’th IO ID - AVL ID. 2A 4D 10829
      Length of Variable Length IO 00 14 20
      Value of Variable Length IO 01 12 00 01 C8 0F 06 7C D9 F4 02 55 BE 0D 01 00 0E 02 0B F4
      AVL DATA Timestamp 00 00 01 8D 14 68 C1 2F 2024/01/16 - 22:33:46.001
      Priority 00 0
      Longitude E4 2C C9 08 -466827000
      Latitude F1 F4 75 CC -235637300
      Altitude 00 00 0
      Angle 00 00 0
      Satellites 03 3
      Speed 00 00 0
      Event IO ID 2A 4F 10831
      N of Total ID 00 01 1
      N1 of One Byte IO 00 00 0
      N2 of Two Bytes IO 00 00 0
      N4 of Four Bytes IO 00 00 0
      N8 of Eight Bytes IO 00 00 0
      NX of X Bytes IO 00 01 1
      N’th IO ID - AVL ID. 2A 4F 10831
      Length of Variable Length IO 00 14 20
      Value of Variable Length IO 01 12 00 01 B9 0F 06 7C D9 F4 00 4B 49 0D 01 00 0E 02 0B FE
      Number of Data 2 (Number of Total Records) 03 20
      CRC-16 00 00 86 BA

      Near example (AVL ID - 10828)

      nEAR BEACONS (AVL ID - 10828)
      01120001E50F067CD9F401EF770D01000E020BFE
      AVL Data Packet
      AVL Data Packet Part HEX Code Part Decoded
      Protocol ID 01
      Data Length 12 18
      Parameter ID 00 Beacon RSSI Level
      Parameter Data Length 01 1
      Parameter Data E5 -27
      Parameter ID 0F EYE Sensor MAC address
      Parameter Data Length 06 6
      Parameter Data 7C D9 F4 01 EF 77 7CD9F401EF77
      Parameter ID 0D EYE Sensor Low Battery
      Parameter Data Length 01 1
      Parameter Data 00 0
      Parameter ID 0E EYE Sensor Battery Voltage
      Parameter Data Length 02 2
      Parameter Data 0B FE 3070

      Away example (AVL ID - 10829)

      AWAY BEACONS (AVL ID - 10829)
      01120001C80F067CD9F40255BE0D01000E020BF4
      AVL Data Packet
      AVL Data Packet Part HEX Code Part Decoded
      Protocol ID 01
      Data Length 12 18
      Parameter ID 00 Beacon RSSI Level
      Parameter Data Length 01 1
      Parameter Data C8 -56
      Parameter ID 0F EYE Sensor MAC address
      Parameter Data Length 06 6
      Parameter Data 7C D9 F4 02 55 BE 7CD9F40255BE
      Parameter ID 0D EYE Sensor Low Battery
      Parameter Data Length 01 1
      Parameter Data 00 0
      Parameter ID 0E EYE Sensor Battery Voltage
      Parameter Data Length 02 2
      Parameter Data 0BF4 3060

      Lost example (AVL ID - 10831)

      LOST BEACONS (AVL ID - 10831)
      01120001E50F067CD9F401EF770D01000E020BFE
      AVL Data Packet
      AVL Data Packet Part HEX Code Part Decoded
      Protocol ID 01
      Data Length 12 18
      Parameter ID 00 Beacon RSSI Level
      Parameter Data Length 01 01
      Parameter Data B9 -71
      Parameter ID 0F EYE Sensor MAC address
      Parameter Data Length 06 6
      Parameter Data 7C D9 F4 00 4B 49 7CD9F4004B49
      Parameter ID 0D EYE Sensor Low Battery
      Parameter Data Length 01 1
      Parameter Data 00 0
      Parameter ID 0E EYE Sensor Battery Voltage
      Parameter Data Length 02 2
      Parameter Data 0BFE 3070

      Parsing for Lost & Found Feature

      Visible Beacons (AVL ID - 10828)

      LOST & FOUND FEATURE
      Received data in hexadecimal stream:

      00000000000000678E010000018D1459964B00E42CA472F1F5B94D00000000000000

      2A4C0001000000000000000000012A4C003A01120001D60F067CD9F40255BE0D01000E020BF4120001E00F067CD9F4004B490D01000E020BFE120001AC0F067CD9F401EF770D01000E020BFE

      0100001ACD

      AVL Data Packet
      AVL Data Packet Part HEX Code Part Decoded
      Zero Bytes 00 00 00 00
      Data Field Length 00 00 00 67 103
      Codec ID 8E 142
      Number of Data 1 (Number of Total Records) 01 1
      AVL DATA Timestamp 00 00 01 8D 14 59 96 4B 2024/01/16 - 22:17:12.001
      Priority 00 0
      Longitude E4 2C A4 72 -466827000
      Latitude F1 F5 B9 4D -235637300
      Altitude 00 00 0
      Angle 00 00 0
      Satellites 00 0
      Speed 00 00 0
      Event IO ID 2A 4C 10828
      N of Total ID 00 01 1
      N1 of One Byte IO 00 00 0
      N2 of Two Bytes IO 00 00 0
      N4 of Four Bytes IO 00 00 0
      N8 of Eight Bytes IO 00 00 0
      NX of X Bytes IO 00 01 1
      N’th IO ID - AVL ID. 2A 4C 10828
      Length of Variable Length IO 00 3A 58
      Value of Variable Length IO 01120001D60F067CD9F40255BE0D01000E020BF4

      120001E00F067CD9F4004B490D01000E020BFE

      120001AC0F067CD9F401EF770D01000E020BFE

      Number of Data 2 (Number of Total Records) 01 1
      CRC-16 00 00 1A CD
      vISIBLE BEACONS (AVL ID - 10828)
      01120001D60F067CD9F40255BE0D01000E020BF4

      120001E00F067CD9F4004B490D01000E020BFE

      120001AC0F067CD9F401EF770D01000E020BFE

      AVL Data Packet
      AVL Data Packet Part HEX Code Part Decoded
      Protocol ID 00 00 00 00
      EYE BEACON 1 Data Length 12 18
      Parameter ID 00 Beacon RSSI Level
      Parameter Data Length 01 1
      Parameter Data D6 -42
      Parameter ID 0F EYE Sensor MAC address
      Parameter Data Length 06 6
      Parameter Data 7CD9F40255BE 7CD9F40255BE
      Parameter ID 0D EYE Sensor Low Battery
      Parameter Data Length 01 1
      Parameter Data 00 0
      Parameter ID 0E EYE Sensor Battery Voltage
      Parameter Data Length 02 2
      Parameter Data 0B F4 3060
      EYE BEACON 2 Data Length 12 18
      Parameter ID 00 Beacon RSSI Level
      Parameter Data Length 01 1
      Parameter Data E0 -32
      Parameter ID 0F EYE Sensor MAC address
      Parameter Data Length 06 6
      Parameter Data 7CD9F4004B49 7CD9F4004B49
      Parameter ID 0D EYE Sensor Low Battery
      Parameter Data Length 01 1
      Parameter Data 00 0
      Parameter ID 0E EYE Sensor Battery Voltage
      Parameter Data Length 02 2
      Parameter Data 0B FE 3070
      EYE BEACON 3 Data Length 12 18
      Parameter ID 00 Beacon RSSI Level
      Parameter Data Length 01 1
      Parameter Data AC -32
      Parameter ID 0F EYE Sensor MAC address
      Parameter Data Length 06 6
      Parameter Data 7CD9F401EF77 7CD9F401EF77
      Parameter ID 0D EYE Sensor Low Battery
      Parameter Data Length 01 1
      Parameter Data 00 0
      Parameter ID 0E EYE Sensor Battery Voltage
      Parameter Data Length 02 2
      Parameter Data 0B FE 3070

      Lost Beacons (AVL ID 10831)

      LOST & FOUND FEATURE
      Received data in hexadecimal stream:

      00000000000000418E010000018D145CF59300E42CA472F1F5B94D00000000000000

      2A4F0001000000000000000000012A4F001401120001AB0F067CD9F401EF770D01000E020BFE010000CBD8

      AVL Data Packet
      AVL Data Packet Part HEX Code Part Decoded
      Zero Bytes 00 00 00 00
      Data Field Length 00 00 00 41 65
      Codec ID 8E 142
      Number of Data 1 (Number of Total Records) 01 1
      AVL DATA Timestamp 00 00 01 8D 14 5C F5 93 2024/01/16 - 22:20:53.001
      Priority 00 0
      Longitude E4 2C A4 72 -466827000
      Latitude F1 F5 B9 4D -235637300
      Altitude 00 00 0
      Angle 00 00 0
      Satellites 00 0
      Speed 00 00 0
      Event IO ID 2A 4F 10831
      N of Total ID 00 01 1
      N1 of One Byte IO 00 00 0
      N2 of Two Bytes IO 00 00 0
      N4 of Four Bytes IO 00 00 0
      N8 of Eight Bytes IO 00 00 0
      NX of X Bytes IO 00 01 1
      N’th IO ID - AVL ID. 2A 4F 10831
      Length of Variable Length IO 00 14 20
      Value of Variable Length IO 01120001AB0F067CD9F401EF770D01000E020BFE
      Number of Data 2 (Number of Total Records) 01 1
      CRC-16 00 00 CB D8
      lOST BEACONS (AVL ID - 10831)
      01120001AB0F067CD9F401EF770D01000E020BFE
      AVL Data Packet
      AVL Data Packet Part HEX Code Part
      Protocol ID 01
      Data Length 12 18
      Parameter ID 00 Beacon RSSI Level
      Parameter Data Length 01 1
      Parameter Data AB -85
      Parameter ID 0F EYE Sensor MAC address
      Parameter Data Length 06 6
      Parameter Data 7CD9F401EF77 7CD9F401EF77
      Parameter ID 0D EYE Sensor Low Battery
      Parameter Data Length 01 1
      Parameter Data 00 0
      Parameter ID 0E EYE Sensor Battery Voltage
      Parameter Data Length 02 2
      Parameter Data 0B FE 3070

      Found Beacons (AVL ID - 10829)

      LOST & FOUND FEATURE
      Received data in hexadecimal stream:

      00000000000000418E010000018D1464ECA300E42CD682F1F4768402B1005A050003

      2A4D0001000000000000000000012A4D001401120001D60F067CD9F401EF770D01000E020BFE010000E720

      AVL Data Packet
      AVL Data Packet Part HEX Code Part Decoded
      Zero Bytes 00 00 00 00
      Data Field Length 00 00 00 41 65
      Codec ID 8E 142
      Number of Data 1 (Number of Total Records) 01 1
      AVL DATA Timestamp 00 00 01 8D 14 64 EC A3 2024/01/16 - 22:29:35.001
      Priority 00 0
      Longitude E4 2C D6 82 -466827000
      Latitude F1 F4 76 84 -235637300
      Altitude 02 B1 689
      Angle 00 5A 90
      Satellites 05 5
      Speed 00 03 3
      Event IO ID 2A 4D 10829
      N of Total ID 00 01 1
      N1 of One Byte IO 00 00 0
      N2 of Two Bytes IO 00 00 0
      N4 of Four Bytes IO 00 00 0
      N8 of Eight Bytes IO 00 00 0
      NX of X Bytes IO 00 01 1
      N’th IO ID - AVL ID. 2A 4D 10829
      Length of Variable Length IO 00 14 20
      Value of Variable Length IO 01120001D60F067CD9F401EF770D01000E020BFE
      Number of Data 2 (Number of Total Records) 01 1
      CRC-16 00 00 E7 20
      FOUND BEACONS (AVL ID - 10829)
      01120001D60F067CD9F401EF770D01000E020BFE
      AVL Data Packet
      AVL Data Packet Part HEX Code Part
      Protocol ID 01
      Data Length 12 18
      Parameter ID 00 Beacon RSSI Level
      Parameter Data Length 01 1
      Parameter Data D6 -42
      Parameter ID 0F EYE Sensor MAC address
      Parameter Data Length 06 6
      Parameter Data 7CD9F401EF77 7CD9F401EF77
      Parameter ID 0D EYE Sensor Low Battery
      Parameter Data Length 01 1
      Parameter Data 00 0
      Parameter ID 0E EYE Sensor Battery Voltage
      Parameter Data Length 02 2
      Parameter Data 0B FE 3070

      Sensor advertising and EYE Sensor Protocol overview


      Sensors data.png


      Beacon and sensors data



      Protocol description

      At the highest-level Bluetooth® LE advertising packet consists of Advertising Indication and Scan Response. Both packets can be maximum of 31 bytes in size. Advertising Indication packet is always broadcasted when Scan Response is broadcasted only if Observer device requests it by using Active Scan.

      BTSMP1 uses Advertising Indication to send beacon data which can be configured to select between iBeacon and Eddystone protocols or to be disabled at all. In that case, data which is shown as Scan Response in protocol overview will be sent as Advertising Indication without Scan Response following it.

      Scan Response is used to send device name and manufacturer specific data. Manufacturer specific data includes Teltonika Company ID (0x089A) and protocol version (0x01). It is followed by Flag Encoded Data (Table 1) and Extended Data (Table 2). Later on, protocol will be highly configurable in and will allow to disable/enable sending of device name or any sensor value allowing to reduce size of the packet being sent.

      Teltonika BTSX devices are transmitting one or two packets depending on the selected protocol. Broadcast packet + Scan response packet.

      A scan response packet is sent when an active scan is used, within the BLE layer of communication. The default for our FM devices and many other applications for example our EYE Appication or nRF connect Application is an active scan.

      There are three protocols, with the following packets:

      1.iBeacon + EYE Sensors

      2.Eddystone + EYE Sensors

      For iBeacon + EYE Sensors and Eddystone + EYE Sensors protocols only iBeacon/Eddystone packet is broadcasted and will be seen by both active and passive scans, to see the EYE Sensors packet you need to use an active scan. In other words in an environment where no BLE devices are scanning with an active scan or in case when there are no scanning devices at all, only the iBeacon/Eddystone packet will be sent by the BTS device to conserve energy.

      3. EYE Sensors

      With EYE Sensors protocol, the EYE Sensor packet becomes broadcast. In other words, in an environment where no BLE devices are scanning with an active scan or in case when there are no scanning devices at all EYE Sensors packet will be sent by the BTS device.

      More Information on Active vs passive scans

      Device Name has the following default value for Beacon – ID1_XXXXXXX

      Table 1. Flag Encoded Date
      Data Size (Bytes) Description
      Flags 1 Each set bit (0-7) means the presence of value (0-7). Bits:


      0 – Temperature value presence
      1 – Humidity value presence
      2 – Magnetic sensor presence
      3 – Magnetic sensor state (1 magnetic field is detected/0 magnetic field is not detected) Valid value is present only if bit 2 flag is set.
      4 – Movement sensor counter
      5 – Movement sensor angle
      6 – Low Battery indication (if set to 1 low battery voltage detected)
      7 – Battery voltage value presence

      Value 0 2 Temperature


      Value in Celsius / 100
      NOTE: present only if bit 0 is set, otherwise is not being sent

      Value 1 1 Humidity


      Value in percent
      NOTE: present only if bit 1 is set, otherwise is not being sent

      Value 2 2 Movement Sensor counter


      Most significant bit indicates movement state and 15 least significant bits represent count of movement events.
      NOTE: present only if bit 4 is set, otherwise is not being sent

      Value 3 3 Movement sensor angle


      Most significant byte – pitch (-90/+90)
      Two least significant bytes – roll (-180/+180)
      NOTE: present only if bit 5 is set, otherwise is not being sent

      Value 4 1 Battery Voltage


      Battery voltage in mV = 2000 + VALUE * 10
      NOTE: present only if bit 7 is set, otherwise is not being sent

      GATT Characteristics

      Name Service UUID Characteristic UUID Data Type Min Max Default Value Notes
      Device Name e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0016-7df2-4d4e-8e6d-c611745b92e9 ASCII 0 12 Unique for each device -
      Tx Power Lever 1804 2a07 SINT8 -14 8 2 Possible values: -14, -11, -8, -5, -2, 2, 4, 8
      Protocol Type e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0001-7df2-4d4e-8e6d-c611745b92e9 UINT8 0 4*


      *Max 2 with 01.02.10+ firmware

      1 for EYE_Beacon,
      4 for EYE_Sensor*


      *with 01.02.10+ firmware 1 for both EYE_Beacon & EYE_Sensor

      0 - iBeacon
      1 - Eddystone
      2 - EYE Sensor
      3 - iBeacon + EYE Sensor*
      4 - Eddystone + EYE Sensor*


      *01.02.10+ sensors are enabled over Activate / Deactivate Sensors

      Activate / Deactivate Sensors*


      *from 01.02.10+ firmware

      e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0021-7df2-4d4e-8e6d-c611745b92e9 UINT8 0 15

      (0b1111)

      4 (0b0100) for EYE_Beacon,
      15 (0b1111) for EYE_Sensor
      (LSb) bit 0 – Temperature

      Bit 1 – Humidity

      Bit 2 – Magnetic

      Bit 3 - Movement


      E.g. EYE_Sensor disabled movement & enabled temperature, humidity, magnetic sensors 7 (0b0111)

      Advertising Interval e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0002-7df2-4d4e-8e6d-c611745b92e9 UINT16 1000 10000 5000 miliseconds
      Sub Advertising Interval e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0003-7df2-4d4e-8e6d-c611745b92e9 UINT16 20 1000 100 Used by repeats, miliseconds
      Advertising Repeats e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0004-7df2-4d4e-8e6d-c611745b92e9 UINT16 1 10 1 Repeats work only if Advertising Interval is more than 2000 ms and Repeats set to more than 1
      iBeacon ID e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0005-7df2-4d4e-8e6d-c611745b92e9 BYTE ARRAY 20 bytes 20 bytes Unique for each device 16 B - UUID
      2 B - major
      2 B - minor
      Eddystone ID e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0006-7df2-4d4e-8e6d-c611745b92e9 BYTE ARRAY 16 bytes 16 bytes Unique for each device 10 B - Namespace
      6 B - Instance
      Command e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0007-7df2-4d4e-8e6d-c611745b92e9 Command characteristic
      Password e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0008-7df2-4d4e-8e6d-c611745b92e9 BYTE ARRAY 6 bytes 6 bytes 123456 Always 6 Digits
      Sensor Interval e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0009-7df2-4d4e-8e6d-c611745b92e9 UINT16 0 10000 1000 miliseconds
      Event Interval e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c000a-7df2-4d4e-8e6d-c611745b92e9 UINT16 0 10000 1000 miliseconds
      Event Duration e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c000b-7df2-4d4e-8e6d-c611745b92e9 UINT8 0 30 30 seconds
      Temperature Event e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c000c-7df2-4d4e-8e6d-c611745b92e9 UINT8 0 2 2 0 - on entrance
      1 - on exit
      2 - no event
      Temperature Low e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c000d-7df2-4d4e-8e6d-c611745b92e9 INT8 -40 85 -20 celsius
      Temperature High e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c000e-7df2-4d4e-8e6d-c611745b92e9 INT8 -40 85 50 celsius
      Humidity Event e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c000f-7df2-4d4e-8e6d-c611745b92e9 UINT8 0 2 2 0 - on entrance
      1 - on exit
      2 - no event
      Humidity Low e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0010-7df2-4d4e-8e6d-c611745b92e9 UINT8 0 100 15 %
      Humidity High e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0011-7df2-4d4e-8e6d-c611745b92e9 UINT8 0 100 50 %
      Movement Event e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0012-7df2-4d4e-8e6d-c611745b92e9 UINT8 0 2 2 0 - on entrance
      1 - on exit
      2 - no event
      Movement Start e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0013-7df2-4d4e-8e6d-c611745b92e9 UINT16 0 300 5 seconds
      Movement Stop e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0014-7df2-4d4e-8e6d-c611745b92e9 UINT16 0 300 5 seconds
      Magnetic Event e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0015-7df2-4d4e-8e6d-c611745b92e9 UINT8 0 2 2 0 - on entrance
      1 - on exit
      2 - no event
      Password Counter e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0019-7df2-4d4e-8e6d-c611745b92e9 UINT8 0 (counter) 10 (counter) 0 Byte 0 – counter,

      Byte 1 and 2 - timeout

      Master Password (PUK) e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0020-7df2-4d4e-8e6d-c611745b92e9 UINT8 8 bytes 8 bytes MAC address dependency Byte array
      Manufacturer sleep (Hibernate mode) e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0018-7df2-4d4e-8e6d-c611745b92e9 UINT8 0 1 1 0 – sleep disabled,

      1 – sleep enabled

      User ADV Spam Duration e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0022-7df2-4d4e-8e6d-c611745b92e9 UINT16 1 300 30 WakeUp Advertising

      Spam Duration in seconds

      RSSI Calibration Value e61c0000-7df2-4d4e-8e6d-c611745b92e9 e61c0023-7df2-4d4e-8e6d-c611745b92e9 INT8 -100 127 127 RSSI value in dBm

      127  – Use default calib. table

      Manufacturer 180A 2A29 BYTE ARRAY - - Not Configurable Read Only. Ex. "Teltonika"
      Model 180A 2A24 BYTE ARRAY - - Not Configurable Read Only. Ex. "BTSID1"
      Serial 180A 2A25 BYTE ARRAY - - Not Configurable Not used
      Hardware 180A 2A27 BYTE ARRAY - - Not Configurable Read Only. Ex. "Table:1 Volt:325
      Firmware 180A 2A26 BYTE ARRAY - - Not Configurable Read Only. Ex. "1.1.0-beta"
      System ID 180A 2A23 BYTE ARRAY - - Not Configurable Not used
      MAC 180A 652143dc-dec6-4fb1-bd46-3e919d2410a6 BYTE ARRAY 6 6 Not Configurable Read Only. ex. 112233445566 -> 11:22:33:44:55:66
      Scan Response Data e61c0000-7df3-4d4e-8e6d-c611745b92e9 e61c0001-7df3-4d4e-8e6d-c611745b92e9 BYTE ARRAY 17 17 Not Configurable Scan Response Data, see picture for detail view of data structure
      Lentele0603.png

      Command Characteristic

      Command's name Data to send Description
      Write to flash 0x0010 Writes set parameters to flash
      General boot 0x0011 Enter boot mode
      Instant reset 0x0012 Software reset
      Reset after connection 0x0013 Reset after disconnect
      Get hw voltage 0x0014 Sets detected hw voltage in response data
      Keep connection alive 0x0015 Resets disconnect timer
      Restore defaults 0x0016 Sets all configurable parameters to default values

      EYE Sensor Bluetooth® frame parsing example

      Unparsed data
      0201061AFF4C000215FFFFFFFF0B8C404510C655AAB636EBEFBB700055020C094D50315F313233343536370EFF9A0801B708B4120CCB0BFFC767


      Parsed data
      Parameter HEX Code Part Actual Value
      Length 02
      Type 01
      Flags 06
      Length 1A
      Type FF
      Apple company identifier (big endian) 4C00
      Beacon type 0215
      UUID FFFFFFFF0B8C404510C655AAB636EBEF
      Major BB70
      Minor 0055
      Power 02
      Length 0C
      Type 09
      Device name 4D50315F31323334353637
      Length 0E
      Type FF
      Teltonika company ID (big endian) 9A08
      Protocol version 01
      Flags B7 Raw value example 0xB7. Data has to be interpretated as binary value.

      In this example would be (MSB)1011 0111(LSB) and is parsed from least significant byte(LSB).


      0 – Temperature value presence. 1 Means device is reading and transmitting temperature value.

      1 – Humidity value presence. 1 Means device is reading and transmitting humidity value.

      2 – Magnetic sensor presence. 1 Means device is reading and transmitting Magnetic sensor value.

      3 – Magnetic sensor state (1 magnetic field is detected/0 magnetic field is not detected) Valid value is present only if bit 2 flag is set.

      4 – Movement sensor counter. 1 Means device is reading and transmitting movement state and count values.

      5 – Movement sensor angle. 1 Means device is reading and transmitting angle roll and pitch values.

      6 – Low Battery indication. 0 – Means device battery is from 100 to 15 % (When value changes to 1 Battery level is lower than 15 %.

      7 – Battery voltage value presence. 1 Means device is reading and transmitting battery voltage value.

      Temperature 08B4 Raw value example 0x08B4 hex, 2228 dec.

      Raw value needs to be divided by 100.

      Real temperature is 22,28 Celsius.

      Humidity 12 Raw value example 0x12 hex, 18 dec.

      Decimal value is humidity in percent. Humidity 18 %

      Movement 0CCB (MSB)0000 1100 1100 1011(LSB) binary

      0 - Most significant byte(MSB) represents Movement status. In this case device is not moving 0. If it was 1 device is moving.

      000 1100 1100 1011 – represent detected movements count 3275 decimal value means device has detected total 3275 movement events,

      Angle 0BFFC7 0B – Most significant byte represents device pitch. Device pitch can be from -90 to 90 degrees.

      In this example device pitch is 0000 1011 (2's complement) = 11° degrees.


      FFC7– Two least significant bytes represent device roll. Device roll can be from -180 to 180 degrees.

      In this example device Roll is 1111 1111 1100 0111 (2's complement) = -57° degrees

      Battery voltage 67 Battery voltage – raw value example 0x67 hex. Decimal value of parameter 103. To calculate battery voltage need to use calculation 2000 + (VALUE * 10). In this case battery voltage value 2000+(103x10)= 3030 mV

      Safety information

      This message contains information on how to operate BTSID1 safely. By following these requirements and recommendations, you will avoid dangerous situations. You must read these instructions carefully and follow them strictly before operating the device!

      1. To avoid mechanical damage, it is advised to transport the device in an impact-proof package.

      2. In case of malfunction contact your Teltonika account manager or write to the technical support team over the Helpdesk.
      Safety information.png

      Certification & Approvals

      Certificates Links
      E-Mark (EU) Yes
      FCC (USA) Yes
      CE/RED (EU) Yes
      RoHS (EU) Yes
      REACH (EU) Yes
      Anatel (EU) (PR) Yes
      IP rating Yes
      SIRIM QAS Yes
      SDPPI POSTEL Yes
      TELEC Yes
      ATEX Yes

      Nomenclature & Classification codes

      Name Links
      EAN Yes
      HS Yes

      Memberships

      Name Links
      Bluetooth® SIG Yes
      WEEE Yes

      External Links

      Product Page

      https://teltonika-gps.com/eye/

      Product Change Notifications

      The latest Product Change Notifications can be found: Product Change Notifications

      Software Errata

      Firmware Errata: BTS firmware errata

      EYE App Errata: BTS APP errata

      Promotional Material

      EYE Sensor Promotional Material

      Compatibilty with other Teltonika Devices

      Teltonika Networks: https://wiki.teltonika-networks.com/view/Bluetooth_EYE_Sensor_and_EYE_Beacon_support

      Partner Providers Supporting Software

      Frequently asked questions (FAQ)

      Documents

      Pdf icon.png Datasheet PDF (EN) (Updated on: 2024-01-16) Pdf icon.png BTSMP1 Quick Manual (EN) (Updated on: 2024-01-17) Pdf icon.png North America Flyer (Updated on: 2023-03-13)