Answers.Body: <p>That is just the default state of the light when <code>pybricks-micropython</code> starts.</p>
  <p>You can get help with Pybricks programming at <a href="https://github.com/pybricks/support" rel="nofollow noreferrer">https://github.com/pybricks/support</a>.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-11-27T23:34:57.147Z
Answers.Text: Oh. For some reason I had never noticed that before. Thanks.
Answers.UserDisplayName: technicguy1
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-11-23T16:27:37.117Z
Answers.LastActivityDate: 2020-11-23T16:27:37.117Z
Answers.UserDisplayName: David Lechner
Body: <p>I am using EV3 micropython (ev3dev?). When I upload the below program to my EV3, I see on the screen the usual play button image which looks approximately like the below ASCII art:</p>
  <pre><code>              _______
              /         \
             /    |\     \
            |     | \     |
            |     |  )    |
             \    | /    /
              \   |/    /
               ---------
  </code></pre>
  <p>However, the EV3 status light pulses. By &quot;pulsing&quot; I don't mean the light flashes on, off, on but instead that it gradually dims then brightens. I don't know what that indicates, but my program (intended to smoothly and gradually accelerate a motor by remote control) does not work.
  My program:</p>
  <pre><code>#!/usr/bin/env pybricks-micropython 
  from pybricks.hubs import EV3Brick
  from pybricks.ev3devices import (Motor, TouchSensor, ColorSensor,
                                   InfraredSensor, UltrasonicSensor, GyroSensor)
  from pybricks.parameters import Port, Stop, Direction, Button, Color
  from pybricks.tools import wait, StopWatch, DataLog
  from pybricks.robotics import DriveBase
  from pybricks.media.ev3dev import SoundFile, ImageFile
  
  
  # This program requires LEGO EV3 MicroPython v2.0 or higher.
  # Click &quot;Open user guide&quot; on the EV3 extension tab for more information.
  
  
  # Create your objects here.
  ev3 = EV3Brick()
  ir = InfraredSensor(Port.S1)
  pitchlm = Motor(Port.D)
  yawmm = Motor(Port.B)
  rollmm = Motor(Port.A)
  
  pitchspeed = 0
  rvz = 0
  
  def remote_motor_gradual(posbutton, negbutton, increment, retvarname):
      ''' Gradually increases/decreases return value based on remote button;
      if positive value is being returned and current input is negative,
      value decreases 2x faster than if no buttons were being pressed.
      Parameters: posbutton, button to make return value go up;
      negbutton, button to make return value go down;
      increment, amount  of increment when NO button is pressed;
      retvarname, name of final-result variable (use a different one for each use,
      e.g. xretval).
      Before using retvarname, put somewhere before this def &quot;nameyoulluse = X where X
      is the number you want the return value to be.
      '''
      if posbutton in ir.buttons(1):
          retvarname = retvarname + increment * 2
      elif negbutton in ir.buttons(1):
          retvarname = retvarname - increment * 2
      elif retvarname &gt; 0: # if it is greater than 0
          retvarname = retvarname - increment
      elif retvarname &lt; 0: # if it is less than 0
          retvarname = retvarname + increment
      return retvarname
  while True:
      rollmm.run(remote_motor_gradual(Button.RIGHT_UP, Button.RIGHT_DOWN, .05, rvz))
  </code></pre>
  
Tags: <ev3><ev3dev><python><micropython><pybricks>
Title: Why is my EV3 status light pulsing? (ev3dev)
UserDisplayName: technicguy1
ThreadText: # Why is my EV3 status light pulsing? (ev3dev)
  
  (Asked by: username_0 on 2020-11-23)
  
  I am using EV3 micropython (ev3dev?). When I upload the below program to my EV3, I see on the screen the usual play button image which looks approximately like the below ASCII art:
  
  ```
                _______
              /         \
             /    |\     \
            |     | \     |
            |     |  )    |
             \    | /    /
              \   |/    /
               ---------
  
  ```
  
  However, the EV3 status light pulses. By "pulsing" I don't mean the light flashes on, off, on but instead that it gradually dims then brightens. I don't know what that indicates, but my program (intended to smoothly and gradually accelerate a motor by remote control) does not work.
  My program:
  
  ```
  #!/usr/bin/env pybricks-micropython 
  from pybricks.hubs import EV3Brick
  from pybricks.ev3devices import (Motor, TouchSensor, ColorSensor,
                                   InfraredSensor, UltrasonicSensor, GyroSensor)
  from pybricks.parameters import Port, Stop, Direction, Button, Color
  from pybricks.tools import wait, StopWatch, DataLog
  from pybricks.robotics import DriveBase
  from pybricks.media.ev3dev import SoundFile, ImageFile
  
  # This program requires LEGO EV3 MicroPython v2.0 or higher.
  # Click "Open user guide" on the EV3 extension tab for more information.
  
  # Create your objects here.
  ev3 = EV3Brick()
  ir = InfraredSensor(Port.S1)
  pitchlm = Motor(Port.D)
  yawmm = Motor(Port.B)
  rollmm = Motor(Port.A)
  
  pitchspeed = 0
  rvz = 0
  
  def remote_motor_gradual(posbutton, negbutton, increment, retvarname):
      ''' Gradually increases/decreases return value based on remote button;
      if positive value is being returned and current input is negative,
      value decreases 2x faster than if no buttons were being pressed.
      Parameters: posbutton, button to make return value go up;
      negbutton, button to make return value go down;
      increment, amount  of increment when NO button is pressed;
      retvarname, name of final-result variable (use a different one for each use,
      e.g. xretval).
      Before using retvarname, put somewhere before this def "nameyoulluse = X where X
      is the number you want the return value to be.
      '''
      if posbutton in ir.buttons(1):
          retvarname = retvarname + increment * 2
      elif negbutton in ir.buttons(1):
          retvarname = retvarname - increment * 2
      elif retvarname > 0: # if it is greater than 0
          retvarname = retvarname - increment
      elif retvarname < 0: # if it is less than 0
          retvarname = retvarname + increment
      return retvarname
  while True:
      rollmm.run(remote_motor_gradual(Button.RIGHT_UP, Button.RIGHT_DOWN, .05, rvz))
  
  ```
  
  **Tags:** ev3, ev3dev, python, micropython, pybricks
  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2020-11-23. Score: 1 | Accepted answer
  
  That is just the default state of the light when `pybricks-micropython` starts.
  
  You can get help with Pybricks programming at <https://github.com/pybricks/support>.
  
  > **Comments:**
  > **username_0**: Oh. For some reason I had never noticed that before. Thanks.  
  
  ---
  
  