diff --git a/README.md b/README.md
index 8687f07..0328835 100644
--- a/README.md
+++ b/README.md
@@ -1 +1,15 @@
-Simple tool to create byte arrays from images to be used with small screens such as OLEDs.
+## image2cpp ##
+
+image2cpp is a simple tool to change images into byte arrays to use with (monochrome) displays suchs as OLEDs, like those from Adafruit or Sparkfun. While searching for a way to generate these arrays, I mostly found links to a piece of Windows software. Both the flakey results and the hassle of having to boot a virtual machine just to convert an image lead to me writing this pure html + javascript solution.
+
+Alternatively you can also enter a byte array as input to turn it back into an image. This might be useful for debugging, or when you want to write the byte array yourself. I don't know.
+
+### running the tool ###
+You don't need any special dependencies / internet connection; all the necessary parts sit in a single .html file. So just open this index.html page in a (recent) browser to run the tool.
+Or you can use the online version at: http://javl.github.io/image2cpp/
+
+### Example Arduino code ###
+You can find a simple Arduino example sketch [over here](https://github.com/javl/image2cpp/blob/master/oled_example/oled_example.ino) in the repository.
+
+### Screen types ###
+I wrote the code with my 128x64 pixel monochrome OLED display in mind, but it should work with most similar displays. You might need to change some export settings; those are explained in the tool.
\ No newline at end of file
diff --git a/index.html b/index.html
index 607fd74..0d29e21 100644
--- a/index.html
+++ b/index.html
@@ -1,127 +1,558 @@
-
- image2cpp
-
+
+ image2cpp
+
-
-
image2cpp
-
-
-
-
-
1. Select image
-
- no image selected
-
-
or
-
-
1. Paste byte array
-
-
-
-
-
-
-
-
+
+
image2cpp
+
+
+
+
+
1. Select image
+
+ no image selected
+
+
or
+
+
1. Paste byte array
+
+
+
+
+
+
+
+
-
-
2. Image Settings
- * pixels
-
-
-
- 0 - 255; pixels with brightness above become white, below become black.
-
-
+
+
2. Image Settings
+ * pixels
+
+
+
+ 0 - 255; pixels with brightness above become white, below become black.
+
+
-
-
- Centering the image only works when using a canvas larger than the selected image.
-
-
+
+
+ Centering the image only works when using a canvas larger than the selected image.
+
+
-
+
-
-
3. Preview
-
-
+
+
3. Preview
+
+
-
+
-
-
4. Output
-
- Adds some extra Arduino code around the output for easy copy-paste into this example.
-
-
-
-
- If your image looks all messed up on your display, like the image below, try the other mode.
-
-
-
-
-
-
-
+
+
4. Output
+
+ Adds some extra Arduino code around the output for easy copy-paste into this example.
+
+
+
+
+ If your image looks all messed up on your display, like the image below, try the other mode.
+
+