Beispiel #1
0
def t1():

    print("Mode/PUD/read/write tests.")

    pigpio.set_mode(GPIO, pigpio.INPUT)
    v = pigpio.get_mode(GPIO)
    CHECK(1, 1, v, 0, 0, "set mode, get mode")

    pigpio.set_pull_up_down(GPIO, pigpio.PUD_UP)
    v = pigpio.read(GPIO)
    CHECK(1, 2, v, 1, 0, "set pull up down, read")

    pigpio.set_pull_up_down(GPIO, pigpio.PUD_DOWN)
    v = pigpio.read(GPIO)
    CHECK(1, 3, v, 0, 0, "set pull up down, read")

    pigpio.write(GPIO, pigpio.LOW)
    v = pigpio.get_mode(GPIO)
    CHECK(1, 4, v, 1, 0, "write, get mode")

    v = pigpio.read(GPIO)
    CHECK(1, 5, v, 0, 0, "read")

    pigpio.write(GPIO, pigpio.HIGH)
    v = pigpio.read(GPIO)
    CHECK(1, 6, v, 1, 0, "write, read")
    def set_motor_direction_pins(self):
        if ( self.current_pulse_width >= 0):
            pigpio.write(self.gpio_direction_pin, 0)
        else:
            pigpio.write(self.gpio_direction_pin, 1)

        self.logger.info("Direction pin set to %s" % pigpio.read(self.gpio_direction_pin))
Beispiel #3
0
def t1():

   print("Mode/PUD/read/write tests.")

   pigpio.set_mode(GPIO, pigpio.INPUT)
   v = pigpio.get_mode(GPIO)
   CHECK(1, 1, v, 0, 0, "set mode, get mode")

   pigpio.set_pull_up_down(GPIO, pigpio.PUD_UP)
   v = pigpio.read(GPIO)
   CHECK(1, 2, v, 1, 0, "set pull up down, read")

   pigpio.set_pull_up_down(GPIO, pigpio.PUD_DOWN)
   v = pigpio.read(GPIO)
   CHECK(1, 3, v, 0, 0, "set pull up down, read")

   pigpio.write(GPIO, pigpio.LOW)
   v = pigpio.get_mode(GPIO)
   CHECK(1, 4, v, 1, 0, "write, get mode")

   v = pigpio.read(GPIO)
   CHECK(1, 5, v, 0, 0, "read")

   pigpio.write(GPIO, pigpio.HIGH)
   v = pigpio.read(GPIO)
   CHECK(1, 6, v, 1, 0, "write, read")
Beispiel #4
0
 def start(self):
     pigpio.set_mode(self.GPIO_TRIGGER, pigpio.OUTPUT)
     pigpio.set_mode(self.GPIO_ECHO, pigpio.INPUT)
     pigpio.write(self.GPIO_TRIGGER, 0)
     self.echo_cb = pigpio.callback(
         self.GPIO_ECHO, pigpio.EITHER_EDGE, self.on_echo)
     pigpio.set_watchdog(self.GPIO_ECHO, 100)
    def set_motor_direction_pins(self):
        if (self.current_pulse_width >= 0):
            pigpio.write(self.gpio_direction_pin, 0)
        else:
            pigpio.write(self.gpio_direction_pin, 1)

        self.logger.info("Direction pin set to %s" %
                         pigpio.read(self.gpio_direction_pin))
Beispiel #6
0
def t9():
   print("Script store/run/status/stop/delete tests.")

   pigpio.write(GPIO, 0) # need known state

   # 100 loops per second
   # p0 number of loops
   # p1 GPIO
   script="""
   ldap 0
   ldva 0
   label 0
   w p1 1
   milli 5
   w p1 0
   milli 5
   dcrv 0
   ldav 0
   ldpa 9
   jp 0"""

   t9cb = pigpio.callback(GPIO)

   s = pigpio.store_script(script)
   oc = t9cb.tally()
   pigpio.run_script(s, [99, GPIO])
   time.sleep(2)
   c = t9cb.tally() - oc
   CHECK(9, 1, c, 100, 0, "store/run script")

   oc = t9cb.tally()
   pigpio.run_script(s, [200, GPIO])
   while True:
      e, p = pigpio.script_status(s)
      if e != pigpio.PI_SCRIPT_RUNNING:
         break
      time.sleep(0.5)
   c = t9cb.tally() - oc
   time.sleep(0.1)
   CHECK(9, 2, c, 201, 0, "run script/script status")

   oc = t9cb.tally()
   pigpio.run_script(s, [2000, GPIO])
   while True:
      e, p = pigpio.script_status(s)
      if e != pigpio.PI_SCRIPT_RUNNING:
         break
      if p[9] < 1900:
         pigpio.stop_script(s)
      time.sleep(0.1)
   c = t9cb.tally() - oc
   time.sleep(0.1)
   CHECK(9, 3, c, 110, 10, "run/stop script/script status")

   e = pigpio.delete_script(s)
   CHECK(9, 4, e, 0, 0, "delete script")
