Skip to content

Instantly share code, notes, and snippets.


Edwin Amsler RandomInsano

View GitHub Profile
RandomInsano /
Last active Mar 17, 2019
How I've customized my Kobo Touch

The Kobo Touch

Personal configuration:

# tail /etc/init.d/rcS
/bin/busybox insmod /drivers/ntx508/usb/gadget/arcotg_udc.ko
/bin/busybox insmod /drivers/ntx508/usb/gadget/g_ether.ko
ifconfig usb0
RandomInsano /
Last active May 20, 2020
Hacking notes on the very first Kobo (that I bought for $10)
RandomInsano /
Last active Feb 10, 2019
Hacking a breadmaker to accept G-code

Breaduino - Hacking Breadmakers from the 2000s

Notice: This project is incredibly dumb both due to the fact that there are high voltages at play, but also because it has the potential to burn your house down and everyone in it. Treat this as a curiosity and don't try to replicate it.


The original plan for this project was to make a system to mix waste 3D printer filament that I could pour into moulds. I don't believe now that either maker is safe up to 200°C let alone the 250°C required for ABS as bread does not require that sort of heat. I purchased two bread makers from Value Village (aka Savers) for under $16 CAD total. One is branded as CounterCraft and the other is a Black and Decker model that was popular around the turn of the millenium.

All that said, having a temperature controlled mixer can have many uses. Including baking bread!

RandomInsano /
Last active Dec 30, 2018
Hackin’ notes on the Xfinity XR11
RandomInsano /
Last active Oct 21, 2018
A new way to communicate via SPI/I2C/1wire
  • Feature Name: new_peripheral_communication
  • Start Date: 2018-10-14
  • RFC PR: (leave this empty)
  • Rust Issue: (leave this empty)


Here we propose a new interface which allows thread-safe sharing of a single I2C or SPI bus by moving ownership and control of this bus from device driver to a bus master. This includes device selection (address or enable line) and bus frequency. This keeps driver implementation simple, removing the need to select/deselect devices in the driver code.

RandomInsano /
Last active Jun 16, 2018
Trying to reverse engineer NTC's CHIP image files

The first 4MB of the file is a mystery, but the UBIFS seems to be stored uncompressed in the file and the UBIFS system is also uncompressed. You can find config files and others in the dump

UBIFS header starts with hex 31 18 10 06. I found this at offset 0x6593A, but I'm having trouble because the chip doesn't come with the nandsim kernel module.

I'm trying to follow these tutorials to mount and extract the root file system:

The partitions for UBIFS on the CHIP are the following:

RandomInsano /
Last active Nov 18, 2019
Notes from hacking the ODB2 protocols on my 2005 Saturn Ion

Hacking my 2005 Saturn Ion


I spent some time over the holiday break playing around with the on-board diagnostic port on my Saturn Ion. There are two communiction busses in play, and the first is the low speed SAW J1850 VPW that seems to handle the little ancillary things. The most interesting being the instrument cluster lights.

I'll be diving into the higher speed CAN data eventually (probably when it's not

RandomInsano / EpsonM31a.rst
Last active Apr 24, 2017
Notes on hacking Epson's M-31a Printer Module
View EpsonM31a.rst

Reverse Engineering the Epson M-31a Printer Module


Well, this guy seems pretty common to different printing calculators. I managed to find two different makes with the same module while shopping around at Value Village. The rule is to buy two (one to break to pieces, one to hack) but I broke my own rule along with the calculator and I now have to hunt down a third.

The pinout for the module from left to right is this:

RandomInsano /
Last active Jan 23, 2017
Tool for injecting my keys places
set +e
if [ "" = "$1" ]; then
echo "You need to specify a host dummy"
cat ~/.ssh/ | ssh $1 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
RandomInsano /
Created Sep 24, 2016
Serial fuzzer written in Python3
#!/usr/bin/env python3
import serial
import binascii
#open serial
ser = serial.Serial(