diff --git a/docs/config-manager.md b/docs/config-manager.md
index 54af299..02372da 100644
--- a/docs/config-manager.md
+++ b/docs/config-manager.md
@@ -130,9 +130,11 @@ An example of how this file could look is shown below:
Supported data types are: bool, uint8_t, int8_t, uint16_t, int16_t, uint32_t, int32_t, float and char. The length argument is mandatory for datatype char to indicate the length of the string. Variable length strings are not supported. Also, arrays are not supported for now.
-The configuration parameter `projectName` is unique in this framework. You can remove it, but if you use a parameter with this name, it will be shown as the header title in the web interface :).
+There are a few unique parameters:
-The parameter named `language` is also unique and can be used to change the language of the web interface. Supported languages are placed in the folder `gui/js/lang`. Change the language code and rebuild the HTML interface to change the language. If your language is not yet supported, feel free to create a pull request for it.
+* The configuration parameter `projectName` is unique in this framework. You can remove it, but if you use a parameter with this name, it will be shown as the header title in the web interface :).
+* The parameter named `language` is also unique and can be used to change the language of the web interface. Supported languages are placed in the folder `gui/js/lang`. Change the language code and rebuild the HTML interface to change the language. If your language is not yet supported, feel free to create a pull request for it.
+* The parameter named `projectVersion` can be added to the configuration file, and will add this version string to the header of the web interface, and can of course be used in your code as well.
For this example, the pre-build python script `preBuildConfig.py` will generate the following two files. These should be fairly self explanatory and show how the JSON file is translated into a C struct.
diff --git a/docs/fetch.md b/docs/fetch.md
index fc0b40a..9b6d4fb 100644
--- a/docs/fetch.md
+++ b/docs/fetch.md
@@ -147,18 +147,11 @@ As mentioned earlier a full certificate store is saved in PROGMEM as part of the
If you ever want to update or rebuild the certificate store, you can do this by enabling or running the pre-build script `preBuildCertificates.py`. This script will read in all root certificates from the Mozilla certificate store and process these into a format that is compatible with the ESP8266 Arduino layer.
-For this step OpenSSL is needed. On Linux this is probably available by default, on Windows this comes as part of something like MinGW, or Cygwin, but is also installed with the Windows Git client. If needed you can edit the path to OpenSSL at the top of the `preBuildCertificates.py` file:
+For this step OpenSSL is needed. On Linux this is probably available by default, on Windows this comes as part of something like MinGW, or Cygwin, but is also installed with the Windows Git client. If needed you can edit the path to OpenSSL by adding the build flag below to `platformio.ini`:
-```c++
-#path to openssl
-openssl = "C:\\msys32\\usr\\bin\\openssl"
-```
-
-Another prerequisite is that you need the Python module asn1crypto. Since currently PlatformIO uses its own internal Python version, this means you need to open a new PlatformIO terminal, and then execute the command:
+**-DOPENSSL="C:/Program Files/Git/usr/bin/openssl.exe"** Path to openssl executable. The location shown here is the default location. If your openssl is in a different location, change this flag accordingly
-```
-pip install asn1crypto
-```
+Another prerequisite is the Python module asn1crypto. If this module is not available, the script will attempt to install it using `pip`.
## Certificate Store Size
diff --git a/docs/installation-guide.md b/docs/installation-guide.md
index d6c6807..35be756 100644
--- a/docs/installation-guide.md
+++ b/docs/installation-guide.md
@@ -79,12 +79,9 @@ The build flags are optional, since all default generated artefacts are already
**-DREBUILD_CERTS:** This build step generates `certificates.h` containing a full root certificate store to enable arbitrary HTTPS requests with the ESP8266. More info on this process can be found [here](https://github.com/maakbaas/esp8266-iot-framework/blob/master/docs/fetch.md).
-For this step OpenSSL is needed. On Linux this is probably available by default, on Windows this comes as part of something like MinGW, or Cygwin, but is also installed with the Windows Git client. If needed you can edit the path to OpenSSL at the top of the file:
+For this step OpenSSL is needed. On Linux this is probably available by default, on Windows this comes as part of something like MinGW, or Cygwin, but is also installed with the Windows Git client. If needed you can edit the path to OpenSSL with the next build flag
-```python
-#path to openssl
-openssl = "C:\\msys32\\usr\\bin\\openssl"
-```
+**-DOPENSSL="C:/Program Files/Git/usr/bin/openssl.exe"** Path to openssl executable. The location shown here is the default location. If your openssl is in a different location, change this flag accordingly
**-DCONFIG_PATH=configuration.json:** This option defines a custom location for your configuration JSON file. This is needed when using the framework as a library, to allow you to define a JSON file in your project folder. The path is relative to the PlatformIO project root folder. More detail on the JSON file can be found [here](https://github.com/maakbaas/esp8266-iot-framework/blob/master/docs/config-manager.md).
diff --git a/gui/js/index.js b/gui/js/index.js
index 5230df8..fd88200 100644
--- a/gui/js/index.js
+++ b/gui/js/index.js
@@ -63,13 +63,15 @@ function Root() {
});
}
- const projectName = configData["projectName"] || Config.find(entry => entry.name === "projectName").value || "ESP8266";
+ const projectName = configData["projectName"] || Config.find(entry => entry.name === "projectName") ? Config.find(entry => entry.name === "projectName").value : "ESP8266";
+ const projectVersion = configData["projectVersion"] || Config.find(entry => entry.name === "projectVersion") ? Config.find(entry => entry.name === "projectVersion").value : "";
+
return <>
- {projectName}
+ {projectName} {projectVersion}
setMenu(!menu)} />