Underwater Photography and Videography


image underwater with lights and no lights

I had somebody ask me questions this week about underwater photography and videography with robots (well, now it is a few weeks ago…). I am not an expert at underwater robotics, however as a SCUBA diver I have some experience that can be applicable towards robotics. Underwater Considerations There are some challenges that exist with […]

Lithium, Lithium-ion, LiPo & LiFePO4 Battery Safety and Fire Handling


NASA JPL RoboSimian Fire

Lithium battery safety is an important issue as there are more and more reports of fires and explosions. Fires have been reported in everything from cell phones to airplanes to robots. If you don’t know why we need to discuss this, or even if you do know, watch this clip or click here. I am […]

Industrial Robot Safety Standards, Abbreviations, Codes & Titles


List of industrial safety standards

I recently attended the National Robot Safety Conference for Industrial Robots and found myself confused with all of the safety standards. Here is the sheet that they provided to help identify Standards, Abbreviations, Codes & Titles. If you find any of these interesting and wish to purchase the standards you can go to the Robot […]

National Robot Safety Conference – October 2017


national robot safety conference

I had the opportunity to attend the National Robot Safety Conference for Industrial Robots today in Pittsburgh, PA (USA). Today was the first day of a three-day conference. While I mostly cover technical content on this site; I felt that this was an important conference to attend since safety and safety standards are becoming more […]

CAN and CCP/XCP for Error Detection and Calibration


CAN logger kvasser

Kvaser reached out to me about writing a sponsored post to put on this site. I have used many Kvaser CAN interfaces in the past. Since they work well and are reliable I agreed. I also dont know anything about CCP/XCP; so this should be interesting. This is my first time accepting a sponsored post […]

LIDAR vs RADAR: A Detailed Comparison


Radar usage

Hi all I was recently asked about the differences between RADAR and LIDAR. I gave the generic answer about LIDAR having higher resolution and accuracy than RADAR. And RADAR having a longer range and performing better in dust and smokey conditions. When prompted for why RADAR is less accurate and lower resolution I was asked […]

SICK LMS Full LIDAR Teardown


LMS 291 Fully disassembled

I recently found a SICK LMS291 in the trash (dumpster diving time!). It is a bit of an older model as it was manufactured in August 2000, however the fundamentals should be similiar to the current generation of sensors. If you look at robots from that era you will often see them covered in this […]

Systems Engineering & Project Planning


Various System Lifecycles DoD ISO

Systems engineering is the part of project management that deals with defining and developing a system (as opposed to contracts and resource allocation). Systems engineering provides the background and definitions so that the next step of project execution can occur. Often there is a cyclical process of looking at requirement definitions from the systems engineer […]

Motor Control Systems – Bode Plot & Stability


Set point feedback controller

What is a control system? A control system alters the future state of its system to a more desirable outcome. We often work with feedback control systems (also called closed-loop control), where the result of the command is fed back into the control system. In particular we are looking for the error between the command […]

Machine Learning Methods


Decision tree

There are many terms that are thrown around about machine learning. But what do they all mean? and what are the differences? Lets start with machine learning. Machine learning “gives computers the ability to learn without being explicitly programmed” (Arthur Samuel, 1959). Machine learning is a large and complex field with many algorithms that mostly […]

Perception in Smoke, Dust or Fog


Robot Operating in Smoke Fog Dust

I recently had the fortune to attend a talk titled Multi-Modal Data for Perception in Smoke-Filled Underground Mines by Joe Bartels. It was an interesting talk about pushing sensor technology into difficult environments that can have smoke, dust or fog . The following are notes that I took during the talk, as always I add […]

How to Mount an External Removable Hard Drive on a Robot


fstab options for mounting drive

We often want to add an external hard drive to our robots in order to have a dedicated drive for data collection. Having the dedicated drive lets the primary drive remain uncluttered, have less wear-and-tear, split logging between drives for performance, and potentially be a larger spinning disk (as opposed to an expensive SSD). It […]

Bearings, Bushings & The Engineering Commons


I listen to several podcasts, including The Amp Hour, Embedded, and the Engineering Commons. A recent (depends when you read this) Engineering Commons podcast was all about bearings. I have been wanting to write a bearings post for a while so I am using their podcast (with permission) as a basis for writing this post. […]

Ford Self Driving Car


Ford self driving car

Today I had the chance to see a Ford Fusion self driving car. With all of the recent news it is easy to forget that Google and Uber are not the only players in this game. Most large auto manufacturers have a self driving car program, including Ford. Ford is already testing their self driving […]

Tether’s: Should Your Robot Have One?



