Raumfahrer Projekt - Day Zero


Phew, it's been a busy six months or so since I've last posted. So busy, in fact, that I had two weeks of vacation left over from last year that I was able to roll over to this year, but it had to be used by the end of Q1.

Tomorrow (2018-02-19) kicks off my first day of vacation, and I wanted to share what I'm planning on doing for the next two weeks - something I'm calling The Raumfahrer Projekt.

Okay, what is it?

The idea is to develop a portable, battery powered device to track people or objects as they move around inside of a room or building.

My design will be based primarily on a module called the DWM1000, which is an Ultra Wide Band (3.5GHz to 6.5GHz) radio module capable of measuring distance between two units at an accuracy of around 10cm. It does this by sending a few pings back and forth between two or more of these radios, and measuring the time elapsed between these pings. Since radio waves propigate at the speed of light, it is possible to measure distance based on the round trip time of messages. In a later post, I'll go a bit more into how exactly this module does this.

I also plan to include a 3 dimensional accelerometer on the board itself, as well as a Cortex M4F processor, which should be capable of doing some Kalman Filter based Sensor Fusion in order to make the tracking even more accurate.

Oh, and I plan to write the whole firmware in Rust, since I've been looking for a bare metal embedded project to apply some of the other Embedded Rust learning I've worked on in the past. I'm looking forward to incorporate some of the really awesome work Japaric has been doing lately with the RTFM and Embedded HAL components, and hopefully contribute back a bit.

How much do I expect to get done?

Well, I don't expect to have a fully working everything, even with two weeks of full time effort. I'll be learning some new software tools, playing with new hardware, and making happy little mistakes along the way.

My primary goals for the next two weeks are:

Wrapping up

Feel free to follow along on Github, and ping me on Twitter - @bitshiftmask. I'll also try to post here daily, and may even have some surprise content in the form of video or audio.