Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    [As Good As Solved!] Watchguard Firebox Arm/Disarm LED

    Scheduled Pinned Locked Moved Hardware
    128 Posts 22 Posters 99.6k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • stephenw10S
      stephenw10 Netgate Administrator
      last edited by

      I added an option to read the cpu temperature sensor on the X-e box since it was trivial to do and mbmon seemed to giving some errors.

      [2.1-RC0][root@pfsense.localdomain]/conf(3): ./WGXepc
      Found Firebox XTM5
      WGXepc Version 0.9 28/6/2013 stephenw10
      WGXepc can accept two arguments:
       -f (fan) will return the current and minimum fan speed or if followed
          by a number in hex, 00-FF, will set it.
       -l (led) will set the arm/disarm led state to the second argument:
          red, green, red_flash, green_flash, red_flash_fast, green_flash_fast, off
       -b (backlight) will set the lcd backlight to the second argument:
          on or off. Do not use with LCD driver.
       -t (temperature) shows the current CPU temperature reported by the
          SuperIO chip. X-e box only.
      Not all functions are supported by all models
      
      

      Steve

      WGXepc.png
      WGXepc.c.png

      1 Reply Last reply Reply Quote 0
      • R
        rhombus
        last edited by

        @stephenw10:

        I added an option to read the cpu temperature sensor on the X-e box since it was trivial to do and mbmon seemed to giving some errors.

        [2.1-RC0][root@pfsense.localdomain]/conf(3): ./WGXepc
        Found Firebox XTM5
        WGXepc Version 0.9 28/6/2013 stephenw10
        WGXepc can accept two arguments:
         -f (fan) will return the current and minimum fan speed or if followed
            by a number in hex, 00-FF, will set it.
         -l (led) will set the arm/disarm led state to the second argument:
            red, green, red_flash, green_flash, red_flash_fast, green_flash_fast, off
         -b (backlight) will set the lcd backlight to the second argument:
            on or off. Do not use with LCD driver.
         -t (temperature) shows the current CPU temperature reported by the
            SuperIO chip. X-e box only.
        Not all functions are supported by all models
        
        

        Steve

        I used your latest Ver 0.9 and edited the /usr/local/www/includes/functions.inc.php file (find and modify these entries in the file):

        function has_temp() {

        /* no known temp monitors available at present */

        /* should only reach here if there is no hardware monitor /
        /
        return false; */
                return true;
        }

        function get_temp() {

        $temp_out = "";
        exec("/conf/WGXepc -t | /usr/bin/awk 'NR==3{print;exit}'", $dfout);
                $temp_out = trim($dfout[0]);

        return $temp_out;
        }

        Now the temp displays on the Dashboard pulling from WGXepc.

        Tested on Firebox X550e

        1 Reply Last reply Reply Quote 0
        • stephenw10S
          stephenw10 Netgate Administrator
          last edited by

          Nice.  :)
          Let me know if it seems stable. It should be identical to mbmon but like I said another user found mbmon giving bad numbers after several days. Also mbmon has 0.5°C accuracy but I didn't both reading that register so it's only 1°C accurate.  ::)

          Steve

          1 Reply Last reply Reply Quote 0
          • B
            browntown
            last edited by

            Sweet, thanks for the code, it worked like a charm, appears within 2 degrees of mbmon at any one point.  Looks like I need to throw some arctic silver on the heatsink.  This is fan at 32

            1 Reply Last reply Reply Quote 0
            • R
              rhombus
              last edited by

              @browntown:

              Sweet, thanks for the code, it worked like a charm, appears within 2 degrees of mbmon at any one point.  Looks like I need to throw some arctic silver on the heatsink.  This is fan at 32

              I had my fan set at 52 on a Pentium M 735 and at 37C. On high load, it will come up to 50. Im not worried about the $7 processor so much as having the system lock up when I am away. lol

              1 Reply Last reply Reply Quote 0
              • G
                Gabri.91
                last edited by

                Very nice, many thanks!

                1 Reply Last reply Reply Quote 0
                • B
                  browntown
                  last edited by

                  I'm building my wgxepc script for reboot.  Can I pass two parameters in one command?
                  /usr/local/bin/WGXepc -l green -f 30

                  or do I pass each argument on its own line?
                  #!/bin/sh

                  /usr/local/bin/WGXepc -l green
                  /usr/local/bin/WGXepc -f 30

                  1 Reply Last reply Reply Quote 0
                  • stephenw10S
                    stephenw10 Netgate Administrator
                    last edited by

                    Only one parameter at a time. My coding skills very limited.  ;)
                    I use the shellcmd package instead of an RC script. It is stored in configuration file so it survives a firmware update.

                    Steve

                    1 Reply Last reply Reply Quote 0
                    • R
                      rhombus
                      last edited by

                      @stephenw10:

                      Nice.  :)
                      Let me know if it seems stable. It should be identical to mbmon but like I said another user found mbmon giving bad numbers after several days. Also mbmon has 0.5°C accuracy but I didn't both reading that register so it's only 1°C accurate.  ::)

                      Steve

                      7 days of uptime and still displaying the correct temp. So far everything appears stable.

                      1 Reply Last reply Reply Quote 0
                      • ?
                        A Former User
                        last edited by

                        Hello,

                        just installed it and runs fine.

                        Does anyone need the output of

                        pciconf -r pci0:31:0 0:256
                        ```?
                        1 Reply Last reply Reply Quote 0
                        • stephenw10S
                          stephenw10 Netgate Administrator
                          last edited by

                          @pyroblast:

                          Does anyone need the output of

                          pciconf -r pci0:31:0 0:256
                          

                          Thanks for offering but the X1250e is identical to the other boxes we have tested already. So unless you have some odd variant we already have the info. Since the program recognises your box already it seems it's using the same board.  :)

                          Steve

                          1 Reply Last reply Reply Quote 0
                          • F
                            fibrewire
                            last edited by

                            sorry for the necrobump, but where did this project end up?

                            1 Reply Last reply Reply Quote 0
                            • stephenw10S
                              stephenw10 Netgate Administrator
                              last edited by

                              It ended up here: https://github.com/stephenw10/WGXepc

                              And here if you want to test it on one of the newer devices.

                              Steve

                              1 Reply Last reply Reply Quote 1
                              • H
                                Hackdaddy
                                last edited by

                                Hi,

                                Thanks @stephenw10 for your tool.

                                I packaged it in a widget, to use it with the web interface and automatically change the fan speed depending on the temperature.

                                For those interested: pfSense-Watchguard-widget

                                Best regards

                                1 Reply Last reply Reply Quote 0
                                • stephenw10S
                                  stephenw10 Netgate Administrator
                                  last edited by

                                  Ah, nice. 👍
                                  For the X-e boxes only I assume? Pretty sure I never added temperature reading to any others.
                                  Edit: Forgot the XTM8.

                                  Steve

                                  1 Reply Last reply Reply Quote 0
                                  • H
                                    Hackdaddy
                                    last edited by

                                    Yes, I only have a firebox X750e, so I only make this widget for my usage :)
                                    But don't hesitate to make a pull request if you want add more compatibility

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post
                                    Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.