6 Replies Latest reply on Sep 20, 2016 2:21 PM by Intel Corporation

    Using Edison internal pull up/down resistors

    jayls

      Hi,

      I just need to clarify a few points about using these resistors.

       

      I am using Sparkfun blocks, and taking the picture below from  relevant Sparkfun tutorial.

       

      SparkFun Inventor's Kit for Edison Experiment Guide - learn.sparkfun.com

       

      Here is what i understand to be a standard pull up circuit (graphic lifted from the above tutorial):

       

      Am I right in assuming that an external  R1 is not necessary, because i can use the Edison's internal resistor?

      And further, that this internal resistor will be active if the following are true (say for gpio49):

       

      in directory /sys/kernel/debug/gpio_debug/gpio49

       

      file current_pullstrength contains one of the values 2k, 20k, 50k or 910ohms

      file current_pullmode contains the value pullup

       

      The sparkfun tutorial suggest a value of 1k for the external resistor, so the most appropriate equivalent would be the 910ohm setting?

       

      I intend to connect a number of buttons to a number of gpio (possibly as many as 10), will this 920ohm value remain appropriate in those circumstances?

       

      Also, if I am using an external resistor, as per the above diagram then the value of current_pullmode should be set to nopull?

       

      Also, I note that these values are set in a gpio_debug directory. Do they need to be set anywhere else in, say, a production environment?

       

      Finall, If I write values to these files can they be overridden from elsewhere?

       

      I note from another thread that there is a current_debounce file, but that no functionality currently exists for this. Is this likely to change?

       

      Thank you