Beispiel #7
0
def t9():
    print("Script store/run/status/stop/delete tests.")

    pigpio.write(GPIO, 0)  # need known state

    # 100 loops per second
    # p0 number of loops
    # p1 GPIO
    script = """
   lda p0
   sta v0
   tag 0
   w p1 1
   mils 5
   w p1 0
   mils 5
   dcr v0
   lda v0
   sta p9
   jp 0"""

    t9cb = pigpio.callback(GPIO)

    s = pigpio.store_script(script)
    oc = t9cb.tally()
    pigpio.run_script(s, [99, GPIO])
    time.sleep(2)
    c = t9cb.tally() - oc
    CHECK(9, 1, c, 100, 0, "store/run script")

    oc = t9cb.tally()
    pigpio.run_script(s, [200, GPIO])
    while True:
        e, p = pigpio.script_status(s)
        if e != pigpio.PI_SCRIPT_RUNNING:
            break
        time.sleep(0.5)
    c = t9cb.tally() - oc
    time.sleep(0.1)
    CHECK(9, 2, c, 201, 0, "run script/script status")

    oc = t9cb.tally()
    pigpio.run_script(s, [2000, GPIO])
    while True:
        e, p = pigpio.script_status(s)
        if e != pigpio.PI_SCRIPT_RUNNING:
            break
        if p[9] < 1900:
            pigpio.stop_script(s)
        time.sleep(0.1)
    c = t9cb.tally() - oc
    time.sleep(0.1)
    CHECK(9, 3, c, 110, 10, "run/stop script/script status")

    e = pigpio.delete_script(s)
    CHECK(9, 4, e, 0, 0, "delete script")
Beispiel #8
0
 def trigger(self):
    """Trigger a new relative humidity and temperature reading."""
    self.bit = -3 # header bits
    self.hH = 0
    self.hL = 0
    self.tH = 0
    self.tL = 0
    self.CS = 0
    self.accumulating = True
    pigpio.write(self.gpio, 0)
    time.sleep(0.0001)
    pigpio.set_mode(self.gpio, pigpio.INPUT)
    pigpio.set_watchdog(self.gpio, 50)
def check_pixel(x, y):
	print 'checking pixel state for ' + str(x) + ', ' + str('y')
	# TODO: maybe take a few readings, average them out, round up/down to get state?
	pigpio.set_mode(config['pins']['actuator_power'], pigpio.OUTPUT)
	pigpio.set_mode(config['pins']['actuator_sensor'], pigpio.INPUT)

	# Read value
	light_sensor = pigpio.read(config['pins']['actuator_sensor'])

	print 'light sensor: ' + str(light_sensor)

	pigpio.write(config['pins']['actuator_power'], pigpio.LOW)

	return light_sensor
def change_pixel(state):
	print 'turning pixel to state ' + str(state)
	pigpio.set_mode(config['pins']['actuator_power'], pigpio.OUTPUT)
	pigpio.set_mode(config['pins']['actuator_sensor'], pigpio.INPUT)

	pigpio.write(config['pins']['actuator_power'], pigpio.HIGH)

	turning = 1
	while turning > 0:
		turning += 1
		light_sensor = pigpio.read(config['pins']['actuator_sensor'])
		print 'light sensor: ' + str(light_sensor)
		time.sleep(0.2)
		if turning > 10:
			turning = 0

	pigpio.write(config['pins']['actuator_power'], pigpio.LOW)
	print 'done turning'

	return light_sensor
