Just a mathematical formula in Webcore (or whatever rules engine you use). If I recall correctly, the documentation that came with the sensor provided some guidance on how to do the conversion.
this is the formula I used:
=round(7.7-12.4/{[Shelly IR Levain Height Measurement 4-30cm-adc0 : voltage]}*0.3937007874,1)
Hello Justin,
Do you have any further detail on thermocouple temp sensor you have configured?
I have wired it up yet the temperature does not show on the Uni. it has has ADC voltage 0 then Internet and Security etc. below
Any advice on how you accomplished this would be much appreciated.
Thank you
Michael
Can you see the temperature in the Shelly app? If it's showing up in the Shelly app but not in Hubitat, it's probably related to the driver you are using. A few months ago I migrated over to Home Assistant so no longer have my Shelly's set up in Hubitat, but I'm happy to help as much as I can.
Does anyone dream of a SHELLY UNI PLUS?
- I do
- WOW Yes
- It's a nightmare.
- NO
0 voters
Hi @tomw, just checking if anything has changed in your Shelly Uni driver recently, or if recent changes to Shelly Uni firmware, or Hubitat HUB firmware upgrades might have changed the behaviour. I am running Shelly Uni device firmware V1.14.0 (latest firmware) and Hubitat 2.3.6.144.
I have noticed that any event triggers on either the digital inputs or digital outputs (I run them in decoupled mode) also cause the ADC child to update the analog input value. Previously the ADC child only updated when I do a manual refresh command, or the scheduled refresh interval set in the device options runs.
This additional reading of the ADC voltage causes a lot more event activity and hence noticeably higher hub load from these devices when viewed in the Logs Device stats.
Any ideas what could be causing the additional unwanted voltage readings of the ADC child device?
@tomw, here is a screen shot of the ADC child device events showing the ‘non refresh’ voltage update events.
@tomw, Would there be any interest in adding support for temperature/humidity? The UNI supports either 3 temperature sensors or 1 DHT22 temperature/humidity sensor. Ideally with a child device. I am currently using this on another platform but I am in the process of migrating to HE.
@tomw, there’s a new version of the Uni - Shelly Plus Uni. So far it appears your driver is incompatible. I’ll note, however, the firmware has many bugs.
You'll likely want a driver that supports Shelly Plus devices. There are a few floating around, but I don't know if any have been tested with the Plus Uni.
Hi folks! I'm working on the official Shelly drivers (here). Also available on HPM.
I've got a Uni and a Uni Plus sitting next to me. I can work on adding drivers for them next if there's people wanting them. It's hard to guess which thing to add drivers for next, but I can certainly make it the Uni if people are wanting drivers for them.
I have a couple of Uni (original, not the Plus) that I am using for temperature/humidity that I would very much like to get over to HE from ST. This would be the DHT22 temperature/humidity sensor, ideally as a child device. If you decide to go ahead, I would be happy to help with testing if needed.
I'll finish up this Plus one here I'm working on, then take a look at the gen 1 Uni after.
Okay, thank you.
+1 for a Uni Plus driver that can expose voltage etc.
The more I look at the shelly scripting and webhooks it seems like quite a bit is possible.
related: I'm interested in Shelly emulation/simulation capability if anyone is aware of something available and current.
Tried your driver on Uni 2 v1.2.2 . Im in the UK if this makes a difference.
Returning sensor values in Debug text but failing to create child device. Any futher development planned?
com.hubitat.app.exception.UnknownDeviceTypeException: Device type 'Generic Component Input Event' in namespace 'drozovyk' not found on line 387 (method updated)
(null) Sensor generic report: Air temperature:temperature 22.4°C
dev:3812024-03-17 07:34:22.784 PMdebug(null) parseShellyTemperatureSensorStatus [id:100, tC:22.4, tF:72.4, ts:null]
dev:3812024-03-17 07:34:22.781 PMdebugConfiguration revision 17
dev:3812024-03-17 07:34:22.779 PMdebug(null) parseShellyCommonStatus [id:1, output:false, source:init, ts:null]
dev:3812024-03-17 07:34:22.777 PMdebug(null) parseShellySwitchStatus [id:1, output:false, source:init, ts:null]
dev:3812024-03-17 07:34:22.775 PMdebug(null) parseShellyCommonStatus [id:0, output:false, source:init, ts:null]
dev:3812024-03-17 07:34:22.773 PMdebug(null) parseShellySwitchStatus [id:0, output:false, source:init, ts:null]
dev:3812024-03-17 07:34:22.771 PMinfo(null) Script running false
dev:3812024-03-17 07:34:22.768 PMdebug(null) parseShellyScriptStatus [id:1, mem_free:25200, running:false, ts:null]
dev:3812024-03-17 07:34:22.766 PMinfo(null) Sensor generic report: Frequency:frequency 0.0Hz
dev:3812024-03-17 07:34:22.764 PMdebug(null) parseShellyCommonStatus [counts:[by_minute:[0, 0, 0], minute_ts:1710704040, total:0], freq:0.00, id:2, ts:null]
dev:3812024-03-17 07:34:22.762 PMdebug(null) parseShellyInputStatus [counts:[by_minute:[0, 0, 0], minute_ts:1710704040, total:0], freq:0.00, id:2, ts:null]
dev:3812024-03-17 07:34:22.694 PMdebug(null) parseShellyCommonStatus [id:100, percent:0.1, ts:null]
dev:3812024-03-17 07:34:22.692 PMdebug(null) parseShellyInputStatus [id:100, percent:0.1, ts:null]
dev:3812024-03-17 07:34:22.690 PMdebug(null) parseShellyCommonStatus [id:1, state:false, ts:null]
dev:3812024-03-17 07:34:22.687 PMdebug(null) parseShellyInputStatus [id:1, state:false, ts:null]
dev:3812024-03-17 07:34:22.685 PMdebug(null) parseShellyCommonStatus [id:0, state:false, ts:null]
dev:3812024-03-17 07:34:22.683 PMdebug(null) parseShellyInputStatus [id:0, state:false, ts:null]
dev:3812024-03-17 07:34:22.681 PMdebugparseShellyCloudStatus [connected:false, ts:null]
dev:3812024-03-17 07:34:22.679 PMdebugparseShellyStatus [ble:[:], cloud:[connected:false], input:0:[id:0, state:false], input:1:[id:1, state:false], input:100:[id:100, percent:0.1], input:2:[counts:[by_minute:[0, 0, 0], minute_ts:1710704040, total:0], freq:0.00, id:2], mqtt:[connected:false], script:1:[id:1, mem_free:25200, running:false], switch:0:[id:0, output:false, source:init], switch:1:[id:1, output:false, source:init], sys:[available_updates:[:], cfg_rev:17, fs_free:139264, fs_size:458752, kvs_rev:0, mac:C82E180D6AA8, ram_free:114552, ram_size:259768, reset_reason:3, restart_required:false, schedule_rev:0, time:19:34, unixtime:1710704063, uptime:1585, webhook_rev:0], temperature:100:[id:100, tC:22.4, tF:72.4], wifi:[rssi:-57, ssid:PondWIFI_2G, sta_ip:192.168.1.19, status:got ip], ws:[connected:false]]
dev:3812024-03-17 07:34:22.672 PMdebugHTTP Async Response: [id:142, request:[uri:http://192.168.1.19, path:/rpc/Shelly.GetStatus, requestContentType:application/json]] ::: [ble:[:], cloud:[connected:false], input:0:[id:0, state:false], input:1:[id:1, state:false], input:100:[id:100, percent:0.1], input:2:[counts:[by_minute:[0, 0, 0], minute_ts:1710704040, total:0], freq:0.00, id:2], mqtt:[connected:false], script:1:[id:1, mem_free:25200, running:false], switch:0:[id:0, output:false, source:init], switch:1:[id:1, output:false, source:init], sys:[available_updates:[:], cfg_rev:17, fs_free:139264, fs_size:458752, kvs_rev:0, mac:C82E180D6AA8, ram_free:114552, ram_size:259768, reset_reason:3, restart_required:false, schedule_rev:0, time:19:34, unixtime:1710704063, uptime:1585, webhook_rev:0], temperature:100:[id:100, tC:22.4, tF:72.4], wifi:[rssi:-57, ssid:PondWIFI_2G, sta_ip:192.168.1.19, status:got ip], ws:[connected:false]]
dev:3812024-03-17 07:34:22.595 PMdebugConnection reset
dev:3812024-03-17 07:34:22.592 PMdebugHTTP Async query: Shelly.GetStatus([:])
dev:3812024-03-17 07:34:22.583 PMinfoConnection open.
dev:3812024-03-17 07:34:22.580 PMinfoConnection open.
dev:3812024-03-17 07:34:22.560 PMdebugwebSocketStatus status: open; keepAlive=true
dev:3812024-03-17 07:34:22.537 PMwarnReconnecting in 30 seconds.
Yes. Driver is actively supported.
Looking at this line makes me wonder if you installed the whole bundle or just a single file. This driver consist of multiple libraries and some custom child devices. And input device code seem to be missing.
To install all the dependencies you have 2 choices:
- Install files one by one
- (recommended) install full bundle with all dependencies at once.
To install bundle you need to go here ge4d / hubitat-code / Bundles / Bundle1.zip — Bitbucket.
On this page you will see Text/Link 'View raw'. You can either open it (zip file will be downloaded) or copy this link.
Then on the hubitat bundles tab you need to press "Import ZIP".
Then depending on your previous step point either to the downloaded ZIP file or paste a link from 'View raw'.
You can check this post Shelly Device Handlers for Hubitat - #454 by dmitry.rozovik for images.
Let me know it you need any help or have issues)
I bow to the master, thank you for advice all child devices spawned and displaying/operating as expected.
Tried to be smart and just downloaded the librarys required by the driver.
I can confirm operation on shelly uni plus gen 2 with latest firmware 1.2.2
Many thanks