xAP Flash nee Joggler beta 5

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • Alanmh
    Automated Home Jr Member
    • Dec 2005
    • 12

    Strange - just checked my PM nothing there??

    ANyway if you and Brett are on it then I cant add much. I would like to get at look at the documentation though to get me up the curve

    Comment

    • Kevin
      Moderator
      • Jan 2004
      • 558

      I dont know why that PM didnt reach you

      Anyway the old documentation link is a few versions back so here are some current (preBeta5) links - an overall xAPFlash dcument and the beta 5 changes. The next beta release will have a few more XML changes I'm afraid...but I dont have that documented yet..

      xAP Flash Documentation (v5)

      beta5 notes

      K

      Comment

      • Kevin
        Moderator
        • Jan 2004
        • 558

        Originally posted by Kevin View Post
        Brett and I are on the HAH case....
        Well we know what the issue is and we're both going to post a fix... either will work but I recommend both.

        I understand that Brett has just pushed out firmware 254 :-)

        Here's a new build of iServer that will also sort it out. Just replace the existing .exe. Although it should work without I recommend stopping any xAPFlash clients first and then restarting them.

        iServer beta 12

        K

        b12 changes: xAP message traversal restricted to local subnet x.x.x.255 , it was previously 255.255.255.255

        Comment

        • BodgeIT
          Automated Home Sr Member
          • Jul 2010
          • 57

          Lost message

          Hi Kevin, I had replied but the message seems to have been lost.
          Firstly thanks for updating iServer. That's fixed the non working button issue(actually HAH 254 did the trick).
          I am still seeing my other issue which is an on/off for every single button press.
          It's weird becuase things are now working as the should...ish. I still get iserver getting it's knickers in a twist but mostly controls work.

          Are you adding <xAP><on> and <xAP><off> tags in the XML ?
          No, just using <mode>pagetoggle</mode>

          e.g.
          Pressing Radio button whicle it is "On"(i.e. button indictaes on and device is actually on), I get:
          xap-header
          {
          v=13
          hop=1
          uid=FF.0738:1009
          class=xAPBSC.event
          source=UKUSA.xAPFlash.ahscs5:Button.State.Radio
          }
          input.state
          {
          state=on
          text=hello
          displaytext=press
          }

          Followed by:
          xap-header
          {
          v=13
          hop=1
          uid=FF.0738:1009
          class=xAPBSC.event
          source=UKUSA.xAPFlash.ahscs5:Button.State.Radio
          }
          input.state
          {
          state=off
          text=hello
          displaytext=press
          }

          The above single press/double message turned the device off. When pressing again, I get another 2 messages and the device came on.

          When I saw the uid updates from HAH253 update, I deleted the known devices list in iserver just to reset, I also rebooted the joggler.

          I'm a bit flumoxed.

          Comment

          • Kevin
            Moderator
            • Jan 2004
            • 558

            Originally posted by BodgeIT View Post
            Firstly thanks for updating iServer. That's fixed the non working button issue(actually HAH 254 did the trick).
            Please do update HAH to 255 firmware as there is a long message bug in 254

            I am still seeing my other issue which is an on/off for every single button press.
            It's weird because things are now working as the should...ish. I still get iserver getting it's knickers in a twist but mostly controls work.
            ....using <mode>pagetoggle</mode>
            Gary - your're confusing two things here. A <mode>pagetoggle</mode> button is used to toggle the visibility of a page within xAPFlash - it is not used to control any xAP device and it doesn't send any control commands out on xAP at all. If you wish to on/off control a xAP device use <mode>control</mode> or <mode>lcontrol</mode>.

            Actually pagetoggle is now deprecated and you should instead use
            <mode>link</mode>
            <link>pagename</link> where pagename is the name of the page

            From beta 5 xAP Flash can also report the visibility of various internal elements - you can enable this separately for various elements (buttons pages textboxes internals) using the BSC tags... my recommendation if you have no use for this feature is to set them all false to avoid unnecessary xAP traffic and any confusion.

            <bscinternals>false</bscinternals>
            <bscbuttons>false</bscbuttons>
            <bsctextboxes>false</bsctextboxes>
            <bscpages>false</bscpages>

            From beta 6 you'll be able to set them individually for each element too , so you can just enable a particular page or button that you wish to report the visibility of. Note that the button visibility is independent of the page visibility. If a button is visible but on a page that is invisible the button will still report as visible.

            For buttons there are two messages - the visibility and the state (pressed/released) reported as Button.State.buttonName and Button.Visibile.buttonName. If a button is set up to control a xAP device eg <mode>control</mode> then it will also send a xapbsc.cmd message.

            xap-header
            {
            v=13
            hop=1
            uid=FF.0738:1009
            class=xAPBSC.event
            source=UKUSA.xAPFlash.ahscs5:Button.State.Radio
            }
            input.state
            {
            state=on
            text=hello
            displaytext=press
            }
            If you look at the two messages you posted the class is xapbsc.event (and not xapbsc.cmd) and so this is an event indicating something has changed - the source line tells you what changed and in this case you will see that the message is coming from xAPFlash and "Button.State.Radio i.e. reporting a press event of the Radio button. As you press it it will show state=on and as soon as you release it then it will send state=off. Ignore the text hello bit and displaytext will show 'press'.

            When xAP wants to control something using BSC it has to send a command to that device class=xapbsc.cmd and it also has to include a target= line in the header stating which device it is trying to control . There is no target line in a xapbsc.event or xapbsc.info message. <mode>control</mode> and <mode>lcontrol</mode> buttons send xAPBSC.cmd messages - as do the slider and dimmer controls.

            I'm a bit flumoxed.
            I doubt you are needing the new BSC element reporting features within beta 5 and so you'll find it clearer if you turn them off using the 4 BSC tags at the top of this post.

            Re the iServer 'knickers in a twist' comment - if you can provide more detail or reproducable circumstances it would be helpful. I am aware that xAPFlash clients can somewhat flood iServer with connect requests if iServer is restarted with active connections - in this case the 'xAP' button normally shows a number that counts upwards. It's always best to start iServer before you start the clients and then leave iServer running.

            K
            Last edited by Kevin; 15 November 2010, 01:14 PM.

            Comment

            • BodgeIT
              Automated Home Sr Member
              • Jul 2010
              • 57

              Sorry Kevin, I put my response togther too quickly.
              The button element I use is <mode>control</mode>.
              This is what I have for each of the RF buttons I use apart from 2 which are tied to 2 other RF devices by the HAH plugboard. For those I just use <mode>status</mode> and don't expect those to work.
              Here's an example:
              <button NAME="TV etc">
              <gridX>2</gridX>
              <gridY>0</gridY>
              <posX>-53</posX>
              <posY>+30</posY>
              <style>blue</style>
              <visible>true</visible>
              <xAP>
              <schema>xAPBSC</schema>
              <uid>FF00DBA0</uid>
              <source>dbzoo.livebox.Controller:rf.1</source>
              </xAP>
              <mode>control</mode>
              </button>
              Please do update HAH to 255 firmware as there is a long message bug in 254
              Already there ;-) was just pointing out which version fixed issue.
              I doubt you are needing the new BSC element reporting features within beta 5
              The reason I turned them on was I was controlling the screensaver and brightness of the joggler through calendar events kicking off plugboard scripts. During evening SS is on, during day is off but brightness turns down after a bit. Also looking to alter state of on/off button behaviour so that a couple of buttons are always off by default e.g. when you press them they go on moentarily(sending xap message) then plugboard turns them back off.

              Comment

              • Kevin
                Moderator
                • Jan 2004
                • 558

                OK .. so is there still an on/off issue with xAPBSC.cmd's ?

                Originally posted by BodgeIT View Post
                The reason I turned them on was I was controlling the screensaver and brightness of the joggler through calendar events kicking off plugboard scripts. During evening SS is on, during day is off but brightness turns down after a bit. Also looking to alter state of on/off button behaviour so that a couple of buttons are always off by default e.g. when you press them they go on moentarily(sending xap message) then plugboard turns them back off.
                The <bscinternals> will do for the screensaver and brightness - I'll need to check just how far I got with implementing these in terms of external control but as you're using them I guess they're working OK ? Some of the other internals , perhaps volume, may not be complete yet.

                ...
                source=UKUSA.xAPFlash.CS4:Button.Visible.Desk Lamp
                }
                output.state
                {
                state=on
                }

                The button visibility is controllable externally (it presents as an output meaning it can be controlled) but the button state can't be controlled yet as it is presenting as in input.
                ...
                source=UKUSA.xAPFlash.CS4:Button.State.Desk Lamp
                }
                input.state
                {
                state=on
                level=2/10
                }

                So you can't currently 'press' a button via xAP. If the button is linked to a xAP device however then you can change that devices state and the button will change it's displayed state.

                The level= that is sent inside the state message from a button actually contains the current state out of the 11 currently supported.

                TBH There wasn't a real purpose in allowing buttons to be pressed via xAP in beta 5 - but the next beta has a new feature that could make this useful. You are able to add several <xAP><on>/<off> elements within one button so you can create a sequence of commands that control any xAP device - rather like a macro - and being able to trigger this via xAP would be useful.

                There are one or two aspects with the BSC messaging in pre beta 5 that can cause large volumes of messages to get sent - this has been honed down a bit in beta 6.

                K

                Comment

                • toscal
                  Moderator
                  • Oct 2005
                  • 2061

                  Would this work on an Android tablet. As I can get 7" Android tablets for about 85 euros with a slightly more advanced one for 130 euros.
                  IF YOU CAN'T FIX IT WITH A HAMMER, YOU'VE GOT AN ELECTRICAL PROBLEM.
                  Renovation Spain Blog

                  Comment

                  • Kevin
                    Moderator
                    • Jan 2004
                    • 558

                    Android.. theoretically yes but I am not sure how stable or complete the Flash implementation is on Android - and on which version. Needs somebody to try it. There may be some default screen sizing issues until we make the screen size totally arbitrary.

                    K

                    Comment

                    • BodgeIT
                      Automated Home Sr Member
                      • Jul 2010
                      • 57

                      Hi Kevin,
                      I think I was misreading the signs. It looked exactly as it did before the netmask fix and that wasn't working, so I just jumped to the conclusion there was still something wrong.

                      However, trying to get to the bottom of xAPFlash just loosing sight of device status and sensor info. It mainly seems to happen over night. So most mornings I come in to a screen with no button status and no info from sensors.

                      I've emailed you recordings of xap messages from xfx. Log file from iServer and screen dump.

                      By the way is it possible to add xwd to list of vlaid file extensions? Allows for easy upload.
                      Attached Files
                      Last edited by BodgeIT; 16 November 2010, 11:57 AM.

                      Comment

                      • Kevin
                        Moderator
                        • Jan 2004
                        • 558

                        Curious...

                        I leave mine running 24/7 and I'm not seeing this issue - very occasionally I have seen a Joggler reboot, and I do manually reboot when the sound goes crackly.

                        What does iServer show in terms of connected clients and is it still actively passing information both ways between the xAP network and xAPFlash clients ? Is iServer taking significant CPU time ?

                        Is this a Joggler screen or a PC screen and do you get the same effect on both if they have both been left running overnight ? Guessing Joggler unless you're running within the emulator.

                        It would be helpful to put a xAP button on the screen which will show the connected iServer state and any unsynched xAP devices.

                        Originally posted by BodgeIT View Post
                        So most mornings I come in to a screen with no button status and no info from sensors.
                        Are you having to relaunch xAP Flash ? It's curious because the displayed data is blank i.e. the temperatures and button states - and yet at xAPFlash launch these would be populated and I don't think having populated them once there is a way that xAP Flash would blank them out (short of HAH reporting blank values) or a relaunch . You don't shut down / restart / hibernate something overnight that is used in the path between the client, iServer and HAH do you e.g. the iServer PC or router ? ... and you are using static IP's for all these things, especially the Joggler , aren't you ?

                        I'll take a look through the Viewer log file when I get a moment. The log files can be very large so I'd rather they were emailed to me than uploaded to the forum. You can always link to one within a post.

                        K
                        Last edited by Kevin; 16 November 2010, 02:07 PM.

                        Comment

                        • BodgeIT
                          Automated Home Sr Member
                          • Jul 2010
                          • 57

                          very occasionally I have seen a Joggler reboot
                          I was seeing that too although much less now for some reason.
                          What does iServer show in terms of connected clients and is it still actively passing information between the xAP network and xAPFlash clients ? Is iServer taking significant CPU time ?
                          I will provide this info tomorrow.
                          Is this a Joggler screen or a PC screen and do you get the same effect on both if they have been left running overnight ? Guessing Joggler unless you're running within the emulator.
                          Will run chrome over night on PC and provide feedback
                          It would be helpful to put a xAP button on the screen
                          Done
                          Are you having to relaunch xAP Flash
                          No, restart iServer although sometimes I have tried to restart xAPFlash but it doesn't ever get things back, only reset iServer does.
                          You don't shut down / restart / hibernate something overnight
                          Good question, but no nothing goes to sleep between Joggler and Server upstairs running iServer
                          and you are using static IP's for all these things
                          Yes

                          Comment

                          • Kevin
                            Moderator
                            • Jan 2004
                            • 558

                            Originally posted by BodgeIT View Post
                            No, restart iServer although sometimes I have tried to restart xAPFlash but it doesn't ever get things back, only reset iServer does.
                            So - just to be really clear - xAPFlash is correctly showing the status and you leave it running but in the morning the elements have all gone blank and only an iServer restart will recover it ... and the iServer PC is available 24/7 .. not hibernating..

                            K

                            Comment

                            • BodgeIT
                              Automated Home Sr Member
                              • Jul 2010
                              • 57

                              Yes. Although it's possible at some point that I did restart xapflash.
                              I will not this time and check again tomorrow.

                              Comment

                              • Kevin
                                Moderator
                                • Jan 2004
                                • 558

                                I have looked carefully through the code and I can't find any way that xAPFlash would revert an already displaying state/value back to blank unless it was restarted or HAH sent blank values. As you say the display changes whilst running overnight and as the Viewer log shows HAH is still sending correct values I'm a bit stumped. However I can clearly see that xAPFlash has disconnected from iServer at some time (the log doesnt cover this time period). It would be most useful to have a log that covered the disconnection issue ie overnight Very strange..

                                <edit> sorry started to post this before your reply above appeared - ahh - then it's possibly just a disconnect and failure to reconnect issue - your logs do show the reconnects are failing, do try and keep a Viewer capture running overnight too although you will have to fix the issue below or it will fill up with those GoogleCal/plugboard messages</edit>

                                I do note you are using a class B IP address range and so the updated 'broadcast limited' version of iServer will be using a Class C broadcast address x.x.x.255 which might be problematic. I don't know if HAH corrrectly calculates a class B broadcast of x.x.255.255 . As this seems to work for some time based on the capture I dont think it's an issue.

                                I do notice that you have some GoogleCal action setup in HAH that is repeatedly sending two xapbsc.cmd messages several times per second which seems wrong ???

                                xap-header
                                {
                                v=12
                                hop=1
                                uid=FF00DA00
                                class=xAPBSC.cmd
                                source=dbzoo.livebox.GoogleCal
                                target=UKUSA.xAPFlash.ahscs5:ScreenSaver.Hold
                                }
                                output.state.1
                                {
                                id=*
                                state=on
                                }

                                xap-header
                                {
                                v=12
                                hop=1
                                uid=FF00DA00
                                class=xAPBSC.cmd
                                source=dbzoo.livebox.GoogleCal
                                target=dbzoo.livebox.Controller:rf.2
                                }
                                output.state.1
                                {
                                id=*
                                state=off
                                }


                                ... also you have plugboard actions again repeatdely sending two xAPbsc.cmd messages again several times each second

                                xAP-header
                                {
                                v=12
                                hop=1
                                uid=FF00D800
                                class=xAPBSC.cmd
                                source=dbzoo.livebox.Plugboard
                                target=dbzoo.livebox.Controller:rf.3
                                }
                                output.state.1
                                {
                                id=*
                                state=off
                                }

                                xAP-header
                                {
                                v=12
                                hop=1
                                uid=FF00D800
                                class=xAPBSC.cmd
                                source=dbzoo.livebox.Plugboard
                                target=dbzoo.livebox.Controller:rf.3
                                }
                                output.state.1
                                {
                                id=*
                                state=off
                                }

                                ... again this seems wrong - especially as they are identical , these four actions are creating a lot of needless network activity .

                                Also - in the pre beta 5 build that you have there , within xAPBSC.cmd messages xAPFlash does not support wildcarding of either the target address or the ID= value and so that screensaver hold command will not be working. You should change the ID=* to ID=0003. In beta 6 wildcarding of the ID is supported but it is always faster if you specify the ID= as it doesn't have to search for it.

                                K
                                Last edited by Kevin; 16 November 2010, 05:23 PM. Reason: overlapping posts

                                Comment

                                Working...
                                X