SparkFun Electronics Commentsurn:uuid:214d0e4e-f1b1-d287-ce26-ac5b4c9f82492024-03-28T04:22:12-06:00SparkFun Electronicsmicrobob on Neato Robotics XV-11 Tear-downmicroboburn:uuid:e32db698-6474-adab-fbcd-5c495b6346372014-01-09T17:16:48-07:00<p>10Hz 360 dgerees for $30 , 2014 thats not here yet</p>
Customer #333551 on Neato Robotics XV-11 Tear-downCustomer #333551urn:uuid:219c9460-7a05-7078-57d0-e2ccda7846ea2012-07-08T15:44:29-06:00<p>Does anyone know if there's a circuit diagram floating out there of the LIDAR system I can look at?</p>
Shocktube on Neato Robotics XV-11 Tear-downShocktubeurn:uuid:18e66080-2585-a753-ad8e-64525701b0f62011-11-03T07:31:05-06:00<p>Has anybody tried to turn the LRF on its side to see if it operates in that orientation?</p>
HissingRoachParty on Neato Robotics XV-11 Tear-downHissingRoachPartyurn:uuid:9d63a86b-64f4-0876-c4b1-08a9b28abd2e2010-12-01T15:56:25-07:00<p>You mean like Robosapien?</p>
dcormier on Neato Robotics XV-11 Tear-downdcormierurn:uuid:dd8a0d3e-9838-3024-0321-77ccb44953c92010-11-29T17:58:41-07:00<p>Well done, Hash79: http://robotbox.net/blog/gallamine/neato-robotics-xv-11s-lidar-hacked</p>
Hash79 on Neato Robotics XV-11 Tear-downHash79urn:uuid:c42889b1-128f-8783-46e0-ec5b63d0423b2010-11-26T02:23:29-07:00<p>Video showing live data processing and the python code used.<br /><br>
<br /><br>
http://random-workshop.blogspot.com/</p>
Hash79 on Neato Robotics XV-11 Tear-downHash79urn:uuid:eb1e4c28-cfcf-6a8e-959f-a7215fa1cd632010-11-25T03:29:49-07:00<p>Check out this data dump and explanation. Significantly different from what was seen at Sparkfun.<br /><br>
<br /><br>
http://random-workshop.blogspot.com/2010/11/useable-data-from-xv-11-lidar_25.html</p>
Hash79 on Neato Robotics XV-11 Tear-downHash79urn:uuid:9ab4ab6d-7635-a2fb-b23b-62c95332f4812010-11-24T17:53:16-07:00<p>Pics of test setup and Terminal interface into the XV-11 LIDAR unit.<br /><br>
<br /><br>
http://random-workshop.blogspot.com/</p>
Xevel on Neato Robotics XV-11 Tear-downXevelurn:uuid:521e93e7-bdcd-fe2f-d70b-23f1939786c52010-11-24T08:48:48-07:00<p>Distance seems to be at least 12 bit...</p>
Xevel on Neato Robotics XV-11 Tear-downXevelurn:uuid:48d0a4ca-e294-dcc0-1975-d95a1ff037002010-11-24T06:33:05-07:00<p>http://www.youtube.com/watch?v=vneaaKsa2Dw<br /><br>
Code : https://github.com/Xevel/NXV11<br /><br>
If anyone with a hacked robot could test the code with real live data... :puppyeyes:<br /></p>
mule on Neato Robotics XV-11 Tear-downmuleurn:uuid:27e57776-cfea-d0cd-2d6c-d1e80dbab9b92010-11-24T03:55:26-07:00<p>Looks like four bytes with data straddling bytes (well to a degree) - little endian style. From the looks of it - there is a header of some sort (6bytes - 5A A5 00 C0 xx D1) - the xx seems to be a byte which changes. Then following this is 360 samples - these are composed of 4 bytes each and yes, appears that based on timing from traces - scanner runs at 5Hz. Details of each sample appear to be something like the following:<br /><br>
<br /><br>
- Byte 1: Lower Byte of Distance Measurement<br /><br>
- Byte 2: Top 7 bits are status info bits - MSB seems to indicate reading not possible. LSB seems to be part of the distance measurement and is the 9th bit of this value with the 8 other bits being represented by Byte 1. <br /><br>
- Byte 3: Lower Byte of Quality measurement (reflectance etc - who knows) ??? <br /><br>
- Byte 4: Upper Byte of Quality measurement (reflectance etc - who knows)???<br /><br>
<br /><br>
What would be most useful is a square box around the device as previously mentioned or putting it in a square room - to get a better feel for the data structure - seems like the current no shield data has too many issues for really solid proof of the above description.<br /><br>
<br /><br>
Hope this helps!</p>
Hash79 on Neato Robotics XV-11 Tear-downHash79urn:uuid:43bd6b0a-0c9e-fb07-d9ed-75d8887ac0ab2010-11-23T17:58:42-07:00<p>Nevermind, I think I can see the slip-ring in one of the pictures.</p>
Hash79 on Neato Robotics XV-11 Tear-downHash79urn:uuid:79191ac5-4713-ccdc-788d-6942f9f635d02010-11-23T17:47:57-07:00<p>From the pictures of the turret on Robotshop and here it does not look capable of spinning in one direction forever. Are the 4 wires coming off of the spinning mechanism just going through the center and out the bottom?<br /><br>
<br /><br>
Have you seen the turret spin in one direction continuously? The white paper on this device talks about a low range RF link to transfer data but I would say due to cost (and the extra complexity in the prototype pictured) they dropped that idea and possibly decided to rotate the turret one way 360 degrees and back the other way 360 degrees. Maybe this is data in the stream that is transmitted.</p>
CTaylor on Neato Robotics XV-11 Tear-downCTaylorurn:uuid:2c3024f7-efa6-541c-71b6-8b7a26edeb6a2010-11-23T14:24:21-07:00<p>Actually, when I was doing the tear-down, I was surprised at how nice the wheel assemblies were. They seem very solidly built, no skimping on heavy-duty construction.</p>
MichaelShimniok on Neato Robotics XV-11 Tear-downMichaelShimniokurn:uuid:5950bbb5-1f1b-6d8a-092a-7ee802ac42662010-11-23T12:47:45-07:00<p>Anyone willing to divulge or speculate what imaging sensor is being used? Am really curious. (But not $400 curious) :D<br /><br>
<br /><br>
@Otatiaro: we're getting similar results - 5hz spin, etc.</p>
Erik-Sparkfun on Neato Robotics XV-11 Tear-downErik-Sparkfunurn:uuid:514da0ca-5161-da7a-5760-63298a3cf35d2010-11-23T09:32:29-07:00<p>Well, this site didn't magically appear, and neither did any of our internal software tools :)<br /><br>
That said, we're pretty swamped at the moment, but I'm sure one of us could do it some other time as it shouldn't be very difficult at all. You won't find us using any .NET tools, though.</p>
Otatiaro on Neato Robotics XV-11 Tear-downOtatiarourn:uuid:ee01e53f-64a0-f6b3-b9b6-e6e7a5fae5f62010-11-23T03:44:59-07:00<p>without ... sorry</p>
Otatiaro on Neato Robotics XV-11 Tear-downOtatiarourn:uuid:375e2c00-c329-5414-540b-85b5f8b4174a2010-11-23T03:44:30-07:00<p><strong><a href="/users/83310" rel="nofollow">Otatiaro</a>:</strong> <em>Hello,<br /><br /><br>
<br /><br /><br>
Extracted this "radar" from the data flow ...<br /><br /><br>
<br /><br /><br>
http://otatiaro552.free.fr/radar.png<br /><br /><br>
<br /><br /><br>
Turret was spinning at 5Hz (at 1.7 to 2.0 seconds).<br /><br /><br>
<br /><br /><br>
Regards,<br /><br /><br>
Thomas.</em><br /><br /><br>
<br /><br>
I used the data flow with shield.<br /></p>
Otatiaro on Neato Robotics XV-11 Tear-downOtatiarourn:uuid:6d8a40e8-10b3-905f-88bb-713daba62d9d2010-11-23T03:40:34-07:00<p>Hint : the variables are 10 bit wide.</p>
Otatiaro on Neato Robotics XV-11 Tear-downOtatiarourn:uuid:6897e6c3-34e4-9040-2548-621a61d2e1fc2010-11-23T03:36:36-07:00<p>Hello,<br /><br>
<br /><br>
Extracted this "radar" from the data flow ...<br /><br>
<br /><br>
http://otatiaro552.free.fr/radar.png<br /><br>
<br /><br>
Turret was spinning at 5Hz (at 1.7 to 2.0 seconds).<br /><br>
<br /><br>
Regards,<br /><br>
Thomas.</p>
mmwise on Neato Robotics XV-11 Tear-downmmwiseurn:uuid:9fad6f28-0766-377b-ae7c-a37f31a1b3952010-11-23T00:59:00-07:00<p>Can you please post more logs with ranges that are >.2m in radius? The white paper states that the sensor has resolution from 0.2-6m. So the data posted isn't good for hacking with..</p>
SlyVixsky on Neato Robotics XV-11 Tear-downSlyVixskyurn:uuid:febc3f82-1c20-2a92-7e77-07ccc5225fa82010-11-23T00:12:36-07:00<p>just looking at the post here, and im rather simple minded, im seeing "data start -- data type -- data -- data end"<br /><br>
the data being a 2 char hex (8 bits) and thus 0 to 255, it makes sense this corresponds to some other pre-coded unit of measurement. <br /><br>
Also off a simple dc motor, how is it detecting what angle its at? hall effect and an assumed rpm? more encoding?</p>
hololight on Neato Robotics XV-11 Tear-downhololighturn:uuid:a598096f-6ed3-ba2b-658c-136aa6a3a2b62010-11-22T22:20:21-07:00<p>So my knee-jerk thought was to take the smaller diameter roll, cut out a vertical slot that would equal a defined angle at that distance; then put the larger diameter roll outside it.</p>
MichaelShimniok on Neato Robotics XV-11 Tear-downMichaelShimniokurn:uuid:1c54f917-5cae-3af6-bcbe-85e5ac23ca4f2010-11-22T21:06:49-07:00<p>Nice plot! Sure looks right, doesn't it? Been trying to write some perl to parse out the data stream properly. Haven't verified for sure but it looked like it was broken up into 360 data point sets. <br /><br>
<br /><br>
Wished I could swing $400 for one of these things. I don't suppose I could borrow Sparkfun's for a couple days? :) :) :) (Boulder is a pretty short drive... :))</p>
DaveAK on Neato Robotics XV-11 Tear-downDaveAKurn:uuid:d9daa2a3-703e-cee9-439a-8013dd26b1ad2010-11-22T20:00:38-07:00<p>Replace the circular shield with a square one. This will give you a range of readings that you can compare mathematically. For example, the maximum points might all be at 90 degrees, with the minimum ones offset by 45 degrees. The readings in between might fit with what you can calculate. This could possibly give you readings of angles and distances.<br /><br>
<br /><br>
Assuming it's that simple. ;)</p>
gallamine on Neato Robotics XV-11 Tear-downgallamineurn:uuid:8629a6ef-0700-073c-76c2-1e2ac33ef7592010-11-22T18:59:15-07:00<p>The published specs are that the unit rotates at 10 hertz.</p>
Xevel on Neato Robotics XV-11 Tear-downXevelurn:uuid:915454b7-14db-6242-94d3-0410bd1d27fe2010-11-22T18:10:22-07:00<p>http://forums.trossenrobotics.com/gallery/showimage.php?i=3528&original=1&c=3<br /><br>
<br /><br>
Does this look like what you were expecting for the "NoShiled" run ? :p</p>
jotux on Neato Robotics XV-11 Tear-downjotuxurn:uuid:f60f6c57-877b-5a3f-19b1-87260fb096b42010-11-22T16:40:46-07:00<p>Also, Can anyone post the speed at which it takes the unit to make a complete revolution?</p>
Keith Neufeld on Neato Robotics XV-11 Tear-downKeith Neufeldurn:uuid:c8e9147e-e094-9934-0738-35279d54f1cd2010-11-22T15:49:44-07:00<p>Hm, this brings to mind an interesting new sales model:<br /><br>
<br /><br>
1. Create a product retailing for $400 with interesting technology bits inside.<br /><br>
<br /><br>
2. Put up $1000 bounty to the first hacker to do X with embedded technology.<br /><br>
<br /><br>
3. Sell lots of units to aspiring hackers.<br /><br>
<br /><br>
4. Profit! :-)</p>
Azayles on Neato Robotics XV-11 Tear-downAzaylesurn:uuid:4650365b-47b1-d86e-c645-e8cadffc64ec2010-11-22T15:35:56-07:00<p>As an addendum, you could hook an xbee module to the robot and a matching xbee module to a computer and let the robot roam around while the computer extrapolates data.<br /><br>
Just hang an LD33V off the robot's power supply, an xbee module off of that, and Robert's your father's brother.</p>
Azayles on Neato Robotics XV-11 Tear-downAzaylesurn:uuid:881d7110-5b9b-ccf7-7391-bd15d60994c32010-11-22T15:29:46-07:00<p>Does Sparkfun have any resident programmers on site? You could read the serial data into a computer program written to parse the hex data after the word "spin" and plotting out the numbers.<br /><br>
You <em>might</em> even be able to copy/paste the hex data into excel and parsing it with VBA, or use the serial input API from within VBA itself to capture and extract out the data.</p>
jotux on Neato Robotics XV-11 Tear-downjotuxurn:uuid:f79c9077-837d-c2d7-8dad-d9bcbd44d4632010-11-22T15:07:04-07:00<p>Can you guys dump the teraterm output from the 13mm and 22mm to a file and post it?</p>
FuriousGeorge on Neato Robotics XV-11 Tear-downFuriousGeorgeurn:uuid:4f73b56a-2420-84c1-6b51-de3fba9dc2bc2010-11-22T13:37:03-07:00<p>For sending/viewing hex I've found the Hercules SETUP utility from the hw-group to be very useful. Can download for free here: http://www.hw-group.com/products/hercules/index_en.html <br /><br>
<br /><br>
I use it all the time for testing RTUs and PLCs that don't use ASCII command sets.</p>
pubdc on Neato Robotics XV-11 Tear-downpubdcurn:uuid:55286369-5847-a8b7-2f83-7889da703a782010-11-22T13:30:34-07:00<p>Thanks SF for sharing this exciting quest. I can see some use for the lidar, but mostly appreciate the insight in the general hacking process (as in, it gives me confidence to open up anything anyone will put under the xmas tree ... for anyone). Planet beware !</p>
Xevel on Neato Robotics XV-11 Tear-downXevelurn:uuid:0d4b44e9-32c1-d5aa-61aa-8305b6da26722010-11-22T13:14:59-07:00<p>It's a shame the XV-11 is not available outside of North America...</p>
gallamine on Neato Robotics XV-11 Tear-downgallamineurn:uuid:90ebeabb-3092-7ca9-17ea-2439060cdae82010-11-22T12:23:06-07:00<p>CTaylor,<br /><br>
Awesome! I run RobotBox and was the one that put up the initial $200 bounty. Others from the community have chipped in to raise it. On Friday, the CEO of Robodynamics offered $200 to the first person that used the sensor with a SLAM algorithm for mapping: http://twitter.com/robodynamics/status/6109560045572096<br /><br>
<br /><br>
That means there's now $1000 you can potentially win from hacking this thing.<br /><br>
I'm really stoked by the response and hope it'll be a valuable sensor.</p>
gallamine on Neato Robotics XV-11 Tear-downgallamineurn:uuid:9e3b778b-b1f1-f5c2-5ebe-82454fe4cb792010-11-22T12:20:50-07:00<p>tiagofumo,<br /><br>
Yeah, I was inspired by Ladyada to sponsor this contest.</p>
AdShea on Neato Robotics XV-11 Tear-downAdSheaurn:uuid:2891178c-67da-294a-c01c-bae89f96334a2010-11-22T11:42:12-07:00<p>If you look at the whitepaper linked in the article, and at the dumps, the unreadable text looks to be raw samples in binary. The system reports its system parameters in human readable form then switches to binary because it needs the data speed to get 3600 sps.</p>
CTaylor on Neato Robotics XV-11 Tear-downCTaylorurn:uuid:ff51c5be-aa64-5138-18d6-a4072ab3793a2010-11-22T11:41:24-07:00<p>The initial ASCII text is only sent when the device reboots. The data after "Spin..." is data coming from the sensor. It's still being sent at 115200, but it's hexadecimal sensor data, and not ASCII, so on Tera Term it looks like junk. We used the logic analyzer to view the data hex values, which is what we're interested in.</p>
Reed on Neato Robotics XV-11 Tear-downReedurn:uuid:8c0d5622-e9ad-3735-7ea7-3bc92f5f51172010-11-22T11:31:39-07:00<p>Hindsight is always 20/20, but if you're using the saleae analyzer it should be configurable to show ascii rather than just hex, so that could have been used rather than teraterm since you had it hooked up first.<br /><br>
<br /><br>
Also maybe the unreadable text after "Spin..." is coming out at a different baud rate?</p>
Awesomenesser on Neato Robotics XV-11 Tear-downAwesomenesserurn:uuid:be1942d4-3dd0-b71f-dd12-21e7f9d80f982010-11-22T11:11:44-07:00<p>I cannot wait to make a cheap mapping robot using this sensor. Neato said they would make spare parts available in a few months. (Those wheels look nice too)</p>
tiagofumo on Neato Robotics XV-11 Tear-downtiagofumourn:uuid:fc2de80b-baf7-d1fe-f115-e95079ee006d2010-11-22T11:04:30-07:00<p>it remenbers me about adafruit and that hackering kinect stuff... the prize, the data sniffing, etc...</p>
AdShea on Neato Robotics XV-11 Tear-downAdSheaurn:uuid:7ed7ee6a-1833-ca19-f517-0b7f5753e6282010-11-22T10:52:09-07:00<p>Looks like its running a TI TMS320F2802. <br /><br>
<br /><br>
http://focus.ti.com.cn/cn/lit/ds/symlink/tms320c2801.pdf<br /><br>
<br /><br>
You might be able to get a flash dump from the DSP on the LIDAR unit if you can get at the JTAG lines.</p>