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

    Netgate SG-3100 LEDs

    Scheduled Pinned Locked Moved Official Netgate® Hardware
    54 Posts 20 Posters 33.7k 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.
    • ?
      A Former User
      last edited by

      What do the LEDs mean by default and how do you configure them? As far as I can see there is NO documentation on this at Netgate beyond the mention that they are configurable. Sure, I bet you can rewrite it in the firmware and MAKE the LEDs do what I want but that's way more effort than it needs to be.

      1 Reply Last reply Reply Quote 0
      • ?
        Guest
        last edited by

        What do you expect from that LEDs? In normal this LEDs are blinking green at start up and then green
        for a good connection and red for a failure or disconnection, that's it in short. Or something in that matter
        will be also all other LEDs blinking such as the ALIX or APU boards from PC Engines will do it.

        1 Reply Last reply Reply Quote 0
        • C
          cparkervt
          last edited by

          I have the same question. My SG-3100 only has a throbbing / breathing blue LED under the black diamond at idle. Netgate has zero documentation on them, and there doesn't appear to be any package in the repo for configuring them.

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

            Right now they illuminate in sequence during the different stages of boot process, circle, square, diamond, with a fast blue flash.
            When booting is complete the diamond flashes blue with a slow flash.
            If the system sees an update is available the square flashes orange with a slow flash.

            As you say they can be configured to flash any colour at any speed. Suggestions always welcome.  :)

            They can be configured from user space so via a shellcmd for example. There are two places to do that.

            Via the gpioctl command:

            [2.4.2-DEVELOPMENT][admin@3100.stevew.lan]/root: gpioctl 6 duty 100
            

            That sets led 6 to maximum brightness. 6 is the red led in the circle. Each LED is tri-colour device with 3 LEDs in it for red green and blue:

            | Front Indicator | Red | Green | Blue |
            | Diamond | 0 | 1 | 2 |
            | Square | 3 | 4 | 5 |
            | Circle | 6 | 7 | 8 |

            The flashing frequency and duration is controlled by a set of sysctls:

            [2.4.2-DEVELOPMENT][admin@3100.stevew.lan]/root: sysctl dev.gpio.0
            dev.gpio.0.led.2.T2: 0
            dev.gpio.0.led.2.DT: 0
            dev.gpio.0.led.2.T1-T3: 520
            dev.gpio.0.led.2.pwm: 1
            dev.gpio.0.led.1.T2: 0
            dev.gpio.0.led.1.DT: 0
            dev.gpio.0.led.1.T1-T3: 1040
            dev.gpio.0.led.1.pwm: 0
            dev.gpio.0.led.0.T2: 520
            dev.gpio.0.led.0.DT: 0
            dev.gpio.0.led.0.T1-T3: 1040
            dev.gpio.0.led.0.pwm: 0
            dev.gpio.0.pin.8.T4: 0
            dev.gpio.0.pin.8.T0: 0
            dev.gpio.0.pin.7.T4: 0
            dev.gpio.0.pin.7.T0: 0
            dev.gpio.0.pin.6.T4: 0
            dev.gpio.0.pin.6.T0: 0
            dev.gpio.0.pin.5.T4: 0
            dev.gpio.0.pin.5.T0: 0
            dev.gpio.0.pin.4.T4: 3640
            dev.gpio.0.pin.4.T0: 0
            dev.gpio.0.pin.3.T4: 3640
            dev.gpio.0.pin.3.T0: 0
            dev.gpio.0.pin.2.T4: 3640
            dev.gpio.0.pin.2.T0: 0
            dev.gpio.0.pin.1.T4: 0
            dev.gpio.0.pin.1.T0: 0
            dev.gpio.0.pin.0.T4: 0
            dev.gpio.0.pin.0.T0: 0
            dev.gpio.0.%parent: iicbus0
            dev.gpio.0.%pnpinfo: name=is31fl3199 compat=issi,is31fl3199
            dev.gpio.0.%location: addr=0xce
            dev.gpio.0.%driver: gpio
            dev.gpio.0.%desc: ISSI IS31FL3199 9 channel light effect LED driver
            
            

            The exact settings of which I have not had time to investigate yet.  ;)
            But for example you can switch led 1 (square) to pwm mode where it is not controlled by the led controller directly but stays on permanently at whatever settings you have set using gpioctl:

            [2.4.2-DEVELOPMENT][admin@3100.stevew.lan]/root: sysctl dev.gpio.0.led.1.pwm=1
            dev.gpio.0.led.1.pwm: 0 -> 1
            
            

            More information on those settings can be found in the datasheet: http://www.issi.com/WW/pdf/IS31FL3199.pdf

            We hope to have something more comprehensible than that documented soon though.

            Steve

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

              @stephenw10:

              Right now they illuminate in sequence during the different stages of boot process, circle, square, diamond, with a fast blue flash.
              When booting is complete the diamond flashes blue with a slow flash.
              If the system sees an update is available the square flashes orange with a slow flash.

              As you say they can be configured to flash any colour at any speed. Suggestions always welcome.  :)

              They can be configured from user space so via a shellcmd for example. There are two places to do that.

              Via the gpioctl command:

              [2.4.2-DEVELOPMENT][admin@3100.stevew.lan]/root: gpioctl 6 duty 100
              

              That sets led 6 to maximum brightness. 6 is the red led in the circle. Each LED is tri-colour device with 3 LEDs in it for red green and blue:

              | Front Indicator | Red | Green | Blue |
              | Diamond | 0 | 1 | 2 |
              | Square | 3 | 4 | 5 |
              | Circle | 6 | 7 | 8 |

              The flashing frequency and duration is controlled by a set of sysctls:

              [2.4.2-DEVELOPMENT][admin@3100.stevew.lan]/root: sysctl dev.gpio.0
              dev.gpio.0.led.2.T2: 0
              dev.gpio.0.led.2.DT: 0
              dev.gpio.0.led.2.T1-T3: 520
              dev.gpio.0.led.2.pwm: 1
              dev.gpio.0.led.1.T2: 0
              dev.gpio.0.led.1.DT: 0
              dev.gpio.0.led.1.T1-T3: 1040
              dev.gpio.0.led.1.pwm: 0
              dev.gpio.0.led.0.T2: 520
              dev.gpio.0.led.0.DT: 0
              dev.gpio.0.led.0.T1-T3: 1040
              dev.gpio.0.led.0.pwm: 0
              dev.gpio.0.pin.8.T4: 0
              dev.gpio.0.pin.8.T0: 0
              dev.gpio.0.pin.7.T4: 0
              dev.gpio.0.pin.7.T0: 0
              dev.gpio.0.pin.6.T4: 0
              dev.gpio.0.pin.6.T0: 0
              dev.gpio.0.pin.5.T4: 0
              dev.gpio.0.pin.5.T0: 0
              dev.gpio.0.pin.4.T4: 3640
              dev.gpio.0.pin.4.T0: 0
              dev.gpio.0.pin.3.T4: 3640
              dev.gpio.0.pin.3.T0: 0
              dev.gpio.0.pin.2.T4: 3640
              dev.gpio.0.pin.2.T0: 0
              dev.gpio.0.pin.1.T4: 0
              dev.gpio.0.pin.1.T0: 0
              dev.gpio.0.pin.0.T4: 0
              dev.gpio.0.pin.0.T0: 0
              dev.gpio.0.%parent: iicbus0
              dev.gpio.0.%pnpinfo: name=is31fl3199 compat=issi,is31fl3199
              dev.gpio.0.%location: addr=0xce
              dev.gpio.0.%driver: gpio
              dev.gpio.0.%desc: ISSI IS31FL3199 9 channel light effect LED driver
              
              

              The exact settings of which I have not had time to investigate yet.  ;)
              But for example you can switch led 1 (square) to pwm mode where it is not controlled by the led controller directly but stays on permanently at whatever settings you have set using gpioctl:

              [2.4.2-DEVELOPMENT][admin@3100.stevew.lan]/root: sysctl dev.gpio.0.led.1.pwm=1
              dev.gpio.0.led.1.pwm: 0 -> 1
              
              

              More information on those settings can be found in the datasheet: http://www.issi.com/WW/pdf/IS31FL3199.pdf

              We hope to have something more comprehensible than that documented soon though.

              Steve

              Very cool, my friend. Thanks for the info.

              1 Reply Last reply Reply Quote 0
              • D
                danijam
                last edited by

                Thanks for posting that useful info. I would definately back suggestions to improve the documentation on the SG-3100 with respect to the LED lights meaning and configuration.

                In addition I suspect many deployments of this device could be in locations where having a very bright flashing light would be unwanted, such as a living room/lounge. Having an easy way to A) dim them AND B) change them to static would be valuable.

                Thanks

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

                  Indeed I have at times been reduced to covering it with an old sock but I like your plan better!  ;D

                  I'll pass that to our developers. Any other suggestions welcome!

                  Steve

                  lohphatL 1 Reply Last reply Reply Quote 0
                  • lohphatL
                    lohphat @stephenw10
                    last edited by

                    @stephenw10 Having a UI page to alter/disable the LEDs (e.g. dark for normal operation, alert for update/error notifications) would be better than a sock.

                    I can signal the Mars rover with the SG-3100, I think I may need sunscreen.

                    SG-3100 24.11-RELEASE (arm) | Avahi (2.2_6) | ntopng (5.6.0_1) | openvpn-client-export (1.9.5) | pfBlockerNG-devel (3.2.1_20) | System_Patches (2.2.20_1)

                    1 Reply Last reply Reply Quote 0
                    • wgstarksW
                      wgstarks @stephenw10
                      last edited by wgstarks

                      @stephenw10
                      I've been trying to get this to work, but I must be missing something.

                      Used Command Prompt in the GUI.

                      gpioctl 2 duty 000
                      

                      Set the blue flashing diamond led to zero brightness, which worked.

                      gpioctl 1 duty 050
                      

                      Set the green diamond led to 50%, still flashing though.

                      Ran the command posted to switch led 1 to pwm-

                      sysctl dev.gpio.0.led.1.pwm=1dev.gpio.0.led.1.pwm: 0 -> 1
                      

                      This isn't working though. LED 1 continues to flash. What did I get wrong here?

                      Box: SG-4200

                      1 Reply Last reply Reply Quote 0
                      • wgstarksW
                        wgstarks
                        last edited by

                        Re: Netgate SG-3100 LEDs

                        ThinkI found one mistake. Ran this command instead-

                        sysctl dev.gpio.0.led.1.pwm=1
                        

                        Still didn't work though.

                        Here is the output from sysctl dev.gpio.0

                        dev.gpio.0.led.2.T2: 0
                        dev.gpio.0.led.2.DT: 0
                        dev.gpio.0.led.2.T1-T3: 520
                        dev.gpio.0.led.2.pwm: 0
                        dev.gpio.0.led.1.T2: 0
                        dev.gpio.0.led.1.DT: 0
                        dev.gpio.0.led.1.T1-T3: 520
                        dev.gpio.0.led.1.pwm: 1
                        dev.gpio.0.led.0.T2: 520
                        dev.gpio.0.led.0.DT: 0
                        dev.gpio.0.led.0.T1-T3: 1040
                        dev.gpio.0.led.0.pwm: 0
                        dev.gpio.0.pin.8.T4: 0
                        dev.gpio.0.pin.8.T0: 0
                        dev.gpio.0.pin.7.T4: 0
                        dev.gpio.0.pin.7.T0: 0
                        dev.gpio.0.pin.6.T4: 0
                        dev.gpio.0.pin.6.T0: 0
                        dev.gpio.0.pin.5.T4: 0
                        dev.gpio.0.pin.5.T0: 0
                        dev.gpio.0.pin.4.T4: 0
                        dev.gpio.0.pin.4.T0: 0
                        dev.gpio.0.pin.3.T4: 0
                        dev.gpio.0.pin.3.T0: 0
                        dev.gpio.0.pin.2.T4: 3640
                        dev.gpio.0.pin.2.T0: 0
                        dev.gpio.0.pin.1.T4: 0
                        dev.gpio.0.pin.1.T0: 0
                        dev.gpio.0.pin.0.T4: 0
                        dev.gpio.0.pin.0.T0: 0
                        dev.gpio.0.%parent: iicbus0
                        dev.gpio.0.%pnpinfo: name=is31fl3199 compat=issi,is31fl3199
                        dev.gpio.0.%location: addr=0xce
                        dev.gpio.0.%driver: gpio
                        dev.gpio.0.%desc: ISSI IS31FL3199 9 channel light effect LED driver
                        

                        Box: SG-4200

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

                          This thread on reddit has some useful information on the topic: https://www.reddit.com/r/PFSENSE/comments/8v1owa/need_help_configuring_internal_switch_vlan_and/

                          1 Reply Last reply Reply Quote 0
                          • M
                            msf2000
                            last edited by

                            I notice that every once in a while (not sure the cause), the middle LED will go off (dark) on its own....

                            Is only the right-most LED being used by the pfSense hardware/software? Or which LEDs are OK for me to write a custom PHP script against?

                            wgstarksW 1 Reply Last reply Reply Quote 0
                            • wgstarksW
                              wgstarks @msf2000
                              last edited by wgstarks

                              @msf2000
                              All the LED’s will flash in sequence during boot. After the boot process is complete the right LED will pulse blue. If an update is available to the pfSense software the center LED will light up orange.
                              https://forum.netgate.com/topic/122407/netgate-sg-3100-leds/4

                              If you do write a script, perhaps you would consider sharing it?

                              Box: SG-4200

                              M 2 Replies Last reply Reply Quote 0
                              • M
                                msf2000 @wgstarks
                                last edited by

                                @wgstarks

                                Sure. No promises that it actually works though. :)

                                1 Reply Last reply Reply Quote 0
                                • lohphatL
                                  lohphat
                                  last edited by lohphat

                                  Because my SG-3100 is out in the open the flashing blue LED is distracting, so I simply entered a cron entry to turn the LED off after 20 minutes post-startup.

                                  */20 	* 	* 	* 	* 	root 	/usr/sbin/gpioctl 2 duty 0
                                  

                                  SG-3100 24.11-RELEASE (arm) | Avahi (2.2_6) | ntopng (5.6.0_1) | openvpn-client-export (1.9.5) | pfBlockerNG-devel (3.2.1_20) | System_Patches (2.2.20_1)

                                  1 Reply Last reply Reply Quote 0
                                  • T
                                    tjsober
                                    last edited by tjsober

                                    I just set up my new SG-3100 and all seems to be working fine. The right side diamond LED slowly flashes. However when I go to Diagnostics - Halt System and the system shuts down, I lose my connection as expected but the LED continues to slow-blink. I was expecting it to shut off. Is this normal?

                                    jimpJ 1 Reply Last reply Reply Quote 0
                                    • jimpJ
                                      jimp Rebel Alliance Developer Netgate @tjsober
                                      last edited by

                                      @tjsober said in Netgate SG-3100 LEDs:

                                      I just set up my new SG-3100 and all seems to be working fine. The right side diamond LED slowly flashes. However when I go to Diagnostics - Halt System and the system shuts down, I lose my connection as expected but the LED continues to slow-blink. I was expecting it to shut off. Is this normal?

                                      There is an issue we're addressing on 2.4.4 where the OS is not completely halting on shutdown that may be related. The fix is partially in snapshots now but should be completely done shortly.

                                      Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

                                      Need help fast? Netgate Global Support!

                                      Do not Chat/PM for help!

                                      M 1 Reply Last reply Reply Quote 0
                                      • M
                                        msf2000 @jimp
                                        last edited by

                                        I observe the same behavior of the last blue LED.... system shutdown does not stop the LED slow flashing. As a workround, i use ssh to shutdown if needed, which allows me to see when the OS is actually halted.

                                        I agree with @tjsober that it would be helpful if the last blue LED went dark once the system was properly halted. Perhaps this is something the watchdog timer can do?

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          msf2000 @wgstarks
                                          last edited by

                                          @wgstarks

                                          Got a working tcsh shell script. It updates the left LED to green, amber, red, or blue, depending on the gateway status of the WAN port. Should be easy to customize.

                                          #!/bin/tcsh
                                          #
                                          # This script updates the SG-3100 device's first LED with gateway status
                                          #
                                          #   php /usr/local/sbin/pfSsh.php playback gatewaystatus
                                          #
                                          set gw = `/usr/local/bin/php /usr/local/sbin/pfSsh.php playback gatewaystatus | grep WAN `
                                          set gwping = `echo $gw | awk '{ ORS="  "; print $6 }' `
                                          set gwstatus = `echo $gw | awk '{ ORS="  "; print $7 }' `
                                          
                                          # based on gwstatus, set color of first LED
                                          # led a  -  led b  -  led c
                                          # 6 7 8  -  3 4 5  -  0 1 2 
                                          
                                          switch ($gwstatus)
                                          case "none":
                                          case "Online": 
                                              /usr/sbin/gpioctl 6 duty 0
                                              /usr/sbin/gpioctl 7 duty 128
                                              /usr/sbin/gpioctl 8 duty 0
                                              breaksw
                                          case "down": 
                                          case "Offline":
                                              /usr/sbin/gpioctl 6 duty 128
                                              /usr/sbin/gpioctl 7 duty 0
                                              /usr/sbin/gpioctl 8 duty 0
                                              breaksw
                                          case "highloss":
                                          case "loss": 
                                          case "highdelay":
                                          case "delay":
                                          case "Warning": 
                                              /usr/sbin/gpioctl 6 duty 128
                                              /usr/sbin/gpioctl 7 duty 32
                                              /usr/sbin/gpioctl 8 duty 0
                                              breaksw
                                          default:
                                              /usr/sbin/gpioctl 6 duty 0
                                              /usr/sbin/gpioctl 7 duty 0
                                              /usr/sbin/gpioctl 8 duty 128
                                          endsw
                                          
                                          B 1 Reply Last reply Reply Quote 2
                                          • wgstarksW
                                            wgstarks
                                            last edited by

                                            @msf2000 said in Netgate SG-3100 LEDs:

                                            @wgstarks
                                            Got a working tcsh shell script.

                                            How/where should I install this? Needs to run at boot I'm guessing?

                                            Box: SG-4200

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