HydraFerret: Multi-sensor IOT with a simple interface.
↓↓ Dig deeper ↓↓
Once the firmware has been flashed to the esp32 module and it boots for the first time, it will need some configuration to define its environment. As a general rule: "All configuration is optional, but some configuration will be required". The suggested sequence is:
In order to distinguish each module it needs a unique name. In a small environment this might be as simple as naming the unit after its location, eg "kitchen". In bigger environments a matrix or block naming scheme might be more appropriate, eg "aisle_1a", "aisle_1b" or "aisle_3c". It may help for consistency to keep names all lowercase, ie not capitalised. But that is purely a preference option! eg:
This is an optional step to set the processor speed. HydraFerret should perform well at the lowest speed, but sometimes a demanding application may require more CPU cycles. Acceptable speeds are 80, 160 and 240 MHz. Faster speeds will cause the CPU to run a little warmer and consume a bit more power.
Up to 4 networks may be defined. While normally only one network is required, it is sometimes useful to define networks in multiple locations in a module moves physical location or may be covered by more than one network.
wifi [<0-3> <ssid> [<password>]]
wifi 0 SushiOne MisoSoup20200120 wifi 1 SushiToo BentoBox20191209
Use as few or as many of these as you require.
i2c [<0-1> <sda> <scl> [speed]]
i2c 0 21 22 100000
onewire <bus-number> [disable|<pin>]
onewire 0 27
adc [<pin> <unit-of-measure> <attenuation> <offset> <multiplier>]
adc 34 light 3 100 -0.02442
counter <0-7> disable
counter <0-7> <0-39> <unique-name> <unit_of_measure> <offset> <multiplier>
counter 0 12 bath litres 0 0.015
serial [0|1] <rx-pin> <tx-pin> <speed> <bits>These configure the pins and speed to use for serial connections and the type of device connected to them. eg:
serial [0|1] [disable|pms5003|zh03b|mh-z19c|winsen|ascii|nmea]
serial 0 12 14 9600 8n1 serial 0 pms5003
identify <pin> [invert]
identify [on|off|flash|fflash|sflash] [persist]
identify 5 invert
HydraFerret will work without any outputs, but it can support up to 8 outputs. These permit a limited amount of control of external devices. When evaluating outputs these are processed sequentially from the lowest numbered output (0) to the highest (7). Thus these may be considered as a small and simple program.
output [<0-7> disable] output [<0-7> default <value>] output [<0-7> <pin> <relay|pwm|servo|var> <name> <rpn expression>]
xyserver [<DNS-name>|<IP-Address>|<URL>|none [port-number]]
Running the command "
enable" will list various options and their on/off status.
HydraFerret should work fine without setting any of these, but they do allow greater customisation of each unit.
The opposite effect is made with the disable command.
Where enable is shown as an option disable will work too.
enable ansi- ANSI colorized terminal, escape codes are not supported by all terminals. Can verify support by running "ansi" command.
enable consolelog- console logging to file. This allows console history to persist over a reboot.
enable memory- memory stats displayed in xymon, by default these are not displayed, shows as a "memory" column in xymon.
enable output- Output status displayed in xymon, by default these are not displayed.
enable otaonboot- OTA update check on boot and new code downloaded if available.
enable startupdelay- 60 second boot startup delay, by default this is disabled. It allows some console access pror to device discovery taking place.
enable showlogic- Display alert logic on xymon console as an additional line if a warning / critical / extreme alert is detected. By default it is disabled.
enable telnet- telnet service, to permit remote access. Note this is not a traditional telnet session, but remote access to the HydraFerret system console using a standard telnet client.
hibernate 18:00 06:00
|Thank you for visiting this website||Home|