Skip to content

Instantly share code, notes, and snippets.

View midi.ino
#include "MIDIUSB.h"
void setup() {
pinMode(A1, OUTPUT);
pinMode(A2, OUTPUT);
int noteToPin(uint8_t note) {
if (note == 0x24)
return A1;

Keybase proof

I hereby claim:

  • I am knatten on github.
  • I am knatten ( on keybase.
  • I have a public key ASC3ZHZvSDnCsPmNRlC1MNSGxJz7_sIBoY4RYq_4gyvcFgo

To claim this, I am signing this object:



In the open source repository fuselibs-public, we accidentally leaked a username and password for TeamCity. They were not stored directly in the repo, but were contained in a shell script which is downloaded as part of the build process. The password has now been changed.

What was leaked, and how

In the Devtools repo, we had a shell script that had some functions for interacting with TeamCity. This used "Basic Authorization", which means the script had a hardocded base64 encoded username and password for the teamcity user on TeamCity. This user has access to basically everything on TeamCity, including build logs, branch names, build artifacts etc., from all the projects running in TeamCity. The user does not have administrator access, so it could not have created other users, changed other passwords, seen or changed project configurations etc.

Possible indirect leaks

If anyone found the username and password and logged into teamcity, it is possible that they viewed the build paramete

knatten /
Last active Jan 20, 2016
Installing android-19 support in Fuse

If you're getting the message Unable to resolve project target 'android-19', you have to install android-19 manually. This currently affects all new installations of Fuse, and will be fixed shortly. (If you've previously installed Fuse and built for Android, you are not affected by this bug.)

To manually install android-19, first, find the location of the android command on your computer. To do this, please run fuse install -s android, and look for the folder called AndroidSDK/tools.

![Screenshot]( image at 2016_01_20 13_58.png)

Then cd to that directory and run the following command:

android update sdk -s -u -a -t platform-tools,build-tools-23.0.2,android-19,android-21
View memleak
ckarmy [3:19 PM]
@bondehagen: @knatten: Push notifications work great now! But on IOS I receive all the time `2015-12-23 11:20:32.955 deem[755:264867] Received memory warning.`(edited)
and the app crash sometimes
In a Iphone 6 and Ipad 3!
knatten /
Last active Nov 10, 2015
Ideas for testing


  • Automatically put fuselibs on a Fuse branch and run tests. These must be allowed to be red probably. Might need to take a concious choice about which branch to base the auto-branch on, or just take develop


knatten / gist:628b5d8e2773c0deb336
Last active Aug 29, 2015
Fuse (beta) release #0.5.3166
View gist:628b5d8e2773c0deb336

This release contains several new features and fixes to the libraries, as well as fixes to the tool:

Fuse Libraries


Navigation Changes

  • ITitleNode, TitleChanged, and related title events have been removed. Instead the resource system should be used with a CurrentPageBinding:
View pushb
alias pushb="GIT_BRANCH_STACK=\"\$(git rev-parse --abbrev-ref HEAD);\"\$GIT_BRANCH_STACK && git checkout"
alias popb="git checkout \$(echo \$GIT_BRANCH_STACK | tr \";\" \"\n\" | head -1);GIT_BRANCH_STACK=\$(echo \$GIT_BRANCH_STACK|sed 's/[^;]*;//')"
View literal-test.cpp
#include <stdio.h>
void foo(signed int v)
printf("signed int: %x\n", v);
void foo(unsigned int v)
printf("unsigned int: %x\n", v);