A (somewhat lengthy) tutorial showing you how to build a ROS2-based robot system for flying a spacecraft in the Kerbal Space Program game. If you’re just curious, or a ROS1 user looking for an end-to-end walkthrough of building something with ROS2, then this is for you. You’ll find text, diagrams, code and a video.
Custom type value printers for Cling
Cling is a pretty cool C++ interpreter built at CERN, which shortens typical C++ development workflows by giving users a REPL (Read-eval-print loop), which means that you can type your C++ code, press ENTER and see the result almost instantly. However, out of the box Cling does not print the contents of structs, classes etc. In this blog post, I explain how a custom value printer can be added at runtime to expose the encapsulated data.
Basic gqrx I/Q and gnuradio file editing
I’ve been experimenting a bit with Software Defined Radio, and specifically the gqrx and gnuradio tools. The I/Q (In-Phase/Quadrature components) recorder in gqrx can record .raw files, which handily record the entire spectrum visible in the waterfall window. In this blog post, I will show how to load data from those files, extract a subset of the recording, and save that into a new file. Unlike .wav files (for which a plethora of tools exist), I found little documentation on how to work with these files outside gnuradio/MATLAB/Octave.
Using Flex and a Bison GLR parser in the Facebook Hackercup
In this post I’ll discuss how Bison’s GLR-parser feature can be used to solve a Facebook Hacker cup parsing problem. The problem at hand requires parsing text that is ambiguous, i.e. there exist multiple correct interpretations.