Some people swear that all tethers are bad. Some people recommend attaching a tether to robots in order to provide power (to save the mass and volume of the batteries), for reliable fast communications, transfer of pressure or fluid, to track a robots position, or as a safety harness (in case the robot needs to […]

Computer Vision, Context, & The Need for AI


confusing person for self driving car

In life as well as in computer vision, context is critical. Scroll through this post slowly and don’t cheat. What do you see in the image below? Now what do you see in this next picture? Keep Scrolling How about this picture, can you now identify the images above? How did you identify the car? […]

Book Review: The Car Hacker’s Handbook by Craig Smith


Car hackers handbook

The Car Hacker’s Handbook A Guide for the Penetration Tester is a really interesting book about how to interface with cars to read from onboard systems, spoof devices, and control the vehicle on your own. One of the reasons I really like this book is that it is easily the best book I have ever […]

Sensors Driving the Uber Self Driving Car


Uber Self Driving Cars Top View

I have had a bunch of questions from friends about how the Uber self driving car works. The simple answer is that I don’t know. I have no relation to, or inside knowledge of what Uber is doing. However I can look at the outside of the vehicle and try to guess what sensors I […]

chrony with GPS for Time Synchronization – Kicks NTP’s A$$


time syncing

Time synchronization is something that affects many robots. As robots have more computers and more sensors keeping everything in sync becomes increasingly important. Trying to look through log files where all of the times are skewed is not fun and makes processing difficult. Merging sensor data together with GPS can also be disastrous if the […]

Drive Selection – Wheels, tracks and more


Marsokhod 6x6 is completely articulated in pitch, roll and yaw.

In the past we have looked at wheel design and the kinematics of skid steer and mecanum wheels. In this post we will take a quick look at different types of mobility types (ie. wheels, tracks, and how to connect them) for drive selection. I know the items in this list are not direct comparisons. […]

Roboticists EDC (Every Day Carry)


EDC Robot testing tools

Recently I have been doing a lot of field work and have seen a lot of people looking for random things or asking people if they had those items. In many of those cases I had the items they needed. This is not because I am great or anything, this is from building up my […]

Drive Kinematics: Skid Steer & Mecanum (ROS Twist included)


drive kinematics

Hi all I am often in need of the basic kinematic motion equations for skid steer vehicles. I have also recently been working with mecanum wheeled vehicles. The skid steer equations are fairly simple and easy to find, however I will include it in different versions and include a ROS approach. The mecanum wheel equations […]

Design Thinking for Robotics and Life


Hi all Recently I went to a seminar about design thinking. Design thinking is an approach to solving a problem from any domain. During the seminar people used design thinking to analyze how to automate password recovery, lead a finance team, build an activities team, and others. I used this as an exercise to look […]

Book Review: Peer Reviews in Software by Karl Wiegers


peer review in software

I have been part of many software teams where we desired to do code reviews. In most of those cases the code reviews did not take place, or were pointless and a waste of time. So the question is; how do you effectively conduct peer reviews in order to improve the quality of your systems. […]

Antenna Separation: How Close Can You Go?


antenna on car

Hi When building a new robot the mechanical engineers always ask me how close can the different antennas be to each other. It is not uncommon to try squeezing 5+ antennas on a single robot (GPS, GPS2 for heading, RTK, joystick, e-stop, communications, etc..). So what is the proper response? The real answer is that […]

Adaptive RRT – ARRT (with code)


Adaptive RRT

Hi all Back in 2010 I was taking an AI class where we learned about Rapidly Exploring Random Trees for motion planning. For my final project I developed an adaptive version of the RRT that I named ARRT. I decided to post it here to share with others. The post below is based from the […]

Book Review: Mastering ROS for Robotics Programming by Lentin Joseph


mastering ROS for robotics programming

Mastering ROS for Robotics Programming is a good book that will help you learn ROS and take advantage of some of the powerful nodes (programs) that are out there. The book covers both a 7 DOF robot arm and a differential drive robot throughout the different chapters. That should really help you out no matter […]

USB device configuration: Alternative to udev


USB Port

Hi all Every time I need to add multiple USB devices to a computer I get nervous and dread the architecture. The problem is when a computer boots it automatically brings up USB devices in whatever order it sees fit (think crazy race conditions). So if you have a motor controller, a camera, and a […]

Robotics for Kids (and Adults) – Getting Started and How to Progress


SIK_Shadow_Chasis Sparkfun

I get many questions from people about how I think kids and adults should get started in robotics, how they should progress, and what they should buy, to learn about robotics. Here is my quick response: I think level 1 is for people older than 12-13. Level 2 is for people older than 15, and […]

Fuse Locations, Protection, Shunt Regulation, & Motors


shunt regulator

Hi all I wanted to write a quick post today about where to place fuses and how to protect your robot. When you design a system it is often tempting to place a fuse on every component. This idea is fine for most batteries, sensors, and computers. However this can really cause destruction when you […]