Esempio n. 1
0
    def lcdloop(self):
        """LCD display handler"""
        depeche = 0
        line = 0
        old_screen_len = 0
        while (1):
            wiringpi.lcdHome(self.lcd)
            self.io.delay(2)
            self.lock.acquire()

            try:
                key = self.screens.keys()[depeche]
                screen_len = len(self.screens[key])
                if screen_len != old_screen_len:
                    line = 0
                if len(self.screens[key]):
                    lcd_one = self.screens[key][line]
                line += 1
                if len(self.screens[key]) == 1:  # Only one line, second blank
                    lcd_two = ""
                else:
                    lcd_two = self.screens[key][line]
                if line >= len(self.screens[key]) - 1:
                    line = 0
                    depeche = (depeche + 1) % len(self.screens)
                    update_freq = 3
                else:
                    update_freq = 1
                old_screen_len = screen_len
            except TypeError:
                pass
            finally:
                self.lock.release()
            self.write(lcd_one, lcd_two)
            time.sleep(update_freq)
Esempio n. 2
0
    def __init__(self,
                 lcd_rows=2,
                 lcd_chars=16,
                 lcd_bits=4,
                 pin_lcd_rs=13,
                 pin_lcd_e=14,
                 pins_lcd_db=[11, 10, 6, 16, 0, 0, 0, 0]):
        """Initialize lcd and get ip address"""
        self.rows = lcd_rows
        self.chars = lcd_chars

        self.lcd = wiringpi.lcdInit(lcd_rows, lcd_chars, lcd_bits, pin_lcd_rs,
                                    pin_lcd_e, *pins_lcd_db)
        wiringpi.lcdHome(self.lcd)

        self.screens = {
            'splash': ['GitGear.com/xfd', 'eXtremeFeedback!'],
            'ip': ['IP Address:', 'Searching...'],
            'text': [
                'Comming soon:', 'Customise this', 'text in Jenkins',
                'from the extreme', 'feedback plugin'
            ],
        }
        self.lock = threading.Lock()
        self.io = wiringpi.GPIO(wiringpi.GPIO.WPI_MODE_PINS)
Esempio n. 3
0
    def lcdloop(self):
        """LCD display handler"""
        depeche = 0
        line = 0
        old_screen_len = 0
        while(1):
            wiringpi.lcdHome(self.lcd)
            self.io.delay(2)
            self.lock.acquire()

            try:
                key = self.screens.keys()[depeche]
                screen_len = len(self.screens[key])
                if screen_len != old_screen_len:
                    line = 0;
                if len(self.screens[key]):
                    lcd_one = self.screens[key][line]
                line += 1
                if len(self.screens[key]) == 1:  # Only one line, second blank
                    lcd_two = ""
                else:
                    lcd_two = self.screens[key][line]
                if line >= len(self.screens[key])-1:
                    line = 0
                    depeche = (depeche + 1) % len(self.screens)
                    update_freq = 3
                else:
                    update_freq = 1
                old_screen_len = screen_len
            except TypeError:
                pass
            finally:
                self.lock.release()
            self.write(lcd_one, lcd_two)
            time.sleep(update_freq)
Esempio n. 4
0
def lcdloop():
    """LCD display handler"""
    while(1):
        wiringpi.lcdHome(LCD_HANDLE)
        IO.delay(2)
        LCD_LOCK.acquire()
        try:
            lcd_one = LCD_ONE
            lcd_two = LCD_TWO
        finally:
            LCD_LOCK.release()

        # Only printable chars, no tabs nor newlines
        lcd_one = filter( lambda x: 32 <= ord(x) <= 126, lcd_one)
        lcd_two = filter( lambda x: 32 <= ord(x) <= 126, lcd_two)

        line_one = lcd_one[0:16]
        line_two = lcd_two[0:16]

        wiringpi.lcdPosition (LCD_HANDLE, 0, 0)
        IO.delay(2)
        wiringpi.lcdPuts(LCD_HANDLE, line_one.ljust(16))
        IO.delay(2)
        wiringpi.lcdPosition (LCD_HANDLE, 0, 1)
        IO.delay(2)
        wiringpi.lcdPuts(LCD_HANDLE, line_two.ljust(16))
        time.sleep(5)
Esempio n. 5
0
 def printlcd(self):
     if conf.lcdput.empty() == True:
         strstatus = ['off' for i in range(len(self.valve_ob))]
         for r in range(len(self.valve_ob)):
             if int(self.valve_ob[r].read('valve')) == 1:
                 strstatus[r] = 'on '
             else:
                 strstatus[r] = 'off'
         stringLCD0 = ''.join(['1-', strstatus[0], ' 2-', strstatus[1]])
         stringLCD1 = ''.join(['3-', strstatus[2], ' 4-', strstatus[3]])
         stringLCD2 = ''
         stringLCD3 = datetime.now().strftime('%H:%M:%S %d-%m')
         if (tm.time() - self.timeclear) > 10:
             wpi.lcdHome(self.lcd_ob)
             tm.sleep(0.005)
             wpi.lcdClear(self.lcd_ob)
             tm.sleep(0.005)
             self.timeclear = tm.time()
             # conf.lcd = wpi.lcdInit(
             #     4, 16, 4,
             #     conf.RS, conf.E, conf.DB4, conf.DB5, conf.DB6, conf.DB7,
             #     0,0,0,0
             #     )
             # self.lcd_ob = conf.lcd
         wpi.lcdPosition(self.lcd_ob, 0, 0)
         tm.sleep(0.005)
         wpi.lcdPuts(self.lcd_ob, stringLCD0)
         tm.sleep(0.005)
         wpi.lcdPosition(self.lcd_ob, 0, 1)
         tm.sleep(0.005)
         wpi.lcdPuts(self.lcd_ob, stringLCD1)
         tm.sleep(0.005)
         wpi.lcdPosition(self.lcd_ob, -4, 2)
         tm.sleep(0.005)
         wpi.lcdPuts(self.lcd_ob, stringLCD2)
         tm.sleep(0.005)
         wpi.lcdPosition(self.lcd_ob, -4, 3)
         tm.sleep(0.005)
         wpi.lcdPuts(self.lcd_ob, stringLCD3)
         tm.sleep(0.005)
     elif conf.lcdput.get() == 'restart':
         wpi.lcdHome(self.lcd_ob)
         tm.sleep(0.005)
         wpi.lcdClear(self.lcd_ob)
         tm.sleep(0.005)
         wpi.lcdPosition(self.lcd_ob, 0, 0)
         tm.sleep(0.005)
         wpi.lcdPuts(self.lcd_ob, 'RIAVVIO')
         tm.sleep(0.005)
         wpi.lcdPosition(self.lcd_ob, 0, 1)
         while True:
             wpi.lcdPuts(self.lcd_ob, '*')
             tm.sleep(0.5)
     else:
         pass
Esempio n. 6
0
def lcd_init():
    """Initialize lcd and get ip address"""
    global LCD_HANDLE, LCD_TWO
    LCD_HANDLE = wiringpi.lcdInit(LCD_ROWS, LCD_CHARS, LCD_BITS, PIN_LCD_RS, PIN_LCD_E, *PINS_LCD_DB)
    wiringpi.lcdHome(LCD_HANDLE)
    lcd_two = get_connection_string("eth0")
    LCD_LOCK.acquire()
    try:
        LCD_TWO = lcd_two
    finally:
        LCD_LOCK.release()
Esempio n. 7
0
    def __init__(self, lcd_rows=2, lcd_chars=16, lcd_bits=4, pin_lcd_rs=13,
                 pin_lcd_e=14, pins_lcd_db=[11,10,6,16,0,0,0,0]):
        """Initialize lcd and get ip address"""
        self.rows = lcd_rows
        self.chars = lcd_chars

        self.lcd = wiringpi.lcdInit(lcd_rows, lcd_chars, lcd_bits,
                                    pin_lcd_rs, pin_lcd_e, *pins_lcd_db)
        wiringpi.lcdHome(self.lcd)

        self.screens = { 'splash':['GitGear.com/xfd','eXtremeFeedback!'],
                         'ip':['IP Address:','Searching...'],
                         'text':['Comming soon:',
                                 'Customise this',
                                 'text in Jenkins',
                                 'from the extreme',
                                 'feedback plugin'],
                       }
        self.lock = threading.Lock()
        self.io = wiringpi.GPIO(wiringpi.GPIO.WPI_MODE_PINS)