Beispiel #11
0
def t8():
   print("Bank read/write tests.")

   pigpio.write(GPIO, 0)
   v = pigpio.read_bank_1() & (1<<GPIO)
   CHECK(8, 1, v, 0, 0, "read bank 1")

   pigpio.write(GPIO, 1)
   v = pigpio.read_bank_1() & (1<<GPIO)
   CHECK(8, 2, v, (1<<GPIO), 0, "read bank 1")

   pigpio.clear_bank_1(1<<GPIO)
   v = pigpio.read(GPIO)
   CHECK(8, 3, v, 0, 0, "clear bank 1")

   pigpio.set_bank_1(1<<GPIO)
   v = pigpio.read(GPIO)
   CHECK(8, 4, v, 1, 0, "set bank 1")

   t = 0
   v = (1<<16)
   for i in range(100):
      if pigpio.read_bank_2() & v:
         t += 1
   CHECK(8, 5, t, 60, 75, "read bank 2")

   v = pigpio.clear_bank_2(0)
   CHECK(8, 6, v, 0, 0, "clear bank 2")

   pigpio.exceptions = False
   v = pigpio.clear_bank_2(0xffffff)
   pigpio.exceptions = True
   CHECK(8, 7, v, pigpio.PI_SOME_PERMITTED, 0, "clear bank 2")

   v = pigpio.set_bank_2(0)
   CHECK(8, 8, v, 0, 0, "set bank 2")

   pigpio.exceptions = False
   v = pigpio.set_bank_2(0xffffff)
   pigpio.exceptions = True
   CHECK(8, 9, v, pigpio.PI_SOME_PERMITTED, 0, "set bank 2")
Beispiel #12
0
def t8():
    print("Bank read/write tests.")

    pigpio.write(GPIO, 0)
    v = pigpio.read_bank_1() & (1 << GPIO)
    CHECK(8, 1, v, 0, 0, "read bank 1")

    pigpio.write(GPIO, 1)
    v = pigpio.read_bank_1() & (1 << GPIO)
    CHECK(8, 2, v, (1 << GPIO), 0, "read bank 1")

    pigpio.clear_bank_1(1 << GPIO)
    v = pigpio.read(GPIO)
    CHECK(8, 3, v, 0, 0, "clear bank 1")

    pigpio.set_bank_1(1 << GPIO)
    v = pigpio.read(GPIO)
    CHECK(8, 4, v, 1, 0, "set bank 1")

    t = 0
    v = 1 << 16
    for i in range(100):
        if pigpio.read_bank_2() & v:
            t += 1
    CHECK(8, 5, t, 60, 75, "read bank 2")

    v = pigpio.clear_bank_2(0)
    CHECK(8, 6, v, 0, 0, "clear bank 2")

    pigpio.exceptions = False
    v = pigpio.clear_bank_2(0xFFFFFF)
    pigpio.exceptions = True
    CHECK(8, 7, v, pigpio.PI_SOME_PERMITTED, 0, "clear bank 2")

    v = pigpio.set_bank_2(0)
    CHECK(8, 8, v, 0, 0, "set bank 2")

    pigpio.exceptions = False
    v = pigpio.set_bank_2(0xFFFFFF)
    pigpio.exceptions = True
    CHECK(8, 9, v, pigpio.PI_SOME_PERMITTED, 0, "set bank 2")
Beispiel #13
0
def t6():
    global t6_count, t6_on

    print("Trigger tests.")

    pigpio.write(GPIO, pigpio.LOW)

    tp = 0

    t6cb = pigpio.callback(GPIO, pigpio.EITHER_EDGE, t6cbf)

    for t in range(5):
        time.sleep(0.1)
        p = 10 + (t * 10)
        tp += p
        pigpio.gpio_trigger(GPIO, p, 1)

    time.sleep(0.5)

    CHECK(6, 1, t6_count, 5, 0, "gpio trigger count")

    CHECK(6, 2, t6_on, tp, 25, "gpio trigger pulse length")
Beispiel #14
0
def t6():
   global t6_count, t6_on

   print("Trigger tests.")

   pigpio.write(GPIO, pigpio.LOW)

   tp = 0

   t6cb = pigpio.callback(GPIO, pigpio.EITHER_EDGE, t6cbf)

   for t in range(10):
      time.sleep(0.1)
      p = 10 + (t*10)
      tp += p;
      pigpio.gpio_trigger(4, p, 1)

   time.sleep(0.5)

   CHECK(6, 1, t6_count, 10, 0, "gpio trigger count")

   CHECK(6, 2, t6_on, tp, 25, "gpio trigger pulse length")
Beispiel #15
0
def set_pin_to(pin, value):
    pigpio.write(pin, value)
    print("GPIO Pin %s set to %s    " % (pin, value))
Beispiel #16
0
def set_pin_to(pin, value):
    pigpio.write(pin, value)
    print_at(5, 0, "Pin %s set to %s    " % (pin, value))
Beispiel #17
0
def set_pin_to(pin, value):
	pigpio.write(pin, value)
	print_at(5, 0, "Pin %s set to %s    " % (pin, value))
def set_pin_to(pin, value):
	pigpio.write(pin, value)
	print("GPIO Pin %s set to %s    " % (pin, value))