Drone Course - Part 1 - Lift Force
Image source: wikimedia.org

Lift force is the fundamental force that allows aircraft to stay in the air. In this post I will try to explain it as easily as possible to build some foundations for better understanding of mechanics of flight of all drone platforms we will be discussing in this course (multirotors, helicopters and fixed wings).

Continue Reading ...
Drone Course - Part 0 - an introduction

It’s 5th anniversary of me working with drones this summer. In short:

  • I spent 2 years working on Bachelor’s and Master theses in drone field
  • Did two 1 month internships in companies where I was helping with drone projects
  • Worked over 2 years at SkyCircuits where I helped develop ground control station software for autopilots
  • Worked for the past 8 months at Terabee where among other things I’m testing rangefinders and positioning systems on drones

All of this wouldn’t be possible without the enormous help of communities (big shout out to diydrones members and every contributor to Arducopter or Px4 projects). This series will be a way to ‘give back’ to community and hopefully help people to get into drones.

Here is a rough list of what this series will cover:

Continue Reading ...

As a continuation of 1PPM challange I dived into uncharted territories of web development (something I was actively trying to avoid throughout my life so far).

In this post I will briefly present my (only partially unwarranted) worries on web development as well as mention the courses I learned from and possible way forward.

Continue Reading ...

My March 1PPM project significantly differs from all previous ones as I dedicated it to learning Robot Operating System (ROS).

The two books I almost read during this period are:

  • Mastering ROS for Robotics Programming
  • Programming Robots with ROS

In this post I will briefly describe my experience with aforementioned books (which in one particular case was quite short!)

Continue Reading ...
Assign a static USB port on Linux
Image source: wikimedia.org

Quite often I found myself needing static device names in Linux, especially when using ROS. As an example imagine having two sensors of a same type that yo connect to your PC. Now, if you don’t map your ports in any way you might end up with devices being mapped to /dev/ttyACM0 and /dev/ttyACM1, depending which one was connected first.

Let’s say your sensors are at different positions on the robot. If you want to make sure that you are using the proper device in your code you can either:

  1. Unplug and plug back the sensors again until you get the names you want
  2. Assign a static name to a port and be done with it

If you want to learn about the option 2 then read on.

Otherwise keep playing with your cables!

Continue Reading ...
UAV haptic control using Novint Falcon - pt 2

I consider the second and final part of the falcon project as finished from 1PPM perspective. Most of the project I already described in the previous post

Short summary of achieved results:

  • All the work done and test for Px4 SITL(jmavsim)
  • Mavros is used to talk to pixhawk (or SITL in this case)
  • Falcon is not suitable for flying real models (it isn’t reliable enough)

Without further due, here is the video showing the proof of concept in action:

Want to know more about the project? Read on!

Continue Reading ...
2 months of vim and tmux

For the last two months I’ve been using 3 tools to effectively work with the terminal on Linux. In this post I’ll try to sum up my experience so far and show you all the tools that I’m using at the moment.

In the post I will add some commands that I find useful everyday. Please bare in mind that in 2 months I barely scratched the surface of both vim and tmux.

Continue Reading ...