Image 2 Arduboy

Image 2 Arudoby


Image 2 Arduboy is an application that takes an image, converts it to a 1-bit image and then generates a hex byte array that the Arduboy can render.  It supports processing an image via  Alpha, Red, Blue and Green channels.  It can load multiple images and apply different filters for each and output Arduino ready code.

I wrote it in Xamarin Monodevelop utilizing the GTK# toolkit and the Mono framework.  The purpose of the application was to create a pipeline to get art into an Arduboy game.


[sdm-download id=”480″ fancy=”1″ new_window=”1″]
[sdm-download id=”486″ fancy=”1″ new_window=”1″]


Updated 1.1

  • Added the ability to output a screen vertical page format that allows the image to be rendered using .drawBitmap() instead of .drawSlowXYBitmap().  It outputs a hex byte array arranged for drawBitmap() by default
  • Fixed several crashes related to certain image formats
  • Fixed a downsampling issue for odd sized dimensions
  • Faster rendering, caching of results


  • First version

Source code available upon request

The web implementation for Arduboy in Java in this video is to demo the application and is a tool created by Andrew Lowndes