The following elements will be needed to update the board firmware
- The new firmware .bin file for your board
- 1 USB to TTL adapter
- 1 jumper
- ESPTool software (you will find a download link below)
- A computer with an USB 2.0 port available
You can flash your board with the firmware of your preference, nevertheless we encourage you to use official Coiaca firmwares to take easily advantage of using Coiaca services such MQTT broker, cDash app or other applications or tools.
Each Coiaca board has its own firmare burned with its unique deviceID and others parameters. We will provide you with the latest firmware version for your board anytime, at no cost. So feel free to contact us and we will come back to you with the right .bin file compiled for your board.
Please, don´t forget to specify your board deviceID on your request. It can be found at the bottom of the configuration sceen (when connecting to your board when acting as AP), or printed on the label, sticked on the packaging of the product.
To perform the update, the board ought to be disconnected from the alarm panel.
You need to connect the board to the computer with a serial (UART) adapter in order to be updated. For doing so you will need a USB to TTL adapter like the one shown on the image.
If your adapter uses the CH340 chip, you may need a driver:
- You can download a Windows driver from here.
- If you are running Linux, drivers are almost certainly built into your Linux kernel already, and the adapter will probably work as soon as you plug it. If not, you can download the Linux CH340 Driver from here (but we recommend upgrading your Linux install to you get the “built in” one)
- If you are using Macintosh, Signed Driver for Mavericks (10.9), Yosemite (10.10) and El Capitan (10.11) and Sierra (10.12) can be downloaded from here.
Now, you need to connect the board to the adapter. Identify the PINs and make the followin connections:
- The PIN labeled as 12v+ on the board to the 5v PIN on the USB adapter
- The PIN labeled as GND on the board to the GND PIN on the USB adapter
- The PIN labeled as RX on the board to the RX PIN on the USB adapter
- The PIN labeled as TX on the board to the TX PIN on the USB adapter
- Use the jumper join J1 PINs
Connections should look like the following picture.
Now, you can connect the USB adapter to the computer.
Running the update
First, you need to know the port the adapter in connected to. You can find it opening the windows Device Manager.
Your adapter should appear under Ports (COM and LPT) section. If you are using the CH340 driver, your adapter should appear as in the image on the right, otherwise like the one at left. Take note of the COM port (COM4 or COM3 in the examples)
Now, it´s time to flash the board.
- Create a folder (c:/esptool, for instance) and save there the esptool.exe file that can be downloaded from this link. (Linux tool can be found in this link)
- Save the firmware .bin file in the same folder
- Open a terminal window (cmd.exe)
- Point to the folder where you put the files in (ex. cd c:/esptool)
- Issue the following command line, replacing the COM port with the one your USB adapter is connected to, and the filename according to your firmware´s .bin file.
esptool.exe -vv -cb 115200 -cp COM3 -ca 0x00000 -bz 1M -bm dout -cf DSC010000000001_BRDSC_v0.5.4.bin
If the command is issued correctly, the process will start and the firmware shoul be updated. You will notice the flashing process ends when the “flush complete” message appears.
Once the process is complete, you can remove the USB adapter from the computer, unwire the board and reinstall it on the alarm panel. (Don’t forget to remove the J1 jumper)
Be aware that since different firmware versions could have more or less features, configuration parameters may differ between versions and configurations may mismatch. We recoment to review the configuration after flashing, to be sure all parameters are correct.
Issue reported by Macintosh users with CH340 driver
Some Macintosh users have reported that the CH340 driver crash on OSX Sierra and recommends to use the one from this link.
If want to uninstall the driver, follow the following steps:
- Open a terminal and type: cd /Library/Extensions/
- Verify that the .kext file is present: ls | grep usbserial.kext
- Output should be: usbserial.kext
- Then type: sudo rm -R usbserial.kext
- Verify that the .kext file has been removed: ls | grep usbserial.kext
- Output should be empty.
- After you should remove the files stored in receipts folder: cd /private/var/db/receipts/
- Find the enties: ls | grep usbserial*
- Output should be: codebender.cc.ch34xinstaller.usbserial.pkg.bom codebender.cc.ch34xinstaller.usbserial.pkg.plist
- Remove each one of the files of the above list: sudo rm -r filename`