[BETA RELEASE] Keenect V2.7 and Keenzone 2.8, Proportional Vent Control with System Wide Zone Balancing

Thanks for beta testing

I am happy to be a tester.

I removed the SmartAPP and opened all vents all the way. I think I see the issue

in the MBR:
ea715a98-e2a1-473c-a5b5-e014c6e5e6b3 5:27:35 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 1089
ea715a98-e2a1-473c-a5b5-e014c6e5e6b3 5:27:35 PM: warn setVents- newVo: null
ea715a98-e2a1-473c-a5b5-e014c6e5e6b3 5:27:35 PM: debug setVents:enter-
ea715a98-e2a1-473c-a5b5-e014c6e5e6b3 5:26:35 PM: debug zoneEvaluate:exit-
ea715a98-e2a1-473c-a5b5-e014c6e5e6b3 5:26:34 PM: debug Updated with settings: [vents:[Master bath Vent], staticCSP:70, maxVoC:90, FanAHC:100, heatOffset:1, tempSensors:Master Bath Motion Sensor, FanHum:50, logLevel:40, sendEventsToNotifications:false, zoneControlType:offset, ventCloseWait:-1, staticHSP:70, AggressiveTempVentCurve:false, coolOffset:-2, minVoC:20, minVo:20, maxVo:90]
ea715a98-e2a1-473c-a5b5-e014c6e5e6b3 5:26:34 PM: debug Installed with settings: [vents:[Master bath Vent], staticCSP:70, maxVoC:90, FanAHC:100, heatOffset:1, tempSensors:Master Bath Motion Sensor, FanHum:50, logLevel:40, sendEventsToNotifications:false, zoneControlType:offset, ventCloseWait:-1, staticHSP:70, AggressiveTempVentCurve:false, coolOffset:-2, minVoC:20, minVo:20, maxVo:90]]

the vent is also throwing an exception:
aaaa3c3d-1fc9-45ca-971c-c8052e518b28 5:26:35 PM: error java.lang.NullPointerException: Cannot invoke method multiply() on null object @ line 319
aaaa3c3d-1fc9-45ca-971c-c8052e518b28 5:26:35 PM: debug setting level: null

The setting to null seems to cause some issue. Also, it still seems to override the minimum.
Craig

I forgot to say any zone that is above the setpoint is working flawlessly.
Craig

no idea, try rolling back to the old firmware

found it:

This gets called:

if (zoneTempLocal <= zoneCSPLocal){
        	state.lastVO = minVoCLocal
     	 	VoLocal = minVoCLocal     
       		slResult = setVents(VoLocal)

before minVoCLocal is defined

 def minVoCLocal = settings.minVoC.toInteger()
def maxVoCLocal = settings.maxVoC.toInteger()

I moved the defining right before the SP check and it seems to work.
Craig

Great find. Can you detail what line was moved to where and I will update the release.

Thank you for your help

I moved:

 def minVoCLocal = settings.minVoC.toInteger()
def maxVoCLocal = settings.maxVoC.toInteger()

From Line 815 to 757

Craig

Thank for the bug fix.

I have pushed out V2.8.1 of keenectzone with the fix.

*V2.8.1 fix for vent open min at cooling

1 Like

So far, so good!

Brian,
When output reduction is active, the minimum setting for a zone is getting bypassed. Is that by design?
Craig

Hey Brian, nice work! I have finally decided to upgrade from Mike’s original app, and thought I could just overwrite, but got an error. So I uninstalled everything and started over. … Got same error :slight_smile:

Looks like the zoneControlSwitch has been turned off…Is that the case?

And…another

The second one on line 1151 is due to the vent being totally closed. If you open the vent a little and set minimum value for the vent in keenect to anything other than fully closed, this gets fixed.
Craig

yes for the newer builds this was disabled in favor of climates from ecobee. IF interest is expressed I can reenable the feature.

The error on line 1151 is only in the case return air vents are enable but not specified. This is under advanced settings. For most users disable return vents.

The thought was during a output reduction call to redirect all available resources to the needed zone. I can resist this topic and design.

released v2.8.2 added a default value for return air vents to false

works for me!

Logs for Fan mode not setting vents using a NEST thermostat, let me know what is needed.

KEENECT

848e0845-ccaf-41df-b496-a217095fc937 1:04:00 PM: debug checkNotify:exit-
848e0845-ccaf-41df-b496-a217095fc937 1:04:00 PM: info checkNotify- mainOn: false
848e0845-ccaf-41df-b496-a217095fc937 1:04:00 PM: info checkNotify- mainState: idle
848e0845-ccaf-41df-b496-a217095fc937 1:04:00 PM: info checkNotify- mainHSP: 68.0, mainHSPChange: false
848e0845-ccaf-41df-b496-a217095fc937 1:04:00 PM: info checkNotify- mainCSP: 81.0, mainCSPChange: false
848e0845-ccaf-41df-b496-a217095fc937 1:04:00 PM: info checkNotify- mainMode: auto, mainModeChange: false
848e0845-ccaf-41df-b496-a217095fc937 1:04:00 PM: info checkNotify- mainFan: on, mainFanChange: true
848e0845-ccaf-41df-b496-a217095fc937 1:04:00 PM: info checkNotify- mainFan: auto, temStr: on
848e0845-ccaf-41df-b496-a217095fc937 1:04:00 PM: info checkNotify- mainequipmentStatus: idle, mainequipmentStatusChange: false
848e0845-ccaf-41df-b496-a217095fc937 1:04:00 PM: info checkNotify- mainState: idle, mainStateChange: false
848e0845-ccaf-41df-b496-a217095fc937 1:04:00 PM: debug checkNotify:enter-

NEST
ddcea4fb-9689-4843-a3f3-e0ee457d05c2 1:03:59 PM: debug Nest Thermostat - Hallway: UPDATED | Last Nest Check-in was: (Tue Apr 04 13:01:29 MST 2017) | Previous Check-in: (Tue Apr 04 12:51:06 MST 2017)
ddcea4fb-9689-4843-a3f3-e0ee457d05c2 1:03:57 PM: debug Nest Thermostat - Hallway: UPDATED | Fan Mode: (On) | Original State: (Auto)

ZONE
2a8d44ff-04e5-44d2-8d9f-615da3b81b1c 1:08:40 PM: debug tempHandler- evt name: temperature, value: 76.48
2a8d44ff-04e5-44d2-8d9f-615da3b81b1c 1:03:41 PM: debug tempHandler- evt name: temperature, value: 76.37

Zone2
ea715a98-e2a1-473c-a5b5-e014c6e5e6b3 1:08:42 PM: debug tempHandler- evt name: temperature, value: 74.84
ea715a98-e2a1-473c-a5b5-e014c6e5e6b3 1:03:44 PM: debug tempHandler- evt name: temperature, value: 74.82