No announcement yet.

BlueTooth Connector Features and Documentation

This is a sticky topic.
  • Filter
  • Time
  • Show
Clear All
new posts

    Here is version 0.23 of the plugin.

    Release Notes:

    - Added a new "Lost Confirm" parameter for each device. Default value = 1.

    If the device is not found while polling, this is the number of polls before the device is reported really lost to HomeSeer.

    If you have problem with some device status flapping (lost then found), you can increase this value to 2, 3 or even more (I tried up to 6 but any value should work).

    - Added internal checks for parameter values. If any device or network parameter is wrong, the default value will be used instead, and a message will be written to the HomeSeer log.

    - Added help messages to the web configuration interface.

    - Added even more debugging info if [Settings] Debug=True

    - Fixed a small bug with Network AutoDiscovery mode. This bug had no consequence, as it was only an internal event that could be called several times (with same result) after any network parameter had been changed through the web interface.

    If you update from any previous version please copy all files (including the files in the html directory and subdirectories).

    Please send me feedback, feature suggestions, bug reports...
    Last edited by stipus; February 27, 2006, 07:14 PM.


      The new build works great. The Lost Confirm option eliminated any errors I was seeing, I ran it the last 3 hours with no errors using a Lost Confirm setting of 3.

      Great work!


        cofig problem

        just updated to hs 2065 and the latest version of you plugin but got this whentrying to get to config page, any ideas.

        Server Error in '/' Application.

        Method not found: System.String HomeSeer2.application.Connect().
        Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

        Exception Details: System.MissingMethodException: Method not found: System.String HomeSeer2.application.Connect().

        Source Error:

        An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

        Stack Trace:

        [MissingMethodException: Method not found: System.String HomeSeer2.application.Connect().]
        hspi_bt_web.Global.LoadHomeSeerObjects() +0
        hspi_bt_web.Global.Application_BeginRequest(Object sender, EventArgs e) +38
        System.Web.SyncEventExecutionStep.System.Web.HttpApplication +IExecutionStep.Execute() +50
        System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +87

        Version Information: Microsoft .NET Framework Version:1.1.4322.2032; ASP.NET Version:1.1.4322.2032


          Trojan already found the same problem. It seems HST removed or changed the Connect() method that I use to connect to HS from the web configuration interface.

          I'm going to download one of these HS2 beta, and see what I can do.



            Cheers stipus

            Never simple is it? Had to update to fix one problem only to create another

            thanks supergee


              I downloaded 2.0.2070 and this is exactly what I thought:

              The Connect() method has been changed, and now takes two strings as parameters whereas there was no parameters before.

              I don't think there is already a new documentation but I assume the 2 strings are user+password...

              Before releasing a new version, I have to check a few things, so that my implementation continues to work on older HS2 versions...
              Last edited by stipus; February 27, 2006, 06:45 PM.



                If you upgraded to HS2 >= 2.0.2065 or get the exception that the Connect() method is not found when you launch the web configuration interface, you have to use the attached file.

                Shutdown HS2
                Unzip and copy hspi_bt_web.dll to HomeSeer2/html/hspi_bt/bin
                Restart HS2

                All my plugins are going to have the same problem, together with all the scripts that I have seen floating around using the Connect() method.

                As soon as the new HS2 version is official, I'll upgrade all my plugins to the new Connect( username, password ) method.

                [EDIT] Attachement removed since a new version of the plugin (compatible with all HS2 versions) is out.
                Last edited by stipus; February 27, 2006, 07:13 PM.


                  Here is a new version of the plugin (V0.24).

                  Change Log:

                  Changed the way the configuration interface uses the Connect() method that has been broken in latest beta versions of HomeSeer2.

                  This has been tested on HS 2.0.2041, HS 2.0.2052, HS 2.0.2070

                  HS 2.0.2041 and 2052 use the old Connect() method without parameter
                  HS 2.0.2070 uses the new Connect( username, password ) method.
                  Last edited by stipus; March 1, 2006, 11:27 AM.


                    Stipus, Using the latest .24 I am getting this error>>

                    28/02/2006 00:43:39 ~!~Info~!~Found plug-in: BT Connector, version: 0.24.2250.2529
                    28/02/2006 00:43:39 ~!~Error~!~Class not found in plugin DLL: hspi_bt_web.dll Class: HSPI_BT_WEB.HSPI
                    28/02/2006 00:43:39 ~!~Info~!~Registering hspi_bt_web.dll with Windows
                    28/02/2006 00:43:41 ~!~Error~!~Unable to access plugin: hspi_bt_web.dll, try reinstalling plug-in

                    Any Ideas??



                      hspi_bt_web.dll should never be copied to the HomeSeer 2 directory. It goes to HomeSeer 2/html/hspi_bt/bin

                      There is a full list of directories and subdirectories inside the ZIP file... you have to keep them as-is, otherwise it will not work.

                      If you are using an unzipper that flattens the subdirectories while unzipping, you must check the options to keep the subdirectories.


                        I have been working on the slave plugin (independant program that could run on an alternate PC, and that would communicate bluetooth discovery information to the main plugin).

                        My main concern is communication between the main plugin and the slave plugins, because everything else is already done.

                        1) I first thought I would use XAP

                        Unfortunately I won't be able to use XAP as a communication mecanism because the .Net XAPFramework lib is released as GPL, and I can't make this a free plugin because of the cost of the Bluetooth Library I bought.

                        The XAP protocol itself is free, but a complete rewrite of a XAP client seems difficult to afford if I want to keep the price of the plugin low.

                        2) I have been looking at XPL, but I don't understand the terms of the license agreement It's GPL but....

                        Linking this library statically or dynamically with other modules is
                        making a combined work based on this library. Thus, the terms and
                        conditions of the GNU General Public License cover the whole
                        As a special exception, the copyright holders of this library give you
                        permission to link this library with independent modules to produce an
                        executable, regardless of the license terms of these independent
                        modules, and to copy and distribute the resulting executable under
                        terms of your choice, provided that you also meet, for each linked
                        independent module, the terms and conditions of the license of that
                        module. An independent module is a module which is not derived from
                        or based on this library. If you modify this library, you may extend
                        this exception to your version of the library, but you are not
                        obligated to do so.
                        Furthermore, the XPL lib does not include any XPL Hub anymore, and I fear that installing a separate Xpl Hub (that I can't redistribute) on the HS server + another Hub on the alternate PC + the main plugin on the HS server + the slave plugin on the alternate PC + configuring all this ... is calling for endless nights of tech support...

                        3) I have been trying another solution: Install web methods on the HS server side, and call these web methods from the independant slave plugin.

                        Unfortunately, HS2 web server does not support ASMX files...

                        4) I have been trying .Net remoting, but this means the Slave plugin won't be really independant anymore as all HS2 libraries would have to be installed on the alternate PC. In short, the Slave plugin would only work on a PC on which the Speaker App is installed (as it uses remoting too).

                        Furthermore, I discovered recent changes in the HomeSeer2 remoting API with HS V2.0.2065 and up, and this means the Slave plugin would only work on new HS2 versions (V >= 2.0.2065) or older HS2 versions (up to 2.0.2041) but not both !

                        I don't really know when HST will release the new HS2 version, but as I want the slave plugin to be out soon, I can't go this way.

                        5) The last method I thought of would be to use standard ASPX pages served by the HS2 web server as a CGI interface (sending a POST or a GET with all parameters).

                        I'm currently thinking this could be the easiest and simplest way to communicate between the main plugin and the slave plugins.

                        6) Others ??

                        - Implementing full tcp or udp socket communications might be long to debug.
                        - Message queue ?

                        Any other idea ?



                          Just installed the BT connector for the first time and I am getting the following error:

                          [size=1]01/03/2006 12:55:51  - BT Connector - BT Connector V0.24 Copyright 2006 [/size][email=""][size=1][/size][/email]
                          [size=1]01/03/2006 12:55:51  - BT Connector - BT Connector expiration date set to 01/03/2006
                          01/03/2006 12:55:51  - Info - Initializing Plug-in: BT Connector
                          01/03/2006 12:55:51  - BT Connector - Plugin has expired
                          01/03/2006 12:55:51  - Error - Initializing interface: BT Connector->1
                          01/03/2006 12:55:51  - Info - Done initializing plug-in BT Connector[/size]
                          Can you help?



                            Its because its a trial and it has timed out 1/3/06


                              The latest version was posted on February 27th and expired March 1st. Heck, even milk lasts 10 days or so!



                                Yes sorry, I forgot the expiration date... As soon as the web interface for device values and device strings is finished, I'll publish a new version...

                                It should be out in a few hours.