diff --git a/README.markdown b/README.markdown
index f9a5fcf03762bdc291f6e44b97d16dbdd5598b84..076f93f1e21dbb9208f0e4d14e25045c4260b871 100644
--- a/README.markdown
+++ b/README.markdown
@@ -34,7 +34,7 @@ The most up to date [code](http://microfluidics.utoronto.ca/gitlab/dstat/dstat-f
 	* avr-gcc (OS X: install with homebrew)
 	* avr-libc (OS X: install with homebrew)
 * Windows:
-	* [Atmel Studio 6](http://www.atmel.com/tools/atmelstudio.aspx)
+    * Docker
 	
 ## Building with Make
 
@@ -42,25 +42,33 @@ The easiest way to build the firmware on Mac or Linux (Make is available in Wind
 ````
     cd DSTAT/
 	make
-	cd ../EEPROM\ init/
-	make
 ````
 
-This will produce binary files in the `DSTAT` and `EEPROM init` directories.
+This will produce binary files in the `DSTAT` directory.
 The files in `DSTAT` are the firmware binaries that will be loaded onto the microcontroller.
-The `dstat-firmware-eeprom.eep` file in the `EEPROM init` directory is a file to initialize the microcontroller's EEPROM.
-It should be uploaded once on a new microcontroller, but generally shouldn't need to be done again except to reset settings or if new options that use the EEPROM are added to the firmware.
+`atxmega256a3u_104.hex` is a bootloader for upgrading firmware over USB after the initial flash (currently experimental) and `dstat-firmware.hex` or `dstat-firmware.elf` is the actual firmware.
+
+## Building with Make (using Docker)
+
+On Windows, the easiest way to compile the source is using make from docker (Keep in mind you can use the automated build system if you don't intend to make modifications to the firmware).:
+
+1. Install docker from https://docs.docker.com/docker-for-windows/
+2. Use the tray icon for Docker to enable sharing on your C drive (under Shared Drives)
+3. In a command prompt: `docker run —rm -w /src -v c:/Users/mdryden/src/dstat-firmware/DSTAT:/src —entrypoint make vyivanov/avr-docker`
+   Replacing `c:/Users/mdryden/src/dstat-firmware/DSTAT` with the path to wherever you cloned the source.
+   This should compile your source files and you can upload them with avrdude or Atmel Studio.
 
 ## Building with Atmel Studio
 
+*N.B. Compiling with Atmel Studio is no longer supported. The solution file is still available, but is missing some files in the project to compile properly. Use the makefile method or the Docker-based compilation method instead.*
 Instructions for building in Atmel Studio 6 can be found [here](http://www.avr-tutorials.com/avr-studio-6/generating-hex-file-avr-studio-6).
 The solution file is in the main `dstat-firmware` directory.
 
 # Installation
 ## Requirements
 To install the firmware onto the DStat's microcontroller, you'll need a programming tool that supports PDI.
-A simple and inexpensive programmer is [Atmel's AVRISP mkII](http://www.atmel.com/tools/avrispmkii.aspx).
-In the future, updating the firmware over USB may be supported, but it's not a priority as a programming tool must still be used at least once to bootstrap the microcontroller.
+A simple and inexpensive programmer is the [Olimex AVR ISP Mk2](https://www.olimex.com/Products/AVR/Programmers/AVR-ISP-MK2/open-source-hardware) (available from Digikey and Mouser).
+In the near future, updating the firmware over USB will be supported, but a programming tool must still be used at least once to bootstrap the microcontroller.
 
 To load the firmware, you'll need either [Atmel Studio](http://www.atmel.com/tools/atmelstudio.aspx), a full-featured development platform (Windows-only), or [AVRDUDE](http://www.nongnu.org/avrdude/), a cross-platform command line tool.
 On Mac OS X, AVRDUDE can be installed using [homebrew](http://brew.sh): `brew install avrdude`
@@ -73,16 +81,15 @@ This must be done manually if you're using Atmel Studio, but will be taken care
 This can be done from the [Fuses](http://www.atmel.com/webdoc/atmelstudio/atmelstudio.programmingdialog.fuses.html) page of the Device Programming window—simply uncheck `JTAGEN` and click `Program`
 
 ## Firmware files
-The memory files used to program the microcontroller are found in the DSTAT and EEPROM init directories:
-* Firmware: `DSTAT/dstat-firmware.elf`
-* EEPROM initialization: `EEPROM init/dstat-firmware-eeprom.eep`
+The memory files used to program the microcontroller are found in the DSTAT directory:
+* Firmware: `DSTAT/dstat-firmware.elf` or `DSTAT/dstat-firmware.hex`
 
 Before programming, make sure your programmer is connected to your computer and its PDI connector is connected to the pin header labelled AVR-PDI on the DStat.
 The side with the red wire should face the pin labelled 1 on the PCB.
 
 ### Using Make
 Similar to building from source, the make command can be used to program the microcontroller.
-By default, the Makefiles are configured to use an AVRISP mkII connected over USB.
+By default, the Makefiles are configured to use an AVR ISP mk2 connected over USB.
 If you are using a different programmer, be sure to set the `AVRDUDE_PROG` and `AVRDUDE_PORT` options in the `config.mk` files found in the DSTAT and EEPROM init directories.
 See `man avrdude` for more information about these options.
 
@@ -94,20 +101,12 @@ To upload the firmware file and set fuse bits:
 Occasionally, setting the fuse bits may fail.
 If an error occurs on verification, simply run `make program` again.
 
-To initialize the EEPROM:
-To upload the firmware file and set fuse bits:
-````
-	cd EEPROM\ init/
-	make program
-````
-
 
 ### Atmel Studio 6
 Follow the directions [here](http://www.atmel.com/webdoc/atmelstudio/atmelstudio.AVRStudio.ProgrammingDialog.Introduction.html) to program the microcontroller.
 Be sure to select `ATXMEGA256A3U` as the Device and `PDI` as Interface.
 
-In the Memories tab, `dstat-firmware.elf` should be selected for Flash and `dstat-firmware-eeprom.eep` should be selected for EEPROM.
-Remember to click the separate Program button for each.
+In the Memories tab, `dstat-firmware.elf` or `DSTAT/dstat-firmware.hex` should be selected for Flash, then click Program.
 
 # Connection and testing
 If the firmware has been successfully applied, it will be possible to connect to the DStat over USB.
@@ -129,7 +128,7 @@ Once connected, you can test communications using a terminal emulator (following
 ## Windows
 Unlike Mac and Linux, Windows does not automatically load its USB CDC driver and needs a wrapper driver installed.
 The process is similar to installing [Arduino drivers](http://www.arduino.cc/en/guide/windows#toc4), but using the driver file included in the `drivers` directory of `dstat-interface`.
-Unfortunately, if you are running Windows 8, this requires disabling driver signing enforcement. (thank Microsoft)
+Unfortunately, if you are running Windows 8 or above, this requires disabling driver signing enforcement (thank Microsoft), but actually installing Arduino should install suitable drivers.
 
 # License
 ASF code is subject to the following copyright terms: