From 098a23a810480ef6e7aa5868f29dfc1cced6ad26 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ond=C5=99ej=20Hru=C5=A1ka?= <ondra@ondrovo.com>
Date: Sun, 8 Jul 2018 10:49:35 +0200
Subject: [PATCH] Improve readme

---
 README.md | 31 ++++++++++++++++++++++++++-----
 1 file changed, 26 insertions(+), 5 deletions(-)

diff --git a/README.md b/README.md
index 02c5143..9b141f9 100644
--- a/README.md
+++ b/README.md
@@ -1,14 +1,35 @@
 # GEX Firmware for STM32F072
 
-Copy `build.mk.example` to `build.mk`, configure as desired,
-and build the firmware image with `make`.
+This is the STM32F072 GEX firmware, supporting all STM32F072 GEX boards (including the F072 Discovery).
 
-Individual GEX units can be enabled or disabled in this config file, and the target platform is selected here as well.
+## Links
+
+GEX repositories are mirrored on GitHub to make it easier to submit issues and propose improvements
+via "pull requests". **Please use the upstream repository** when cloning to ensure you have the latest 
+version of the code. The mirrors are kept up-to-date, but they may fall behind.
+
+- [git.ondrovo.com/gex/gex-f072](https://git.ondrovo.com/gex/gex-f072) - upstream (F072)
+- [git.ondrovo.com/gex/gex-core](https://git.ondrovo.com/gex/gex-f072) - upstream (GexCore submodule)
+- [github.com/gexpander/gex-f072](https://github.com/gexpander/gex-f072) - GitHub mirror (F072)
+- [github.com/gexpander/gex-core](https://github.com/gexpander/gex-core) - GitHub mirror (GexCore submodule)
+
+## Building the Firmware
+
+Make sure you clone the repository recursively (`git clone --recursive ...`), or run 
+`git submodule update --init` afterwards, to initialize the GexCore submodule.
+
+In order to build the firmware, first copy the configuration file template `build.mk.example` to 
+`build.mk`, modify as desired, then run `make` to build the binary image (see the Make Targets 
+section below for more options). 
+
+Individual GEX units can be enabled or disabled in `build.mk`, and the target platform (your GEX 
+board model) is selected here as well. The config file is excluded from version control.
 
 ## Requirements
 
-Listed versions were used during development. Other (particularly newer) versions may work too, but without guarantee. 
-Please submit patches needed to fix incompatibilities, or at least let me know.
+Listed versions were used during development. Other (particularly newer) versions may work too, 
+but without a guarantee. Please submit patches needed to fix incompatibilities, or at least let me 
+know.
 
 - **arm-none-eabi-gcc** (v8.1)
 - **arm-none-eabi-binutils** (v2.30)