Index ¦ Archives  ¦ Atom  ¦ RSS

Restarting this blog

Sat 11 February 2023

There's been a pretty long gap here, a little over 5 years, which matches almost exactly with my time at my previous company. I was the second employee, fifth in the room, and spent those 5 years building simulation software and tooling for the autonomous vehicle industry. As a result …continue

Continue reading →


Jumping to the bootloader of an embedded device

Fri 08 December 2017

Jumping to the bootloader from application code is highly desirable for many reasons, such as wanting to be able to reprogram devices in the field without any extra hardware (such as a button) to increase complexity, BOM cost, etc.

The code in this post will be tested on the STM32F070xB …continue

Continue reading →


KiCad DXF with two lines

Sun 02 July 2017

[UPDATE]: Kicad has released 4.0.7 as of August 2017, where this bug is fixed.

Do you have a problem with KiCad's default DXF output having two lines instead of one?

Well, apparently it's been fixed! However, it was fixed via this bug in April 2017. As of July …continue

Continue reading →


C++ Templates I

Sun 11 June 2017

As anybody who's looked at Cara's capnp->Python conversion code, they may have noticed that I've taken a liking to C++ metaprogramming via templates. I started my initial foray into C++ back in '06 when modifying an existing codebase for a robotics competition. It didn't use templates, and for the …continue

Continue reading →


Cara ready to be tried externally!

Wed 29 April 2015

After months of internal use without problems, we're ready to release cara for others to use. We would be very happy if others picked up cara and made it work for them. If you've been looking at the Cap'n Proto project but were hesitant to shoehorn it into your Python …continue

Continue reading →


AoE II HD - Ludikris map size

Mon 20 April 2015

This past Saturday, two friends and I played AoE II HD (Age of Empires II HD) online. We played a semi-custom scenario one of them had made with the three of us as a team in the middle of the map against 5 Hardest computers, high initial resources and starting …continue

Continue reading →


New Blog Layout

Mon 13 April 2015

Recently, I was looking at the Wordpress Admin page for this blog and everything was responding slowly. I realized that Wordpress is overkill for this blog. I have under 100 posts spread over 7 years, averaging under a post per month, I don't need a full-blown blog engine.

Also, the …continue

Continue reading →


Bionic Bird Android app

Mon 05 January 2015

I got my Bionic Bird in the mail recently, and I really wanted to start flying it. However, I only have Android devices, nothing that runs iOS, so the official channels were blocked.

tl:dr; I made a quick app using the Evothings client app. (Click the first link on …continue

Continue reading →


Building a binary into your Python package

Mon 15 December 2014

Firstly, let me acknowledge this is a rare problem. So the lack of documentation I ran into is totally acceptable. The problem: I have a Python package that has a C++ component that isn't an extension, it's a binary. I wanted that binary to be on the PATH of users …continue

Continue reading →


Mint Plus (Braava) Hacking Part II

Mon 08 December 2014

Following up from almost a year ago when I first attempted to hack (and broke) my Mint Plus, I've tried again! See?

Wired up Mint Plus

Yeah, lots of wires, but sadly no real progress. I noticed on the board there was an RX and TX pair, so I traced it to where the …continue

Continue reading →

© Fahrzin Hemmati. Built using Pelican. Theme by Giulio Fidente on github.