Its been a while since I posted on here, and to that note I should introduce my new project. First a prologue, recently it’s getting hard to use multiple remotes for my various devices. I would like a centralized media control system like the Logitech Harmony or the Google Nexus used to control Google Fiber products, but alas, I have neither. Nor do I have the money and wherewithal to deal with manufacturers that refuse to update their code. So I have decided to roll my own Arduino based remote control.

The project is connected to the local network through an Arduino Ethernet or Arduino + Ethernet Shield. It should in practice be able to send arbitrary IR commands to various devices. It should be configurable though a web interface using the local network as its interface to other devices like a smart phone or web dashboard. Currently this project is not functional as it has just been started but with occasional weekend coding binges it should be completed eventually. Then I will have a fully functional remote control for all of my devices, configurable through the local ethernet or wifi. Eventually, it may control itself as I offload more functions to the device without requiring user input. Example, turn on the Xbox, your going to need the TV for that so turn it on too. This project is a work in progress so it will break and probably quite frequently. If you have cloned the repo and your merge doesn’t work you may have to do a rebase.

You can find this project at
There are some related projects for this repo. They help with debugging and construction and are as follows:

1. IRduinoDump
2. IRduino.NET


Political shenanigans are so interesting

Compare these two websites that talk about legislation that would allow Missouri’s electric companies to add Infrastructure Replacement Surcharge (ISRS) to consumers electric bills.

Here is a more independent take on the issue.

Here is a pro-ISRS website put together by the energy companies themselves.

Throughout their entire website you don’t see one mention of electric rate increases. The only mention of electric rates is in a category tag that puts the page in the category “electric rates”. It makes me so mad that our nations leaders all act like a bunch of damn snakes in the grass. They whisper sweet nothings in our ears and when we look away they bite in the ass.


Yay!!! New Arduino RNG

Here are the results of the new random number generator I built yesterday.
The old random number generator was not putting out an unbiased stream of bits.
I tried using debiasing algorithms with the old generator but it was not enough.


Entropy is how random a piece of data is, basically how many random bits there are in on byte.
True randomness is 8.0 bits per byte.
We are really close. Yay!!! Five Nines!!! Statistically Significant!!! Yay!!!
Entropy = 7.999993 bits per byte.

Basically says how small you could get it with a zip file
Zip files and pretty much all compression schemes do their job by removing patterned and repeating sequences of bits
Optimum compression would reduce the size
of this 25874432 byte file by 0 percent.

Can’t quite figure out what a good figure is on this test
but 50 percent with an average of 254.05 seems good
Chi square distribution for 25874432 samples is 254.05, and randomly
would exceed this value 50.50 percent of the times.

Do the bytes average out to be in the middle
Tests the ratio of ones to zeros in the bit stream
Arithmetic mean value of data bytes is 127.4920 (127.5 = random).

Can we calculate Pi correctly, if so, we pass. Yay for Pi!!! Yay for Pie!!!
Monte Carlo value for Pi is 3.141568568 (error 0.00 percent).

Assuming this tests byte to byte similarities
Which means is the current byte similar to the last one
Serial correlation coefficient is -0.000016 (totally uncorrelated = 0.0).


Random class for Arduino

Logger class for Arduino


The diode is a 12.1V zener and C1 is a ceramic disc type capacitor. The zener diode’s part number is an artefact of the designer I used so you can ignore it.


Full Size