This instructable explains how to build an indoor location system with centimeter accuracy for <$ 200 using ultra wideband. do it yourself.

Most indoor location systems make use of wifi, bluetooth, wifi fingerprinting etc and show accuracies within several meters. Ultra wideband systems offer high accuracy (cm range), due to wide signal bandwidth. However, these UWB systems are very expensive, so for a setup where you want to localize something in your project (for example maneuver your lawnmower) you can easily spend > $1000 or more.

We decided to make a universal PCB that can be used as tag or anchor with or without wifi interface and an UWB ranging transceiver. With these diy-kits you can setup an indoor location system consisting for 3 anchors + 1 tag for around $200! And its even less, if you just want to measure the proximity to something... (1 anchor + 1 tag).

In this RTLS system, several anchors were build that dump the ranging data over the local network to a server. This way, long range communication and integration into already existing environments is possible, without having a certain master anchor that calculates the positions and requires alot of processing power. This is also possible, but requires messaging between the anchors and a processor connected to a single anchor (master). However, its more convenient to do this over wifi. A local PC connected to the network receives the data from the LAN in nearly realtime, runs the positioning calculation and draws the position of the tag.

See one of our videos how the results look like. In this instructable we will explain how we build and setup the system.

Update: Jan, 10th, 2017: We just hand soldered and finished a new and smaller tag, which is compatible with the old ones. Nice! Worked straight away. Even nicer! You can see the PCB in the picture. Although the "t" got wiped away in the URL I like it very much...

Please note: this instructable is still in progress... you can also visit us localino.net

Step 1: Design your PCB or get the PCB

We designed an universal PCB, which can take the UWB ranging chip and a Wifi Interface + some SMD compoenents. For this purposes we make use of the decawave DWM1000 and the ESP8266-07. The latter is well known in the maker community. You can either design your own PCB or take one of ours, its already proven and works like charm. We also started initially with wiring the components, this was very annoying and error-prone. Next time I will do a PCB immediately.

As a design tool for your PCB you can for example use EAGLE or KiCAD. there are for sure dozens of PCB design tools, but if you want to start with a PCB we recommend to use one of these two. There are plenty of tutorials on youtube.

When you finished the design, don't take the effort to print these PCBs on your own. There are many tutorials how to make a PCB, but honestly, this is very exhausting and -hey- for this setup you will already need 4 PCBs, right? So go to some PCB manufacturer and let him do the job. He will charge you some bucks for a piece, but you will know the PCB is ok, tested and will work. There is no effort to find dead traces, take care of the etching and so on. I have manufactured hundreds of PCBs myself in the early days, its not worth anymore. Unless your design is not super super secret or complicated design you can also send them to the very very cheap manufacturers.

<p>I'm interested in this for a 'hotel' type environment, multi-floor w/ common corridor and rooms on each side, to locate to the 'room' where a tag might be. What would expected tag placement be?</p>
<p>&lt;1cm<br> accuracy? no, its &quot;in cm&quot; accuracy. my measurements say its <br>in the range of &lt;10cm. with less than 3 beacons (anchors) you cannot <br>do 2D position estimation. it gives ambiguous results. more anchors <br>would improve accuracy, or INS sensors, tracking, etc.</p><p>see some histograms here: </p><p>https://hackaday.io/project/18296-localino-open-source-indoor-localization-system </p><p>anchor source code:<a href="http://shop.localino.net/index.php?route=product/product&path=62&product_id=65" rel="nofollow">http://shop.localino.net/index.php?route=product/p...</a> or thotro on github. the tag source is the same, just differnet init procedure and missing UDP part. </p>
<p>You say &lt; 1cm accuracy!! (awesome). How did you measure this? If I were to fix the beacons in a 2m by 3m arrangement would this improve the accuracy somewhat? Would using only 2 beacons reduce accuracy? </p>
<p>Can not find the open source code. Can you provide a link or github repo</p>
<p>Hi, the max distance is specified as 300m in the datasheet. however, it depends on the power level, antenna, etc. see my hackaday post here (</p><p>https://hackaday.io/project/18296-localino-open-source-indoor-localization-system) where i measured the max distance outside. 50m is reliable. In your case I would place anchors in a grid of 20-30m. This will get you reliable positioning for the tags. Because, the tags will automatically talk to those anchors which are in range.</p>
<p>What is the largest distance between anchor and tags?<br>I want make this positioning system but I need them works very stable in large auditorium 100m*50m.. <br>Do you have some ideas? Maybe I need more tags? If more, how much?</p>

About This Instructable



More by kuek:Localino: Open Source Indoor Positioning System (Arduino + Decawave) 
Add instructable to: