Pebble Blueprint

 project, programming

Guys, guys, guys... I have been working on a project for a couple of weekends now and to make a long story short it's a watchface and watchapp generator for the Pebble Time for iOS. The basic idea is that it allows putting watchfaces/watchapps together easily and then deploying them on the Pebble that is attached to the iOS device. Here is a video of the whole thing in action, note that the iPad simulator uses US keyboard layout and I only have my German one, so, yeah, you can watch me stumble over the keyboard quite a bit at times: Also, my Pebble Time arrived yesterday and this is how it looks like in real life: Took quite

CLion, a couple of weeks after the EAP

 programming

I bought CLion after sporadically using it in during the EAP phase. I’ve been using Xcode and Visual Studio as IDE of choice so far on OS X and Windows, and both are great, but when developing a cross platform library like Rayne it definitely was a pain to keep both project files in sync. CLion promises to not have that issue, be cross platform AND allow me to use one single build system: CMake. If you are unaware about what CLion is, CLion is a C/C++ IDE by Jetbrains, the guys behind products like IntelliJ, AppCode, WebStorm and more. In short, they know IDEs. CLion is my first Jetbrains product. I’ve heard good things about them,

Integrating Crashlytics into Build Bots

 programming

Testflight has seemingly no interest in its regular business anymore and broke the crashreport symbolication a long time ago. We are quite dependent on that though, we don’t want to know how many times the app crashed but where it crashed. So, a week and a bit ago we jumped ship to Crashlytics, which is a really nice platform to analyze crashes. The only issue is that their dSYM upload requires a run script build phase, so their upload script runs as part of the build process. Now, you can add plenty of ifs around that to make sure that you don’t upload debug dSYMs, but still, chances are you will end up uploading more dSYMs than you

Firedrake memory corruption bug

 programming, firedrake, debugging

There was a bug that I couldn’t figure out for the life of me. It was somewhere deep in my hobby kernel Firedrake and it made zero sense. It manifests as memory corruption, more specifically, at some point a pointer suddenly becomes zero. I tried to narrow it down with printf() debugging, but that didn’t get me very far because at that point the scheduler is already running and regular task switches occur, which have the side effect of the kernel not running in consecutive order any longer. Luckily, QEMU, my go to emulator, has support for GDB. The easy solution is therefore to fire up GDB, attach it to the remote debugger exposed by QEMU and set

Firedrake and Intel Edison

 programming, firedrake

I'm back from a business trip to Nice and a lot of stress that has kept me busy since the end of October is slowly fading away, which means I can go back and actually start hacking on the Intel Edison. Which actually means that I'm going to polish up a lot of parts of Firedrake before actually turning around and attacking the Edison. It helps to have a solid foundation to bootstrap oneself with. Two things that are really high up on my bucket list for Firedrake are more independence from the BIOS and GRUB as booatloader, with eventual independence from the CPU architecture itself. For that I want to implement a system that allows compiling the kernel with