Access Keys:
Skip to content (Access Key - 0)
 

unresponsive IR signals from input commands during button press

allen

On Mar 21, 2012 20:09

Hi there,

I have have openremote setup on my android tablet, a QNAP TS-219P II turbo NAS as the controller, and global cache Itach wf2ir module. I have setup the connections for them all and have been successful with controlling my AV equipment from the tablet and openremote touch interface. however, more often than not, I notice there is a significantly long delay between button press and the time the Itach sends the IR signal. Sometimes, it doesn't even send it at all. This is particularly worse when I push multiple buttons in series. the Itach will either have a 5-10 second delay and then send them all at once or if bombarded with too many commands, will skip some of them in between.

Is there a way to fix this to make the responsiveness faster? I have a gigabit connection and I don't think that's an issue. I used to have a pronto and it worked great but I wanted something more customizeable hence I went with openremote. thank you.

is it better to install the controller software on a PC vs. a NAS? I have both setup and can use either but I can't tell which one is generally should be more reliable.

Derek

 
Labels:
Participants: Eric Bariaux , Marko Jamelle , Marcus Redeker , allen
  1. Mar 22, 2012

    Marcus Redeker says:

    You could try the PC, to make sure it is not related to CPU power. Which version...

    You could try the PC, to make sure it is not related to CPU power.
    Which version of the controller are you using? The final 2.0 is now available.
    Do you have any sensors or just controll commands?

  2. Mar 22, 2012

    Marko Jamelle says:

    I've also seen noticeable delays with my QNAP TS-110 and a KNX installation. Bot...

    I've also seen noticeable delays with my QNAP TS-110 and a KNX installation. Both are based on ARM architecture with limited java performance. After switching off all traces and log settings delays are on an acceptable level. Maybe you should give it a try.
    MArko

    1. Mar 22, 2012

      allen says:

      Hi everyone, thanks for your response and input. Marcus: both machines are runn...

      Hi everyone, thanks for your response and input.

      Marcus: both machines are running the 2.0 version of the controller. my machines are:
      QNAP TS-219P II turboNAS via ethernet gigabit LAN.
      Dell 710m laptop with pentium M CPU, 1GB RAM running windows XP pro via WLAN wireless G.

      the performance of both seems to be the same. I have noticed that bombarding it 5-6 commands in quick sessions will cause it to freeze since the controller needs to catch up.
      Sending 1 command at a time is pretty much instant with about .5 second delay which is acceptable.
      If I don't press anything on the remote for a while and then initiate a command by pressing something whether it's a macro or a single button, it has 5-10 delay before the IR is sent. somethings need to press the command again for it to work.

      Summary:
      So based on what I have noticed, it seems that the delay is really that first command being sent from an idle state. Almost seems like the controller has been sleeping and waiting for a wake signal.

      Possible causes:
      1. Itach is slow at getting Wifi signal and converting it to IR.
      how to test: I would like to hear other people's experiences have been using openremote to send a IR signal with other devices to test #1.

      2. openremote controller falls into a pseudo-sleep mode when touch panel has been idle for a while.
      how to test: maybe a more powerful machine as a controller? Or anyone making modifications/tweaks to the OR software itself.

      3. difference in iOS app vs. Android app.
      how to test: Since I have 2 touch devices: iphone and android tablet. I went ahead to see if they perform any differently. results were non-conclusive, so i'll rule out #3.

      @ Marko: are you using a Itach as well? if not, what device are you using? I did not program any sensor or traces. It only commands IR signals without any feedback. In fact, sensors are something I am interested in but have no idea how to integrate it into my existing equipment and openremote designer.

      1. Mar 22, 2012

        Marcus Redeker says:

        There is not pseudo-sleep in the controller. Also, if you do not use sensors, th...

        There is not pseudo-sleep in the controller.
        Also, if you do not use sensors, the sensor polling thread should not do anything.

        I would take a close look at the Itach Wifi, but that is just a guess.
        Do you have another software where you can just send commands to the Itach to test this?

        1. Mar 22, 2012

          allen says:

          i have just tested connection between the Itach and my macbook air via the itest...

          i have just tested connection between the Itach and my macbook air via the itest software. This allows me to bypass the need for openremote software by connecting directly to the device. I was able to send commands instantly and endlessly with no lag or freezing in between. The response time is equal to that of a normal remote. It also does not suffer from non-activity.

          the problem seems to be OR...

          1. Mar 22, 2012

            Marcus Redeker says:

            This might have todo with an issue we found earlier but the fix did not make it ...

            This might have todo with an issue we found earlier but the fix did not make it into the latest codebase
            Could you try and replace the file "Deployer.class" in the folder

            "Controller-2.0.0/webapps/controller/WEB-INF/classes/org/openremote/controller/service/"

            with the attached version and give it a try.

            Thanks.
            Deployer.class

            1. Mar 23, 2012

              allen says:

              Thanks Marcus. I will do this when I get home. on a road trip right now. Should ...

              Thanks Marcus. I will do this when I get home. on a road trip right now. Should be back Monday.

            2. Mar 26, 2012

              allen says:

              HI marcus.. I replaced the deployer.class file and when i reloaded my hostip:80...

              HI marcus..

              I replaced the deployer.class file and when i reloaded my hostip:8081/controller, i get a " An attempt was made to access service context before it was initialized" in red. I created a new folder as to create a new controller but still give me the same problem. is the issue from file or something else?

              i also SSH and changed the directory path in the autorun file.

              thank you.

              1. Mar 26, 2012

                Marcus Redeker says:

                Can you see anything in the log files? It sounds like an error occured during st...

                Can you see anything in the log files? It sounds like an error occured during startup.
                The file was compiled against the official 2.0 release which is available on sourceforge.

                1. Mar 27, 2012

                  allen says:

                  there is nothing in the log folder and it's subfolders. I actually went and fact...

                  there is nothing in the log folder and it's subfolders. I actually went and factory restored by NAS. I installed java all over again, installed openremote controller 2.0 and replaced the deployer.class file. I then got to the controller sync page. however, now i have a different problem. when i try to sync with online designer, the spinning wheel would start and then go away. if i tried to upload an openremote.zip, the spinning wheel is eternal.

                  1. Mar 27, 2012

                    Marcus Redeker says:

                    Ok, looks like you need the inner classes that belong to the new Deployer.class ...

                    Ok, looks like you need the inner classes that belong to the new Deployer.class also.
                    Please try again and replace all three files.
                    Sorry about that.

                    Deployer$ControllerDefinitionWatch.class
                    Deployer$BeehiveConnection.class
                    Deployer.class

                    1. Mar 27, 2012

                      allen says:

                      Hi Mark. thanks for the files. it fixed the syncing problem. I have tested with...

                      Hi Mark. thanks for the files. it fixed the syncing problem.

                      I have tested with the new class files and the problem with the delayed response still exist.

                      1. Mar 27, 2012

                        Marcus Redeker says:

                        Ok. Did you also try and turn off all logging, what Marko suggested earlier?

                        Ok.
                        Did you also try and turn off all logging, what Marko suggested earlier?

                        1. Mar 28, 2012

                          allen says:

                          oh no. not yet. i didn't know how to do that. can you please explain? do I do it...

                          oh no. not yet. i didn't know how to do that. can you please explain? do I do it from localhost:port/controller? or from within SSH?

                          1. Mar 28, 2012

                            Marcus Redeker says:

                            You have to SSH and edit file log4j.properties in webapps/controller/WEB-INF/cla...

                            You have to SSH and edit file log4j.properties in webapps/controller/WEB-INF/classes folder.
                            Change the Threshold of the various logger to "ERROR" to limit most of the logging.

                            1. Mar 28, 2012

                              allen says:

                              I have changed everything with a prefix of threshold to ERROR and there was stil...

                              I have changed everything with a prefix of threshold to ERROR and there was still a lag. I then changed them all to OFF. seems like the delay got worse.

                              @Marko: are you using a wf2IR? if so, what settings are your network security?

                              I have looked at several youtube videos of people using a wf2ir the response time is instant.

                              1. Mar 29, 2012

                                Marcus Redeker says:

                                Which protocol do you use to control the wf2ir? TCP/HTTP/UDP/Telnet ? Can you se...

                                Which protocol do you use to control the wf2ir? TCP/HTTP/UDP/Telnet ?
                                Can you send me your controller.xml ?
                                marcus (at) openremote (dot) org

                                1. Mar 29, 2012

                                  allen says:

                                  Hi Marcus, I am using TCP/IP to control the wf2ir. i did a search in the open ...

                                  Hi Marcus,

                                  I am using TCP/IP to control the wf2ir.

                                  i did a search in the open remote folder and i came across a lot of controller.xml files and 1 controller2.xml (in fixture).

                                  which did you want me to send you?

                                  the immediate folder that these files are in are controller, button, gesture, sensor, slider, switch, component, fixture, configuration, configuration2, sensorsonly, sensorsonly2, polling.

                                  i'll send you a screen shot.

                                  1. Mar 29, 2012

                                    Marcus Redeker says:

                                    Should be underneath OpenRemote-Controller-2.0.0/webapps/controller/controller.x...

                                    Should be underneath OpenRemote-Controller-2.0.0/webapps/controller/controller.xml.

                                    1. Apr 02, 2012

                                      Eric Bariaux says:

                                      Hello Allen, I did look at the controller.xml file that you sent to Marcus and ...

                                      Hello Allen,

                                      I did look at the controller.xml file that you sent to Marcus and have a few questions.

                                      I see a lot of buttons that have multiple times the same command (for instance for volume up / down).
                                      I suppose this is because you created a macro and you did assign that volume up command multiple times to it.
                                      What is your purpose there? Is it to raise/lower the volume more than with a single press?

                                      If this is the case, I believe this might be the issue because the way OR handles macros.
                                      For macros, OR will execute each command in the macro in turn and insert a delay in between each command. Also, control will not return to the console until the macro has finished execution.
                                      I'll take a closer look at the code when I get a bit of time to double-check / see how to improve that.

                                      In the meantime, can you go in the designer into the "Config for Controller" pane and check under macro. There is where the default delay is configured, which by default is 500 ms. Try reducing that to maybe 10 and see how to works out.

                                      More specifically for this case, instead of using a macro to just repeat the same volume command 10 times, you would be better off using the repeat feature of the sendccf command that the GlobalCaché supports.

                                      1. Apr 03, 2012

                                        allen says:

                                        Thanks Eric, I changed the delay from 500 to 10. then i deleted the volume macr...

                                        Thanks Eric,

                                        I changed the delay from 500 to 10. then i deleted the volume macro and added new IR command for the volume up and down but changed the repeat to 10 and 20. I will test this out in a few days. Thank you for yours and Marcus's support.

                                        @Marko: thanks for the location of the files. I will have to play around with those files in a few days.

                                        Really appreciate everyone's efforts!

                                        Allen

                              2. Mar 30, 2012

                                Marko Jamelle says:

                                Hi Allen, no, I'm only using a KNX Gateway in my setup. Regarding the logging d...

                                Hi Allen,

                                no, I'm only using a KNX Gateway in my setup. Regarding the logging disabling, I did changes not only in the config file Markus mentioned but also in other ones. Unfortunately I don't have the changes out of my head. Let me check when I'm back home and send you an update.

                                O.k. here we go.
                                I changed :
                                log4j.properties in webapps/controller/WEB-INF/classes which is for the controller itself
                                logging.properties conf/ which I guess is for the tomcat/catalina part
                                Basically I've changed all logging levels to = OFF
                                After restarting the controller you should noticed that there is no increase of log files under the log folder /log
                                For better verification you can delete all log files.

  3. Apr 03, 2012

    allen says:

    i had some time tonight to give it a test. I modified the log files Marko direc...

    i had some time tonight to give it a test.

    I modified the log files Marko directed me and changed everything (levels and threshold) to OFF. I also changed the all the maxbackupindex to 0. However, the log files are still being created after reboot though there is no content written in them.

    when I use the macro to turn on all my AV equipment, it still takes 6-8 seconds. I might need to modify my macros and streamline things to make things cleaner. if immediately after the first command after a period of no activity i give another non-macro command, it responds fast (normal). however, if i don't do anything a while, the command is delayed. I have 2 controllers and this was tested on the Marvell CPU QNAP NAS on a gigbit LAN with the modified class files and log files along with changes to the config controller in designer as directed by Eric.

    my pentium M laptop running the unaltered version of controller 2.0 on wirelessG seems to respond much faster.

    I think it might be due to the process not being fast enough to handle the communication between devices. however, the changes made in designer improved the response time noticeably under the pentium controller. I have not tested this machine much so I will have to see how it behaves over time and if this level of performance can be maintained, even though inactivity for long periods of time.

Adaptavist Theme Builder Powered by Atlassian Confluence