Android / iOS




Intellivision Java - (February 18, 2021) - Here's a "breakout" game written in Java running on a 1979 Intellivision console (emulated).

Romi + Windows 10 IoT - (January 25, 2021) - This is a Pololu Romi robot hooked up to a Raspberry Pi 3 running Windows 10 IoT.

Winbond W25Q128JV Flash Memory - (December 25, 2020) - Some example code on MSP430 and Raspberry Pi for reading from / writing to a Winbond 128Mbit flash memory chip.

Water Optic Communication - (September 28, 2020) - Sending data using an a tube of water plugged with an LED and photo-diode similar to how fiber optics work.

Tin Can Phone Modem - (July 3, 2020) - A demonstration of sending computer data through 2 tin cans and some kite string.

Contactless Thermometer - (May 25, 2020) - Since thermometers are hard to find these days I built my own using an MLX90614 sensor.

Weather Station - (May 10, 2020) - I got a weather station thing and created a circuit so I could send weather information into my house. I also have firmware that will play music out of a speaker based on the wind direction.

Amiga Java - (January 7, 2020) - I added support to Java Grinder for Amiga and posted a video of it running on an Amiga 1000.

Mandelbrots with SIMD Assembly - (January 1, 2020) Added some CUDA code using an Nvidia Jetson Nano for computing Mandelbrots.

Ethernet - (December 19, 2019) - Example of sending a UDP packet from an MSP430 microcontroller using a Microchip ENC28J60 Ethernet chip.

HAM Radio - (July 10, 2019) - Created a HAM radio using a SparkFun FM Radio breakout board.

Core File Analysis - (May 12, 2019) - I updated magic_elf so that it can modify the stack pointer and instruction pointer in core files so gdb can get a stack trace when certain libraries / executables aren't available.

Iced Electronics - (April 7, 2019) - Here's some artistic circuits frozen in ice.

Apple IIe Robot - (February 14, 2019) - Built a circuit that allows an Apple IIe to run on a battery and hooked the whole thing up to a motor control circuit with wheels and programmed the computer in Apple BASIC.

Cyborg Lobster - (October 6, 2018) - Connected a lobster shell to some electronics.

Playstation 2 Java - (August 6, 2018) - I added support to Java Grinder for Playstation 2. Posted a video of a graphics / sound demo written in Java running on real Playstation 2 hardware.

Cyborg Chicken Quadcopter - (March 4, 2018) - Made a quadcopter out of chicken bones and an MSP430.

HiFive1 RISC-V asm - (January 27, 2018) Testing RISC-V support in naken_asm with a HiFive1 board.

E-Ink Thermometer - (January 7, 2018) Here's a quick little project to display the current temperature on an E-Ink display.

Mandelbrots with SIMD Assembly - (October 24, 2017) Added code for generating Mandelbrots on a Playstation 3 using the Cell SPU instruction set in assembly language.

Coin Acceptor Demo - (October 15, 2017) Updated the coin acceptor video that shows coins that aren't $0.25 being rejected.

Electric Cat Fight - (September 27, 2017) Plastic dolls hooked up to electronics... fighting!

Hungry Hungry Hippos - (June 11, 2017) Added some motors to a Hungry Hungry Hippos board game so it could play itself or with Alexa.

Cyborg Chicken Fight - (May 19, 2017) - Created two "robots" using chicken bones and an MSP430 microcontroller and had them fight each other.

PANCAKE-ROM - (February 19, 2017) - Stored data on a Swedish pancake using a stencil and some melted chocolate and read it back by spinning the pancake and reading the data using a light to voltage sensor.

Alexa TV Remote w/ Electric Imp - (January 16, 2017) - Created a "skill" for Amazon's Alexa to control my TV using the Amazon Echo Dot and an Electric Imp.

Tape Data Recorder - (October 9, 2016) - Updated the tape data recorder circuit to use an LM567 and run on a W65C265SXB board.

RC Drag Racing Tree - (September 16, 2016) - Updated an old RC car drag racing circuit with a Wixel and a timer.

Remote Control Food - (August 7, 2016) - Created a circuit to take commands from a Syma infrared controller to control 2 motors.

Modern 6502 - (March 27, 2016) Wrote some sample programs for a 65C816 / 6502 board.

Easy Match - (March 8, 2016) Been working on a library for the past week to replace PCRE (regular expression matching) for simplicity in syntax and speed using a JIT compiler.

Atari 2600 Java Demo - (December 20, 2015) Started an Atari 2600 API for Java Grinder.

Sega Genesis Java Demo - (November 17, 2015) I created a graphics / sound demo in Java and using an API I created with Java Grinder I compiled the Java byte-code into native 68000 assembly and ran the demo on a real Sega console.

Generating Java Classes - (October 5, 2015) Created a library for creating Java class files in memory so it can be used to either create .class files (based on a possible future scripting language) or generate Java byte code that can be loaded while a Java program is already running. Kind of a JIT before the JIT.

SN76489 Sound Chip - (May 30, 2015) Created some circuitry to control an early 1980's SN76489 sound chip and software to play MIDI files through it.

TI/99a Java - (April 22, 2015) Got a Java program working on a 1980's TI99 computer.

MIDI Guitar - (February 24, 2015) Doing frequency analysis code to convert guitar notes into MIDI notes so a guitar can sound like a piano.

VGA with MSP430 and Java - Created VGA signals using Java programmed onto an MSP430 chip.

Heart Monitor - Made an EKG monitor using Objective-C and SDL.

Bluetemp - (July 3, 2014) Updated my bluetooth thermometer to support Apple iOS (iPhone, iPod touch, iPad) in addition to the original Android version.

dsPIC Mandelbrots in Java - (Februar y 9, 2014) Here's a demo of generating Mandelbrots on a dsPIC with code written in Java and compiled with Java Grinder.

Java Grinder - (January 5, 2014) Compiles Java byte-code to native code for microcontrollers.

Microchip 11A160 EEPROM - (December 25, 2013) Just an example how to read/write from a UNI/O (1 serial wire) EEPROM chip.

Motion Eyes - (October 27, 2013) Plastic eyes hooked up to servo motors behind a clay face turn towards motion by using a small camera, an embedded Linux device, and an MSP430.

Bluetooth Car - Got another cheap toy R/C car, pulled the radio circuit out, and replaced it with an Atmel ATtiny2313 and a Bluetooth module. Controllable with an Android app.

PAPER-ROM - Goofy little microcontroller project to store data on a disk of paper and read back.

Google Chromebook TV Remote - Google Chromebook app that changes TV channels for me when I click on the icon of the TV channel I want to watch.

WiFi R/C Car - I took an R/C car and removed the radio and replaced it with my own circuit which has a WiFi 802.11g module and put an IP camera on the top. I wrote some software so I could drive it around the office with a PC.

Conductive Paint XOR Gate - (November 21, 2012) A working XOR circuit draw on a piece of paper with conductive ink.

Call ASM from C on ARM - (November 18, 2012) Demonstration of my naken_asm assembler linking an assembly program with a gcc C program on the Raspberry Pi.

LCD + MSP430FG4619 - Programmed this Olimex board to draw graphics on an LCD display.

Brushless Motor - Created a circuit and firmware to make a brushless DC motor spin.

Syma S107 Linux Driver - Took the remote from the cheap Syma S107 IR helicopter and made a circuit and Linux kernel module so it can be used as a Linux joystick.

Copyright 1997-2021 - Michael Kohn