
BCreekDave
Members-
Posts
122 -
Joined
-
Last visited
Everything posted by BCreekDave
-
Wellll...if you are feeling adventurous you could start with this: http://www.ebay.com/itm/Analog-Sound-Sensor-Board-Microphone-Mic-Controller-For-Aduino-/151535155655?hash=item234832f9c7:g:TQcAAOSwc3ZUo0Bd and a Smartenit EZIO 2X4 to power it and sense the signal output. This would "listen" for the chime-bell when the cycle is complete. Usually these are pretty loud. The nice thing is that it's all external (no messing with the existing washer-dryer wiring) Besides the EZIO device cost (~$105.00) it is cheap. The challenge would be to tune it for the chime. You would want to locate it as close to wherever the sound comes out of the washer. The downside would be possible false-positives from other sounds in the area. You could get creative with the isy to "arm" it whenever the washer is running by a using one of the other inputs on the EZIO. If you happen to have a sound meter you can benchmark the chime sound to see how much louder it is than other normal sounds in the area to see if this is viable. The EZIO device has other inputs and outputs that can be used for other things also. I use one for checking humidity in bathrooms.
-
I want to post a follow up on this. Thinking the issue was my particular implementation with the door sense switch monitoring the door open rather than the typical door close position, I moved the switch to sense the door close, which also I think is intrinsically safer, given the limitation of the single input on the iolinc. This did not result in the desired solution. While the system worked triggering from Mobilinc or from the keypadlinc or directly from the PC via the isy admin console, triggering the door from the manual push button or the in-car button was not reflected in a status change on the keypadlinc button. Further investigation showed that when I replaced the caps in the 2413s, the link tables became corrupted and several devices had to be rebuilt. One of these was the keypadlinc. Looking at the button function for the garage door showed it to be missing as a responder for the scene for the garage door, in my install this scene is Garagedoormain. Once I rebuilt this link, than everything is back to working OK. Thanks for the help from oberkc and Xathros.
-
I agree that trying to trace through the code is tedious and perhaps not the best plan of attack. Unless the author (Jimbo) or someone else has slayed this exact dragon in the past. It may very well be a timing issue. I am going to work on my setup to match the switch function to switch closed when the door is closed. This is the way that the program was originally intended, and may be more intrinsically safe. The "i" and "s" are in fact indicators of integer and state variable. I have confirmed that the commands are getting through. I can see the state and integer variables change, but it is hard to tell if they are changing at the right time. I am also going to disable the lights. While I can unhook the door, my neighbors must think I am nuts with the lights going on and off all the time while I debug. I will work on it on Saturday. Too many other projects going on before the weather turns. Thanks everyone for the suggestions. I am using this as always as a learning experience. By the way oberkc, hello from Beavercreek. I live close to 675. If you are driving by, look for the garage lights flashing!
-
Yes, it is a long program. I think there is a lot of error checking with state and integer variables to verify that the door achieved the desired result and if it didn't, to be able to notify the user. There are sub-programs for power outage etc. I tend to like this for something like and entry door where security and safety is an issue. This along with a well placed camera.
-
Xathros Code as follows: One other note. I have the keypadlinc button setup as a controller and responder for a scene "GaragedoorMain" The iolinc is set as "Momentary B" with "LED on TX" checked. No other options checked. I have a momentary hold time of 0.2 seconds which seems to work OK. =================================================================================== Main Garage Door - [ID 0046][Parent 0024] Folder Conditions for 'Main Garage Door' If - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Allow the programs in this folder to run. ----------------------------------------------------------------------------------- 000 ButtonOff - [ID 002E][Parent 0046] If $i.GDM_Dontwatch is 0 And Status 'A Mud Room Entry Keypad / B OpenClose Garage Door (GDM)' is Off Then $i.GDM_Requestedstatus = 0 $s.GDM = 1 Else - No Actions - (To add one, press 'Action') Function: When the button state is changed, remember if it was changed to on or off and start up the state machine. Details: All the '000' programs monitor the status of the KPL that is tied to the GDM Scene. We only have to monitor one of them, since when the scene is changed by any of KPL or Mobilinc it will affect all of them. The main state variable for all GDM programs is s.GDM, which tells us where in this state machine we are. We do not monitor that state variable in the 000 programs because other programs within this state machine will toggle the scene on and off, which in turn changes the button state, so while the state machine is running we ignore running the 000 programs using the i.GDM_DontWatch integer variable. The i.GDM_RequestedStatus stores if the request was to close (0) or open (1). from :http://forum.universal-devices.com/topic/11099-garage-door-control-with-kpl-and-mobilinc/page-3#entry152166 ----------------------------------------------------------------------------------- 000 ButtonOn - [ID 002D][Parent 0046] If $i.GDM_Dontwatch is 0 And Status 'A Mud Room Entry Keypad / B OpenClose Garage Door (GDM)' is not Off Then $i.GDM_Requestedstatus = 1 $s.GDM = 1 Else - No Actions - (To add one, press 'Action') See '000 ButtonOff' for a description. ----------------------------------------------------------------------------------- 001 DoorStateFalse - [ID 002F][Parent 0046] If $s.GDM is 1 And ( ( $i.GDM_Requestedstatus is 0 And Status 'Garage Main Door IOLINC-Senso' is On ) Or ( $i.GDM_Requestedstatus is 1 And Status 'Garage Main Door IOLINC-Senso' is Off ) ) Then $s.GDM += 1 Else - No Actions - (To add one, press 'Action') Function: We have just entered the state machine from a KPL button changing state. If the requested door status does not match the door sensor status then go to the next state. Info: It seems that we could tie the check of the sensor status into the 000 Button* states, but that does not work correctly because it would trigger the 000 state when the sensor status changes but the button status has not changed yet. This is because I have the sensor as a controller for the GD scene because I want to see the sensor as part of the scene in Mobilinc. ----------------------------------------------------------------------------------- 001 DoorStateTrue - [ID 0030][Parent 0046] If $s.GDM is 1 And ( ( $i.GDM_Requestedstatus is 0 And Status 'Garage Main Door IOLINC-Senso' is Off ) Or ( $i.GDM_Requestedstatus is 1 And Status 'Garage Main Door IOLINC-Senso' is On ) ) Then $s.GDM = 10 Else - No Actions - (To add one, press 'Action') Function: We have just entered the state machine from a KPL button changing state. If the requested door status matches the door sensor status then we are done. Info: See DoorStateFalse for info. ----------------------------------------------------------------------------------- 002 Init - [ID 0031][Parent 0046] If $s.GDM is 2 Then $i.GDM_Dontwatch = 1 $s.GDM_Counter = 10 $s.GDM += 1 Else - No Actions - (To add one, press 'Action') Function: The door was requested to move, so initialize variables used in the state machine and go to the next state. i.GDM_DontWatch: 1=Don't watch the state changes of the KPL's s.GDM_Counter: Loop counter for '002 Loop' program s.GDM: Main state variable, go to state 2 ----------------------------------------------------------------------------------- 002 Trigger - [ID 0032][Parent 0046] If $s.GDM is 2 Then Set 'Garage Main Door IOLINC-Relay' On Else - No Actions - (To add one, press 'Action') Function: The door was requested to move, so trigger it. Note: This could have been done in the Init program, but that delays the flashing of the scene for longer than I like... The IOLinc relay is in Momentary B mode so it is triggered by both on and off. I think this is important since I don't turn it off, although I could, but I don't care what state the relay is in. ----------------------------------------------------------------------------------- 003 DoorStatusClosed - [ID 0033][Parent 0046] If $s.GDM is 3 And $i.GDM_Requestedstatus is 0 And Status 'Garage Main Door IOLINC-Senso' is On Then Set Scene 'GarageDoorMain' Off $s.GDM = 10 Else - No Actions - (To add one, press 'Action') Function: While in the state and the door was requested to close, when the door is closed we are done. Make sure the scene is off and go to the cleanup state. Note: Logic "And Status" inverted due to my switch location ----------------------------------------------------------------------------------- 003 DoorStatusOpen - [ID 0034][Parent 0046] If $s.GDM is 3 And $i.GDM_Requestedstatus is 1 And Status 'Garage Main Door IOLINC-Senso' is Off Then Set Scene 'GarageDoorMain' On $s.GDM = 10 Enable Program 'Garage Lights SubRoutine' Else - No Actions - (To add one, press 'Action') See DoorStatusClosed for a description. ----------------------------------------------------------------------------------- 003 Loop - [ID 0035][Parent 0046] If $s.GDM is 3 And $s.GDM_Counter > 0 Then Set Scene 'GarageDoorMain' Off Wait 1 second Set Scene 'GarageDoorMain' On Wait 1 second $s.GDM_Counter -= 1 Else - No Actions - (To add one, press 'Action') Function: Toggle the scene on and off so the KPL buttons and Mobilinc icon change state. This gives visual feedback that we are waiting for the door. Decrement the counter s.GDM_Counter each time, which tracks our timeout function, and causes this program to restart until the counter reaches zero. We could have made the counter be the s.GDM... Oh well... (I wish the 'Wait' could use a variable!) ----------------------------------------------------------------------------------- 003 Timeout - [ID 0036][Parent 0046] If $s.GDM_Counter is 0 And $s.GDM is 3 Then $s.GDM += 1 Else - No Actions - (To add one, press 'Action') Function: If the s.GDM_Counter has reached zero while we are in the waiting state, then the door did not reach the state that was requested! So go into state 3 which handles the failures. (I had a reason for not handling them in this state, but can't remember why...) ----------------------------------------------------------------------------------- 004 FailedClose - [ID 0037][Parent 0046] If $s.GDM is 4 And $i.GDM_Requestedstatus is 0 Then Set Scene 'GarageDoorMain' On Send Notification to 'Daves MMS Text' content 'Garage Door Failed to Close' $s.GDM = 10 Else - No Actions - (To add one, press 'Action') Function: There was a request to close the door, but we timed out waiting. Make sure the scene is on since this state machine toggles the scene we are not sure where it ended up. Send a notification to tell us that there was a problem! Go to state 10 which does the cleanup. Note: I wonder if there could be a race condition... If the door sensor status happens to change after TimeOut and before this is triggered? But I really don't think that will happen... ----------------------------------------------------------------------------------- 004 FailedOpen - [ID 0038][Parent 0046] If $s.GDM is 4 And $i.GDM_Requestedstatus is 1 Then Set Scene 'GarageDoorMain' On Send Notification to 'Daves MMS Text' content 'Garage Door Failed to Open' $s.GDM = 10 Else - No Actions - (To add one, press 'Action') See FailedClose for a description. ----------------------------------------------------------------------------------- 005 GaragedoorPowerOutage - [ID 003A][Parent 0046] If $i.GDM_Dontwatch is -1 And ( Status 'A Mud Room Entry Keypad / B OpenClose Garage Door (GDM)' is Off Or Status 'A Mud Room Entry Keypad / B OpenClose Garage Door (GDM)' is 100% ) Then $s.GDM = 10 Else - No Actions - (To add one, press 'Action') ----------------------------------------------------------------------------------- 010 GarageDoorDone - [ID 0039][Parent 0046] If $s.GDM is 10 Then $i.GDM_Dontwatch = 0 $s.GDM = 0 $i.GDM_Dontwatch Init To -1 Else - No Actions - (To add one, press 'Action') State machine is all done so start watching again.
-
Hi Xathros, Due to the quantity and length of these programs, can you suggest the best method of posting? I somethines use the "Copy to Clipboard" or just the "Export" function. Thanks dave
-
Thanks for the quick reply, Xathros. I tried again the restore device but it didn't help. I had tried this at least twice already, but wanted to be sure. For just a bit more info, the keypadlinc does not update when the in-car button is used either. This is not a surprise, but I just tried it to verify. I agree about the position of the door. I am looking into changing either the placement of the chain-cam or going to the EZIO unit. Dave
-
I have had this running for several months now and have only one small problem. Perhaps it is my particular implementation, but the keypadlinc button is not updating its state when the original manual push button is used. This button is mounted in the garage on the wall and is therefore the most convenient method of closing-opening the door when I am in the garage. I think based on this statement in the original post by the author this function was intended: "Of course, it also properly handles everything when the door is manually opened or closed..." It seems like it may have at one time worked for me, but I had to re-cap my PLM a month or so ago and some switches got kind of flaky afterward and the link table had to be somewhat re-built. I am not sure if it did ever work and I have rebuilt the iolinc and keypadlinc (deleted and replaced) and the PLM link table shows them to be OK. My install is maybe somewhat different in that I am using a limit switch (normally open contacts) mounted on top of the opener that is tripped by a cam-block attached to the openers chain near the trolley. Functionally, I am sensing when the door is open instead of the typical magnetic switch which is usually mounted near the floor and senses when the door is closed. I have changed the program slightly (003 Doorstatusclosed -> sensor on and 003 Doorstatusopen ->sensor off) to compensate for this. Was this the original intention of the program? If so, can you point me in the direction of how to debug this? It may be a timing issue as my method does not immediately update the door open until it is fully open due to the switch location. The door has to be fully open for the limit switch to change states. Conversely, my install does immediately sense when the door is closing. I can't say I am really happy about using the IOlinc in this type of install. It seems that due to only having one input, the doors position can only be positively sensed either fully open or fully shut. I have a EZIO 2x4 that I am thinking about re-purposing due to this. Thanks for any help anyone can provide. Dave
-
I don't have much experience with strobes. Do they thermally like being held on for 4 seconds? Sent from using Tapatalk
-
In the interest of reducing network traffic and wear and tear on an insteon equipment, it would be best to do the switching with an industrial timer such as this http://www.ebay.com/ulk/itm/400790194690 Basically, this device is activated (energized) by a an insteon lamplinc or similar at dusk and de-energized at dawn. Turn the knob to adjust the on-off interval from 0.1 to 10 seconds on this particular model. It's a solid state relay internally so it should last a long time. To connect to this, you will also need an 8 pin din socket such as this: http://www.ebay.com/ulk/itm/381020969541 One other thing to consider for bulb life is going to a DC voltage to drive the bulb. A 12vdc bulb will all things being equal have a much longer lifespan in a high cycle setting and also have the benefit in this case of being safer around water. Sent from using Tapatalk
-
A final suggestion for a workaround that actually would be more secure is to install a VPN server on your local network (router) and a vpn client on the mobile device. Then you could connect via HTTP on the Mobilinc app. This of course assumes that your router supports this (many do). Sent from using Tapatalk
-
I didn't mean that as a slam against UDI, quite the contrary. I just meant that with a technology product, time marches on. I fully expect someday to have to upgrade my 994 due to technology advancements that will make supporting it non-feasible. UDI I think does an outstanding job supporting their hardware well past what other companies would do. Actually, if anything my statement was more of a slam against Apple that you can't downgrade the iOS version. Your only choice there is to not upgrade to the newest version, but even that will soon limit you in installing newer apps and patches. Sent from using Tapatalk
-
Can't roll back iOS versions. Apple doesn't allow it. Signing window has closed. This does show an example f an instance where you are forced to buy new hardware to maintain existing functionality. Sent from using Tapatalk
-
Just got an email from smartphone with this: http://www.smarthome.com/aeotec-zw100-a-z-wave-multisensor-6.html Sent from using Tapatalk
-
When I posted my reply I assumed that you were interested in only checking against exceeding a predetermined discrete threshold value and then building code around this. If instead you want to check for several levels of temp-humidity, this will be more difficult. The ISY cannot directly read analog inputs, so one of the other solutions discussed here may be more suitable. Smartenit does have an 8 output unit that could conceivably provide 8 outputs (possibly more using binary logic). Sent from using Tapatalk
-
Just ordered one of these: http://www.ebay.com/itm/AM2001-Single-Humidity-Sensor-Voltage-Analog-Output-Module/261562364626?_trksid=p2050601.c100085.m2372&_trkparms=aid%3D111001%26algo%3DREC.SEED%26ao%3D1%26asc%3D20140211132617%26meid%3D0e381a74dd0c4fcda702c01de741af08%26pid%3D100085%26rk%3D2%26rkt%3D4%26sd%3D221258855689%26clkid%3D7751134538800138925&_qi=RTM2067268 for a try at bathroom fan control using a EZIO 2x4 with the analog input. It will be a few weeks until I receive it and test, but I'll report back with the results.
-
Another possibility is that IF it was working correctly and IF the WAN IP address has not changed, it is possible that your ISP is now blocking the ports used to access the ISY. This is increasingly common on residential services. The ports they usually block are the common ones used for HTTP (port 80) and HTTPS (port 443) and some others. The ISY can be configured to use other ports or you can configure the router with a rule to translate an unblocked port to the ISY standard port. They do this to prevent residential customers from setting up web page servers and other things like ftp servers. Sent from using Tapatalk
-
Sorry if I created confusion. The factory reset I did on the togglelinc, not the keypadlinc. Both the togglelinc and the keypadlinc had x10 addresses. What fixed it was removal of the x10 address from the keypadlinc. I did this manually without doing a reset. Actually, the togglelinc still has the x10 address and everything is working ok. I can still issue an all lights off from the x10 powerhouse mini controller and shut off the ceiling light (via the togglelinc) and the keypadlinc ignores this command as it does not respond to x10 commands now. I don't recall adding the x10 address to the keypadlinc, but I must have at some point. Thanks again everyone for your help on this annoyance. I was living with it, but my wife was really annoyed. She wanted ( and rightfully so) to be able to just push the button and the door to work. Explaining to her " if the light is off and you want to open the door, than push the button twice" wasn't impressing her! Sent from my iPad using Tapatalk
- 21 replies
-
- iolinc
- keypadlinc
-
(and 2 more)
Tagged with:
-
nevermind...used the Powerhouse controller and removed the x10 address and everything seems to be working well! Thanks stusviews and oberkc for the great help!
- 21 replies
-
- iolinc
- keypadlinc
-
(and 2 more)
Tagged with:
-
I think you are correct. It does have an x10 A7 address assigned. Probably not an easy way through the ISY to delete this is there?
- 21 replies
-
- iolinc
- keypadlinc
-
(and 2 more)
Tagged with:
-
I have an old Powerhouse mini-controller in the bedroom and I use it for an all-off or all-on type of command. Also for the bedroom cans.
- 21 replies
-
- iolinc
- keypadlinc
-
(and 2 more)
Tagged with:
-
Disabled the garage door programs. No change except now of course when I press button b nothing happens except the button light toggles on and off. When I use the togglelinc button b still does the same thing. Sent from using Tapatalk
- 21 replies
-
- iolinc
- keypadlinc
-
(and 2 more)
Tagged with:
-
Yes. Exactly. Restore is a better description. I used the ISY 994 to restore the togglelinc. I suppose the next step may be to move button b to perhaps button e (not used currently) to see if it follows the button Sent from using Tapatalk
- 21 replies
-
- iolinc
- keypadlinc
-
(and 2 more)
Tagged with:
-
Yes, both times it had to be re-associated to the keypadlinc A button to work as a 3 way switch. Sent from using Tapatalk
- 21 replies
-
- iolinc
- keypadlinc
-
(and 2 more)
Tagged with:
-
No. It has always been an 8 key. Sent from using Tapatalk
- 21 replies
-
- iolinc
- keypadlinc
-
(and 2 more)
Tagged with: