- Details
- Written by: zhang
- Category: Technology
The Production Process of Location Anchors and Location Tags
Product production is divided into two steps: hardware production and factory initialization.
Hardware production: We purchase the required components ourselves, place an order with a PCB manufacturer to make the PCB, and entrust a SMD(Surface Mounted Device) factory to do the surface mount (soldering). Finally, what we get is a PCBA, which is a semi-finished board with components installed. Sometimes, due to procurement cycle time, some components may be soldering by ourselves.
After getting the PCBA, we first powered on to see if it was normal. Sometimes, components on the board may have weak soldering or short circuits. If the soldering is OK, some LEDs on the board will light up.
If there is no abnormality when powering on, you can flash the firmware. The firmware on the board is divided into two parts: Bootloader and Firmware.
Bootloader is a boot loader, which is fixed and unchanged throughout life. In other words, once it is flashed to the board, the Bootloader will not change. Even if there is a new Bootloader version in the future, the user's device cannot be updated.
Firmware is normal firmware, which performs normal functions and can be upgraded to a new version at any time.
We use a special firmware Flasher to flash the Bootloader, and most factories will use a firmware Flasher to flash the firmware. The firmware in the Flasher is encrypted to prevent it from being read by others. The programmer also has a flash count, which can count how many times it has been flashed.
After the bootloader is flashed, a factory initialization work needs to be done.
Factory configuration of the anchor: For the anchor, it is connected to the network (in fact, the power on mentioned above means connected to the network, because it uses POE for power supply). We have a dedicated computer running the factory initialization program. This program will automatically assign a MAC address and serial number to the new anchor, automatically write firmware to the new anchor, and automatically write the default anchor configuration. The factory configuration program can also print the nameplate of the new anchor, that is, use a label printer to print out an instant label with relevant information about the anchor: such as manufacturer, MAC address, serial number, anchor model, etc.
The factory configuration program will also do some testing at the same time, such as communicating with the reference anchor to confirm that UWB communication is normal; the factory configuration program pretends to be a location engine to confirm that it can normally receive data packets from the new anchor.
Factory configuration of the tag: The factory configuration of the tag is similar to that of the anchor. The difference is that the tag uses a USB data cable to connect to the configuration computer instead of using the network. Run the "tag factory configuration program" on the configuration computer. The configuration program will automatically assign an EUI64 address to the tag and upload the tag firmware to the new tag.
The factory configuration of the tag will also communicate with the reference anchor to confirm that UWB communication is normal.
For some tag models, we have a built-in RFID tag. We use an RFID Reader and Writer to write some initialization information to the RFID. This operation is also performed by the tag factory configuration program.
The tag factory configuration program also prints the tag's nameplate.
- Details
- Written by: zhang
- Category: Technology
Tag Low Power Analysis
This is a document from our development process.
After trying hard, when the tag entering sleep state, the lowest current is 15.x uA.
Let's analyze the possible power consumption areas.
ADC voltage dividing resistor
Two 1M resistors are used to divide the voltage to perform ADC on the battery 3.3V~4.2V.
This voltage divider circuit consumes 1.65 uA ~ 2.1 uA
XC6206P332 LDO
XC6206P332 is responsible for converting the battery voltage to 3.3V
The typical power consumption described on the Datasheet is 1uA , with a maximum of 3uA .
Capacitor leakage
Looking at the Datasheet of Samsung capacitors, the resistance at both ends is usually around 100MOhm. For a 3.3V power supply, the leakage current is equivalent to 3.3/100 uA, which can be almost ignored.
BAV70 charging part diode
In the charging part, BAV70 provides one-way communication. The manual says that at 25V, the reverse current is 40 nA
It can also be ignored.
- Details
- Written by: zhang
- Category: Technology
Document Download
Here are some technical information that you can download and study to have a deeper understanding of our products.
- Details
- Written by: zhang
- Category: Technology
RTLE(RealTime Location Engine) Design
The location engine is the most important part of the entire location system. It is responsible for receiving data packets from each anchor and calculating the coordinates of the tag.
For the initial version, we developed it in Java. Later, it needed to be sold as a product. Java lacked sufficient security measures and could easily be decompiled. Our intellectual property rights could not be protected. Therefore, we changed to rewrite the location engine in C++. Because our customers basically use Windows servers, the location engine currently only has the Windows version. At the beginning of the design, we considered cross-platform and considered support for Linux in some important places. In fact, when the C++ version of the location engine was first written, we successfully compiled a Linux version and ran it on Ubuntu.
We need to continuously improve the engine, add functions, or improve ease of use. Customers basically have no demand for Linux, so we no longer pay attention to Linux support. If you have this need, it should be easiest to adapt the location engine to Linux.
The core of the location engine is the calculation of coordinates. We studied several algorithms, and by default, the least squares method is used for calculations. This algorithm is fast and highly accurate.
The location engine interface supports 5 methods: TCP binary message interface, RESTful style interface, TCP text message interface, TCP custom binary message interface, and serial text message interface.
Because UWB is defined as near field communication, this means that the coverage range of UWB will be very small. In particular, the radio management department has restrictions on the signal strength of UWB sending equipment. If the equipment is to be compliant, the coverage will be very small. In addition, some environments that require location are more complex, such as obstructions such as walls. In short, we need to support multi-region location, divide a large venue into multiple location areas, and deploy location anchors in each location area. These small location areas are combined to form a complete location area.
Our location engine supports multi-region location. For example, under normal circumstances, the range of each location area is 100 meters * 100 meters. The 400 meters * 400 meters area can be divided into 4 small areas in the shape of "田", which is equivalent to deploying "4 sets of location systems" . Of course, our system supports anchor reuse on regional boundaries. For example, if a anchor is deployed at the center of the word "田", all four regions can share this anchor. Deploying a anchor at each intersection of the word "田", with a total of 9 anchors, can achieve the effect of 4 anchors in each location area.
In practice, we found that there are fixed offsets in some places. To this end, we developed an algorithm to correct fixed offsets.