1. What’s so hard about adding new functions to a system once it’s up and running?
2. No need to anticipate future functionality when developing firmware!
To demonstrate, we’ll use an example system that detects leaks of liquefied petroleum gas (LP gas) and sends email alerts to an administrator. We’ll assume that ‘device A’ has a terminal block with IO connection, as shown in the figures below. For our IoT device, we’ll use the STM32 Discovery Kit (B-L4S5I-IOT01A) from STMicroelectronics and connect it to the LP gas detector.
We have made the connections for power, UART, and GPIO on device A’s terminal block.
The relay output of the LP gas detector is connected to GPIO (12) and GND of Device A. This relay output is the A contact, and is set to open by default. Once a gas leak is detected, the contact closes.
On the NEQTO Console, you can manage users by region with “Groups”.
You can also manage users in a Group by associating them with a "Node." The figure below shows an example where users (Client A, B, and C) are tied to Nodes in a Group called “New York.”
Using the Action function on the NEQTO Console, we can configure the system to send an email alert when a gas leak is detected by the gas detector.
We can then confirm using a test gas that the following email is sent when the LP gas alarm detects a gas leak.
Now, suppose you want to add a function to control the gas using a solenoid valve. We can do this while the system continues operation by connecting a solenoid valve to an IO of Device A. For this example, we'll use a relay instead of a solenoid valve.
The control line and power supply of the relay module kit are connected to GPIO (13), +5V, and GND of Device A.
Once the connection to Device A is complete, there are just two steps left to complete the upgrade!
Finally, click the "Reload Script" command on NEQTO Console. That's all there is to adding new functionality!
We connected a light to the relay module kit to easily visualize the result. The light is switched on when a gas leak is detected.
We confirm again with a test gas that, when it is detected by the LP gas detector, the relay module kit's relay closes and the light switches on.
In addition, at any time should you find it necessary to update the firmware on connected non-NEQTO microcontrollers in order to add functions, NEQTO includes a feature called Machine Driver. Machine Driver is a unique feature to remotely update the firmware of connected microcontrollers. We'll explain more about Machine Driver in a future blog, so be sure to keep an eye out for it.
Spresense and the STM32 Discovery Kit (B-L4S5I-IOT01A) both support NEQTO Engine and can be ordered online, so get yours to try NEQTO today!
Links to devices used in this blog (Japanese only)
STM32L4+ Discovery kit IoT node [B-L4S5I-IOT01A] ：STMicroelectronics
LP gas detector [APH-32SV]：Ricoh
High-current large relay module kit [CXD5602PWBLM1J]：Akizuki Denshi Tsusho