Text file last updated on 10/08/06. The latest revision is: Rev 100806.1, Build 0.1.0.36 Using SDM3 version 278 InHomeFre - INSTEON(tm) HomeControl Freeware No big changes. The maximum allowed timers, for this program, is 150. I could not get a PLC to accept any more than that without choking. I recompiled and tested with 30 timers, that works. Newer: * I have added a 'Setup Link' function on the 'Link' page. Select 'Device A' (controller) and 'Device B' (load), select a group number and on level, click 'SetupLink' and in 15 to 20 seconds the link will be made. If you leave 'Device A' as '00.00.00' the PLC will be the default controller. This enables you to set up various group scenes (with PLC as controller) and have the PC activate them (a virtual ControLink). Note: Group cleanup messaging is not currently enabled for this function. Auto device level update is not currently enabled for this function. Newer: * If you are updating from an old version, you may see a 'File read error' on start up. Just click on the 'OK' button(s) and any needed files will be created. Any files that this program creates are 'My*.dat' and are created in the same directory as the program '.exe' file. Newer: * I have added an option on the 'Setup' page to enable automatic polling on program startup. Check the 'Auto Poll Devices At Program Start' to enable this function. When enabled, all devices will be automatically polled for their levels any time the program starts. I recommend checking this one, the macros need to know device levels in order to perform 100%. Newer: * I have added an option on the 'Setup' page to enable all of the timer events that are in the 'MyTimers.dat' file to be fired automatically on startup, ONLY AFTER a Power Fail event. This new function can be activated by checking the 'Power Fail Timer Recovery' option on the 'Setup' page. Newer: * I have added an option on the 'Setup' page to enable all devices to be set to their last known level ONLY AFTER a power fail event. The 'Power Fail Device Level Recovery' option must be checked to enable this function. The 'Power Fail Timer Recovery' must be checked first. Notes on the new power fail recovery functions: * The user must assume all liability for the state and safety of local electrical devices prior to activating any 'Recovery Optons' of InHomeFre. You sometimes just want to take a good look around prior to activating your devices after a local power failure. The program timer will save all device levels every five minutes. If you need to test this, close InHomeFre. Open 'MyFlags.dat' with Notepad. look for the: NormalShutdown=True Change the '=True' to '=False'. Start InHomeFre, it will think a power failure has occured. The powerfail events will then happen. Newer: * Added the ability to do Byte wide peeks/pokes to any memory location on Advanced Links page. Select the device at the top of the page and then enter the address in the box provided. Newer: * Minor improvements. I have improved some timing and user interaction functions to help make this a more useful program. Example: If the program fails to initialize the DM, it will offer help and continue. After that you may do a 'port=xxx' to initialize the coms. Example: 'Peek Record' now updates the screen with progress reports. Newer: * Added a 'Timers Update' function. Basic operation of this: The local timer file (the one loaded in the program, not the PLC) is read, and all timer events will be brought up to date. This is not a 'smart' function, it will just execute the day's timer events, up until the current time, all at once, sorted by device. If you have three events in the schedule for one light, all three will be executed in order, then any next device timer will execute. A cool thing this enables, is the ability to store 'on level' files as 'timer files'. That means.... You may set up a lot of different device light levels. Click the button, and they will happen (PC scene control). A few things I assumed for this (to keep life simple): Sunrise- (any offset) will equal 0600. Sunrise+ will equal 0630. Sunset- will equal 1800. Sunset+ will equal 1830. Also, the 'Day of the week' and 'Security' parameters are ignored. There is a limit of 512 timer entries. ***First Time Setup*** Download and run the SetupSmarthomeDeviceManagerx-xxx.exe file. Download and un-zip the application files into a directory of your choice. General directions: You should execute 'Poll All Devices' once, at each start up, to establish initial device on levels. One time only, go to the 'Setup' page in the software. Click on the 'Load Places' button and scroll down and select the city nearest to your location. Click 'Load My City' and your location for the sunrise/sunset timers will be set. On the same page you can check and set the PLC time with the computer time. On the 'Monitor' page, if you Execute 'getsunrise', you should get back the time of your local sunrise. If no time is returned you need to 'Load My City' as described above. Also, on the 'Setup' page, you need to enter the Insteon net addresses for your devices. The address is located on a sticker on your device, it is something like 00.1A.0E. For X10 enter the HouseCode and UnitNumber, Ex: A1. The 'Device Name' is just a name that you want to call it. The 'Add' button will add the new device to the list at the top of the page. This is a list of devices to use in other control functions. To delete one of these devices select it in the list and click the 'Delete' button. The 'Monitor' page provides the ability to watch the PLC events happening. Double clicking on the text box will clear all entries. You may type in a command and then click the 'Execute' button to send it to the SDM. This function calls the SDM SendText(yourText) function. This is intended for advanced users only. The 'Automatic Polling' checkbox will activate a polling interval of one device per xx seconds. xx=your selection. In most cases, automatic polling will not be needed. The 'Control' page is where timers are entered and modified and devices are controlled. The device selected at the top of the page will have the timer action associated with it when you click 'Add Timer'. There are some basic help buttons. The default timer file is 'MyTimers.dat'. Right clicking on the timer list box and load/save options are available. To keep life simple please use 'timer' somewhere in your file name, example: "MyNewTimers.dat'. On the 'Macros' page you are able to set triggers for Insteon commands with X10 PLC commands. Example: A1,ON might be used to set an Insteon device to 50% bright. If you 'double click' on a macro in the list, the armed state will change. True=1 means the macro will run, true=0 means the macro will not run. If you select a macro in the list box and 'right click' on it, an option to delete it pops up. Your PC must be running for macros to operate. The default macro file is named 'MyMacros.dat'. You may load and save macro files to different names. Please include the word 'macro' in the file name, example: NewMacros.dat'. IF you link a device (as master) to your PLC (as slave), the 'on levels' will automatically update when the device state is changed. This feature is intended for use with V2 wall relay/dimmer type switches. This feature is needed for the 'SmartMacro' function to operate. Imbedded 'SmartMacro' logic. Example: - The room is dark. - A macro turns a light on to 70% with a motion detector. - If the 'Delay-then-Off' function is enabled the light will automatically turn off at the end of the delay. - If I want to cancel this off function, I hit the switch paddle and change the level of the controlled light. This will disable the automatic off function. The SmartMacro feature works best with the 'And Device Level Is' setting= 'Off'. An 'Off' setting will prevent the macro from trying to control a light that is already turned on. Basic Macro operations. IF - This is the X10 trigger. Example, select A1ON for a trigger. And - 'And' allows you to select a pre condition. Example, select 'off' and the Insteon device must be 'off' for macro to fire. 'Any' means no condition. 'Not off' means any on state - 1 to 100% bright. For this to work, a level must be shown in the device list (level = xx%). If no level is know, this function defaults to 'any'. The levels are updated when you change a device level with this software. You may also poll devices with this software to update the known levels. And - The next 'and' allows a macro time to be set up. Please be aware that a selection of 22 to 01 hours will have valid hours of 22,23,00,01. The last number represents a valid hour. If you want to disable the macro at 01 hours, enter 22-00. THEN - The device selected at the top of the page will be set to this level. Delay - Allows you to set an 'off' timer. Example, selecting 1 minute will automatically turn the device off 1 minute after the macro trigger. The current maximum is 10 delay timers running at once. If all timers are in use, The macro will trigger but the delay-off will not function. Delay uses 'SmartMacro' logic. Allow Retrigger - This will allow the 'off' timer to retrigger. If the timer is 30 seconds into a one minute count, and a new trigger arrives, the timer will start over from an initial count of zero. You may load and save macros as files. Please use 'macro' in the name and use the '.dat' extension. Example, 'MyWeekDayMacros.dat' is a valid name. Macros must be run from your PC. If you just want to create timed events use the 'Set PLC Timers' function. This will load the events into your PLC and allow execution without a PC. The 'Links' page enables the management of different links. Pseudo links (pLinks) are software links that tell the program to check the 'on level' of one device when a message is received from another. The 'on levels' are used in the macro logic. Example: -Device A is a wall control or ControLink. -Device B is a remote plug in dimmer module. -I link device A to my PLC as master. I can then add a pLink to have device B's level updated when device A transmitts a command. Device B does not need to be in the PLC link database. I do not recommend having a lot of pLinks for any one device. The messages can stack up and take five or ten seconds to complete if you repeatedly press the same control button. Panels at the lower left will show your current, running PLC Firmware and SDM Device Manager versions. The 'Advanced Links' Page: The advanced links page exists to enable low level link management. This pages allows you to directly manipulate the records in remote devices. Please see the '?' button help file on this page for more info. Also, please use this with caution. You may end up having to do a 'factory reset' on any device where a bad mistake is made. You will be able (with practice) to directly change 'on levels' and 'ramp rates' in the link database. This software has been tested with a USB 2414U rev (sticker) 1.6, firmware 2C (2.12). It has been tested with the SALad timerCoreApp (5B&06) shipping as of 123005. My test machine is a P4 XPpro. This 'should' work on any Win32 486+ machine. * * Author's comments: If you have any ideas for 'added features' please make a comment, being aware that, there are limitations to what this thing can do. ENJOY INSTEON(tm) is a registered trademark of Smarthome(tm) Inc. Ken Miller krmiller53@hotmail.com