Announcement

Collapse
No announcement yet.

BT Connector 2.48.2.2 performance issues

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    BT Connector 2.48.2.2 performance issues

    I have 10 bluetooth devices paired to my PC and configured within the BT Connector and I'm getting performance issues resulting in the HomeSeer app having to be restarted.

    Upon HomeSeer restart I am able to perform normal tasks such as BT Connector "Scan new Bluetooth Device", whereas if I leave this for about 30 minutes I get error message "Timeout processing ASPX page" on the browser window after pressing the scan button. I am also finding it very difficult to pair a new device with my PC with HomeSeer running if it has been running for a while. Please note that although I have obviously rebooted my PC, this problem is resolved temporarily by just restarting HomeSeer (and hence the BT Connector).

    My PC is reasonably spec'd and homeseer.exe is stated to be using 0% CPU resources in Task Manager with total CPU being 4% (whilst typing out this note) so it's not CPU constrained (Win 7 32-bit, MS BT stack).

    All 10 BT devices are set to DiscoverService with a Poll Delay of 5 (AutoDiscovery is not turned-on). As most of them are friends mobile cell phones, only 2 or 3 devices are ever on-line at once (right now where I have this problem only my iPhone is connected).

    As I have been recently adding more and more friends phones I have been finding it increasingly difficult to add them to the point that I now have to shut down HomeSeer to first pair the device and then start HomeSeer and "Scan new Bluetooth Device" immediately afterwards so that I don't get the "Timeout processing ASPX page".

    Please can you look at this issue?

    PS As a temporary fix is there a vb.net method where I could recycle the BT connector so that I could call this from a recurring event?

    #2
    All 10 BT devices are set to DiscoverService with a Poll Delay of 5
    This is a too short poll delay for a service discovery with 10 devices ! Your Bluetooth stack must be very busy performing the discoveries.

    A service discovery takes at least 2 or 3 seconds.... if you have 10 service discoveries every 5 seconds, the Bluetooth stack must be saturated... and that's why you cannot pair devices from Windows.

    Unfortunately there is no way to recycle the Bluetooth library used by the Bluetooth Connector plugin. The process must be shut-down and restarted. You cannot bring the plugin down, and restart it. This is a limitation of the Bluetools library.
    --
    stipus

    Comment


      #3
      Hi Stipus, thanks for the quidk reply.

      OK, let me explain what I'm doing and perhaps you can guide me in the best way of doing it. What I've got at the moment has functionally worked very well over the last 3 months, it's just the new registration process that gets me - although from your description above I now understand about the heavy loading I'm putting on the Bloetools library.

      I have 10 mobile cell phones configured with a Poll Delay of 5 whilst in "Device Away" status for quick detection. As soon as one of them becomes "Device Detected" I programatically change the Poll Delay to 180 for that device to save phone power and I'm not too bothered about when they leave (sort of doorbell announce by name thing).

      I'm currently using DiscoverService, so all my devices are already paired. Can you think of a way I can have an early detection of a device without loading the BT stack to the extent that I have to restart HomeSeer to pair a new device?

      Comment


        #4
        Unfortunately, I don't see how you could do this with the Service Discovery mode.

        It should work with Autodiscovery. However you might need to unpair all devices... It depends on your BT stack: some BT stack always find paired devices.
        --
        stipus

        Comment


          #5
          Hi Stipus - thanks for the reply.

          Unfortunately, AutoDiscovery is no good for me as most of my friends have iPhones and you can't leave an iPhone in Discovery mode without leaving it on the Bluetooth screen.

          I've now got all 10 devices set with a Poll Delay of 500, restarted HomeSeer, waited 15 minutes and I still get "Timeout processing ASPX page" in my IE browser window. From initial restart of HomeSeer, pressing this button comes back after 4 seconds. I've tried disabling all 10 devices and then clicking the "Scan new Bluetooth Device" button and this makes no difference either.

          There is definately a problem here with multiple devices and it doesn't appear to be to do with the Poll Delay.

          Please can you take a look at this?
          Last edited by Emotion; March 18, 2010, 11:07 AM.

          Comment


            #6
            I'm not sure I can do anything.

            The problem might be within the Bluetools library or BT stack... but I don't see what could create this kind of problem in the plugin code.
            --
            stipus

            Comment


              #7
              Hi Stipus, thanks again for the quick reply.

              OK, with all devices set with a Poll Delay of 500, I've just now unpaired my phone from the PC and repaired it back up which took just a few seconds. This was not the case with Poll Delay = 5.

              However, clicking on the "Scan new Bluetooth Device" still takes forever and times-out so it does appear to be specific to the plugin code

              Comment


                #8
                This error is very consistent and reproducible and happens 15 minutes after HomeSeer is restarted.

                I'm actually OK about restarting HomeSeer every time I want to add a new bluetooth device in this plugin, it's not that much hassle - I'm not entirely sure I'd be happy if I had written a plugin that required users to restart HomeSeer, that's all.

                Comment


                  #9
                  As you guessed right, I'm not happy with this plugin.

                  The problem is within the Bluetooth library that I bought to access Bluetooth devices from the plugin.

                  http://franson.com/Bluetools/

                  The lib has not been updated since December 2007, and has problems with some bluetooth stacks/bluetooth dongle combinations.

                  The lib has no way to be unloaded and restarted without shutting down the whole process. That's really bad. I know it. I wrote several messages to the support board, got a few answers but no fix.

                  The only thing that I could think of would be to find another BT lib.

                  Currently if you are lucky to have a BT stack/BT dongle that is well supported by the lib, then the plugin is fine. If you are unlucky I can't do much.
                  --
                  stipus

                  Comment


                    #10
                    Oh, OK - sorry to hear that. I guess you had to sell quite a few pluggins to break even for the cost of this. I was going to suggest the library from btframework.com which was last updated 2 weeks ago, but the cost of a commercial license is even worse!

                    I feel guilty complaining now

                    Comment


                      #11
                      The lib from btframeworks.com looks interesting.

                      The good thing is it supports all BT stacks (MS, Widcomm, Toshiba and Bluesoleil), and there are many updates.

                      The problem is the cost.... $350 for only 6 months... I'm not sure I can get the money back from plugin sales....

                      The support forum is also full of problem reports, bugs with some stacks, memory leaks, unexpected crashes... etc.
                      http://forum.btframework.com/index.php?board=55.0

                      And from what I read, there is no function to get the RSSI level yet. The current plugin uses this to triangulate BT device position.
                      --
                      stipus

                      Comment


                        #12
                        That's exactly how an occupancy sensor should work!

                        Originally posted by Emotion View Post
                        Hi Stipus, thanks for the quidk reply.

                        OK, let me explain what I'm doing and perhaps you can guide me in the best way of doing it. What I've got at the moment has functionally worked very well over the last 3 months, it's just the new registration process that gets me - although from your description above I now understand about the heavy loading I'm putting on the Bloetools library.

                        I have 10 mobile cell phones configured with a Poll Delay of 5 whilst in "Device Away" status for quick detection. As soon as one of them becomes "Device Detected" I programatically change the Poll Delay to 180 for that device to save phone power and I'm not too bothered about when they leave (sort of doorbell announce by name thing).

                        I'm currently using DiscoverService, so all my devices are already paired. Can you think of a way I can have an early detection of a device without loading the BT stack to the extent that I have to restart HomeSeer to pair a new device?
                        Emotion,

                        I purchased this plug-in years ago and what you are doing is EXACTLY what the default behavior should be. It should poll quickly when away and then very slowly when home.

                        Can you post how you do that? I need to start getting into scripting..

                        Thanks!

                        Stipus,

                        There hasn't been much work done on the plug in, how about adding this feature?

                        Comment


                          #13
                          That's a good idea !
                          --
                          stipus

                          Comment


                            #14
                            Also wondering how to setup poll delay of 180 seconds when phone in range.

                            With the default settings(10seconds) was my iphone4 battery empty in 8 hours and my Imac was lossing keyboard connection every few minutes.

                            I have set the delay to 180 secondes and the Iphone is not detected anymore.

                            Comment


                              #15
                              Better someone smart, than me!

                              I'd like to see an "away" poll time and a "home" pole time, but you might want to start fast polling as soon as the first pole is missed. I.E. if you have lost confirm set to >1 then "fast pole" mode is enabled. Just a thought.

                              While I have had the plugin for a long time, it never liked any of my phones after I got rid of my original "dumb it's just a phone" phone. It does seem to like my Evo, so I'm totally jazzed that I might finally be able to use the connector again.

                              With the fast poll, I might be able to achieve the ultimate goal of automatically un-locking the front door when someone arrives home. Yes, it could be done with rf-ID in a car, but IMHO, BT would be better since we share cars but don't share phones and I'd like to know who is acutally "home".

                              Also, I'm still working (slowly) on screens for HSTouch so not having to do scripting for this would be great. One day, I'd like to learn to use scripts, but I'm not there yet.

                              Thanks for the consideration.

                              Robert

                              Comment

                              Working...
                              X