veml6075 light sensor on esp32 HydraFerret / xymon

Enfield Cat's Blog: Arduino and other projects.


A VEML6075 UV light sensor mudule

This device measures UV light and returns the UV index (UVI).


Adding one or more veml6070/veml6075 to either i2c busses will allow the veml6075(s) to be autodetected and configured on reboot. The minimum configuration is to simply added the sensor and restart the esp32. The configuration of the I2C bus is discussed elsewhere on this page. Each veml6075 should have unique address on the bus on which it is located. The veml6075 devices are numbered 0 to 1, starting with units on bus 0 then bus one. On each bus the number allocation is in device address sequence.

This numbering is important if for example there is one veml6075 on bus 1, and then later another is added to bus 0. After the addition the new device will be unit 0, and the old one unit 1. Conversely if the existing device were on bus 0, and a new one added to bus 2, the old device remains unit 0, and the new one becomes unit 1.

Configuration commands are:

critical|extreme|warning <devicetype> <0-3> uv disable
critical|extreme|warning veml6075 <0-3> uv <rpn-expression>
    enable or disable alerting thresholds on sensors

devicename veml6075 <0-3> <device-name>
    Name a sensor device

i2c [<0-1> <sda> <scl> [speed]]
    Set i2c pins, eg: 21 and 22 for bus-0, and 5 and 4 for bus-1

interval veml6075 <1-300>
    Set the interval between measurements taken by the sensor.

rpn variables:  - Count of veml6075 sensors (DEVice count)
    veml6075.uvi  - 5 minute average of UV Index readings
    veml6075.lasi - most recently read UVI reading
    veml6075.uva  - 5 minute UVA average
    veml6075.lasa - most recently read UVA reading
    veml6075.uvb  - 5 minute UVB average
    veml6075.lasb - most recently read UVA reading
    veml6075.lsta - UVI 0=Ok, 1=warn, 2=critical or 3=extreme status

Other Notes

The boilerplate text for this test includes a recommended scale of personal protection suggested by the UV index. This can't be altered, except by changing the HydraFerret programming. It is simple fixed text that is display with warning levels, and does not actually configure any warng, critical or extreme alerts. If these are required they need to be configured using the HydraFeret command line interface.

result graph from UV index monitoring

Thank you for visiting camelthorn.cloudHome