Installation - DeeEmm/DIY-Flow-Bench GitHub Wiki

Overview

Before you can use your DIYFB controller, you will need to upload the firmware to it. The firmware comprises of the source code, which is compiled into binary files which are then transferred to the ESP32, a process known as 'flashing'. There are a number of different ways of compiling and uploading the firmware.

It should be noted that the ESP requires the hardware connected to function correctly. Specifically the I2C devices, as without these the code will error. If you want to test the software out, we have a demo version that you can try - https://diyflowbench.com/demo

Using an IDE

You can compile and upload the firmware using an Integrated Development Environment (IDE) such as VSCode or Arduino. This does however mean that you need to know how to configure and use the IDE, which for the novice user might be a bit daunting.

If you are happy using an IDE, VSCode with platformIO is the recommended flavour. Full instructions on configuring the development environments in both VSCode and Arduino IDE can be found in the Environment page in the 'Dev Resources' section.

Using a firmware flashing tool

If setting up an IDE to compile the files seems a bit outside of your comfort zone, there are precompiled binaries available in the 'releases' folder. These 'Precompiled Binaries' mean that you do not need to run an IDE to compile the source code as we have done that for you. All you need to do is upload the file to your device.

Binaries can be uploaded to the ESP32 directly using a firmware flashing tool. There are several generic tools available, including our own DIYFB Firmware Flashing Tool, which is available for both Mac and Windows.

DIYFB-Firmware-Flasher.dmg

DIYFB-Firmware-Flasher.exe

Tested on Mac OS 15.0.1 Sequoia / Windows 10.

NOTE: If you cannot upload to the ESP32, make sure that you have the correct serial drivers installed for the board that you are using. Most ESP32 boards require additional serial drivers to be able to communicate.

DIYFB Firmware Flasher

Using the Firmware Flashing tool is pretty straight-forwards. After downloading the app and running it, you will see the following screen.

Using the app is simple. First you will need to download the Compiled Binary file. This can be found in the releases section of the repository.

At the bottom of each release you will see a section named 'Assets' within this section you find the installation binary. This will be named something like 'V2.0.1_24112601_install.bin'. Note that there is also a file called 'V2.0.RC.8_24112601_update.bin'. This file will not work as it is only for updating via the GUI (Graphical User Interface [browser]).

Once you've downloaded the correct firmware file, simply follow the instructions

  • Connect your device via USB cable
  • Open the app
  • Select the Serial port from the dropdown menu
  • Browse to the firmware file you just downloaded
  • Hit the 'Upload Firmware' button

You will then see the upload progress in the console. (You can drag and resize the window to see more)

Once the process is finished, the console should look something like this...

Next restart your device by either pressing the 'reset' button or cycling the power.

Congratulations you have successfully flashed the firmware. You should now be able to connect to the WiFi access point created by the device using the following credentials

WiFi SSID: DIYFB
WiFi PASS: 123456789

Once connected you can then access the device via browser at the following address

http://diyfb.local

Online Firmware Flasher

If you do not want to use the firmware flashing app, you can also use a browser based online firmware flashing tool like the one provided by Expressif.

This works in a similar fashion to the DIYFB Firmware Flashing app, but has a few extra steps and does require that you use an up to date browser. A list of compatible browsers is at the end of this section ‡

  • First download the firmware as outlined in the previous step
  • Connect your device via USB
  • Next open the flashing tool in your browser by visiting https://espressif.github.io/esptool-js/
  • Set the baudrate to 460800, then hit the 'Connect' button.
  • This will open a dialog that allows you to select the serial port for your device.
  • Once selected the following screen will be displayed
  • Similar to the DIYFB Firmware Flasher browse to, and select the firmware file
  • You will also need to set the flash address to '0x0000'
  • Once this is done, press the 'Program' button to upload the firmware.

You will see the upload progress printed to the console. When it is finished it will display 'Hash of data verified. Leaving...'

Next restart your device by either pressing the 'reset' button or cycling the power.

Now you can access the device by connecting to the WiFi access point as outlined above.

‡ Compatible Browsers: Google Chrome and Microsoft Edge version 89 or later and Opera version 75 or later.

Next Steps

Once you are connected to the GUI in the browser, you can edit the PINS, settings and configuration to suit your hardware set up.

A more in depth explanation of the settings, configuration and pins pages is included in the following pages.