Esempio n. 8
0
def lcdloop():
    """LCD display handler"""
    depeche = 0
    while(1):
        wiringpi.lcdHome(LCD_HANDLE)
        IO.delay(2)
        LCD_LOCK.acquire()
        try:
            key = LCD_ROTATOR.keys()[depeche]
            if len(LCD_ROTATOR[key]): 
              lcd_one = LCD_ROTATOR[key][0]
            if len(LCD_ROTATOR[key]) > 1:
              lcd_two = LCD_ROTATOR[key][1]
            else:
              lcd_two = ""

            depeche = (depeche + 1) % len(LCD_ROTATOR)
        except TypeError:
          pass
        finally:
            LCD_LOCK.release()

        # Only printable chars, no tabs nor newlines
        lcd_one = filter( lambda x: 32 <= ord(x) <= 126, lcd_one)
        lcd_two = filter( lambda x: 32 <= ord(x) <= 126, lcd_two)

        line_one = lcd_one[0:16]
        line_two = lcd_two[0:16]

        wiringpi.lcdPosition (LCD_HANDLE, 0, 0)
        IO.delay(2)
        wiringpi.lcdPuts(LCD_HANDLE, line_one.ljust(16))
        IO.delay(2)
        wiringpi.lcdPosition (LCD_HANDLE, 0, 1)
        IO.delay(2)
        wiringpi.lcdPuts(LCD_HANDLE, line_two.ljust(16))
        time.sleep(5)
Esempio n. 9
0
    wiringpi.digitalWrite(E, OFF)
    wiringpi.digitalWrite(F, OFF)
    wiringpi.digitalWrite(G, OFF)
    wiringpi.digitalWrite(H, OFF)
    wiringpi.digitalWrite(ONE, OFF)
    wiringpi.digitalWrite(TWO, OFF)
    wiringpi.digitalWrite(THR, OFF)
    wiringpi.digitalWrite(FOU, OFF)
    wiringpi.digitalWrite(FIV, OFF)
    wiringpi.digitalWrite(SIX, OFF)
    wiringpi.digitalWrite(SEV, OFF)
    wiringpi.digitalWrite(EIG, OFF)
    wiringpi.digitalWrite(WHI, OFF)
    wiringpi.digitalWrite(BLA, OFF)


# LCD_RS = 83
# LCD_EN  = 84
# LCD_D4 = 85
# LCD_D5 = 86
# LCD_D6 = 87
# LCD_D7 = 88

lcd = wiringpi.lcdInit(2, 16, 4, LCD_RS, LCD_EN, LCD_D4, LCD_D5, LCD_D6, LCD_D7, 0, 0, 0, 0)
wiringpi.lcdHome(lcd)
wiringpi.lcdClear(lcd)
wiringpi.lcdPosition(lcd, 0, 0)
wiringpi.lcdPuts(lcd, "oh yeah!")
wiringpi.lcdPosition(lcd, 0, 1)
wiringpi.lcdPuts(lcd, "it works!")
Esempio n. 10
0
 def displayWrite(self,string):
     string=string[0:32]
     #GF.log("writing "+string+" to lcd",'D')
     wp.lcdClear(self.display1)
     wp.lcdHome(self.display1)
     wp.lcdPrintf(self.display1, string)
Esempio n. 11
0
def lcd_init():
    """Initialize lcd and get ip address"""
    global LCD_HANDLE
    LCD_HANDLE = wiringpi.lcdInit(LCD_ROWS, LCD_CHARS, LCD_BITS, PIN_LCD_RS, PIN_LCD_E, *PINS_LCD_DB)
    wiringpi.lcdHome(LCD_HANDLE)
Esempio n. 12
0
 def clearlcd(self):
     wpi.lcdHome(self.lcd_ob)
     tm.sleep(0.005)
     wpi.lcdClear(self.lcd_ob)
     tm.sleep(0.005)