Beispiel #1
0
 def  readconfig(self, filename):      # Read config from file
     print(' Open config: ', filename)
     if os.path.isfile(filename):          # check if config file exists and load config
         print ('File found')
         f = open(filename, 'r')
         #print(json.load(f))
         llconfig = json.load(f)
         print('llconfig: ', llconfig)
         localserialconfig = llconfig
         f.close()
         print('Loaded : ', localserialconfig)
     else:
         localserialconfig =  {"baudrate":cbaudrates[0], "comport": listports.serial_ports()[0]}
         print('Not found, defaults set ', localserialconfig)
  #   localserialconfig = llocalserialconfig
     return localserialconfig
def  Readconfig():
    global localserialconfig
    print(' Open config: ', filename , ' ' , localserialconfig)
    if os.path.isfile(filename):          # check if config file exists and load config
        print ('File found')
        f = open(filename, 'r')
        #print(json.load(f))
        llconfig = json.load(f)
#        print('llconfig: ', llconfig)
        localserialconfig = llconfig
        f.close()
        print('Loaded : ', localserialconfig)
    else:
        localserialconfig =  {"baudrate":cbaudrates[0], "comport": listports.serial_ports()[0]}
        print('Not found, defaults set ', localserialconfig)
 #   localserialconfig = llocalserialconfig
    return localserialconfig
Beispiel #3
0
    def __init__(self, master=None):
        global serialconfig

        _bgcolor = 'wheat'  # X11 color: #f5deb3
        _fgcolor = '#000000'  # X11 color: 'black'
        _compcolor = '#d9d9d9'  # X11 color: 'gray85'
        _ana1color = '#d9d9d9'  # X11 color: 'gray85'
        _ana2color = '#d9d9d9'  # X11 color: 'gray85'
        self.style = ttk.Style()
        if sys.platform == "win32":
            self.style.theme_use('winnative')
        self.style.configure('.', background=_bgcolor)
        self.style.configure('.', foreground=_fgcolor)
        self.style.configure('.', font="TkDefaultFont")
        self.style.map('.',
                       background=[('selected', _compcolor),
                                   ('active', _ana2color)])

        master.configure(background="#d0d0d0")
        master.configure(highlightbackground="#d9d9d9")
        master.configure(highlightcolor="black")

        self.btn_Save = Button(master)
        self.btn_Save.place(relx=0.34, rely=0.74, height=24, width=87)
        self.btn_Save.configure(activebackground="#c0c0c0")
        self.btn_Save.configure(activeforeground="#000000")
        self.btn_Save.configure(background="#d0d0d0")
        #        self.btn_Save.configure(command=comportconfig_support.Close)
        self.btn_Save.configure(command=comportconfig_support.close)
        self.btn_Save.configure(disabledforeground="#a3a3a3")
        self.btn_Save.configure(foreground="#000000")
        self.btn_Save.configure(highlightbackground="#d0d0d0")
        self.btn_Save.configure(highlightcolor="black")
        self.btn_Save.configure(pady="0")
        self.btn_Save.configure(text='''Save&Close''')

        self.btn_Cancel = Button(master)
        self.btn_Cancel.place(relx=0.68, rely=0.74, height=24, width=87)
        self.btn_Cancel.configure(activebackground="#d0d0d0")
        self.btn_Cancel.configure(activeforeground="#000000")
        self.btn_Cancel.configure(background="#d0d0d0")
        self.btn_Cancel.configure(command=comportconfig_support.cancel)
        self.btn_Cancel.configure(disabledforeground="#a3a3a3")
        self.btn_Cancel.configure(foreground="#000000")
        self.btn_Cancel.configure(highlightbackground="#d0d0d0")
        self.btn_Cancel.configure(highlightcolor="black")
        self.btn_Cancel.configure(pady="0")
        self.btn_Cancel.configure(text='''Cancel''')

        self.Labelframe1 = LabelFrame(master)
        self.Labelframe1.place(relx=0.1,
                               rely=0.06,
                               relheight=0.58,
                               relwidth=0.86)
        self.Labelframe1.configure(relief=GROOVE)
        self.Labelframe1.configure(foreground="black")
        self.Labelframe1.configure(text='''Comport settings''')
        self.Labelframe1.configure(background="#d0d0d0")
        self.Labelframe1.configure(highlightbackground="#d9d9d9")
        self.Labelframe1.configure(highlightcolor="black")
        self.Labelframe1.configure(width=255)

        self.Label1 = Label(self.Labelframe1)
        self.Label1.place(relx=0.04, rely=0.21, height=21, width=54)
        self.Label1.configure(activebackground="#f9f9f9")
        self.Label1.configure(activeforeground="black")
        self.Label1.configure(background="#d0d0d0")
        self.Label1.configure(disabledforeground="#a3a3a3")
        self.Label1.configure(foreground="#000000")
        self.Label1.configure(highlightbackground="#d9d9d9")
        self.Label1.configure(highlightcolor="black")
        self.Label1.configure(text='''Comport''')

        self.Label2 = Label(self.Labelframe1)
        self.Label2.place(relx=0.04, rely=0.53, height=21, width=53)
        self.Label2.configure(activebackground="#f9f9f9")
        self.Label2.configure(activeforeground="black")
        self.Label2.configure(background="#d0d0d0")
        self.Label2.configure(disabledforeground="#a3a3a3")
        self.Label2.configure(foreground="#000000")
        self.Label2.configure(highlightbackground="#d9d9d9")
        self.Label2.configure(highlightcolor="black")
        self.Label2.configure(text='''Baudrate''')

        comportconfig_support.Readconfig()

        baudrateindex = self.find_index(
            comportconfig_support.serialconfig['baudrate'],
            comportconfig_support.cbaudrates)  # check if baudrate in list
        if baudrateindex < 0:
            baudrateindex = 0


#        serial_portlist = serial.tools.list_ports.comports()
#        serial_ports =
        comportindex = self.find_index(
            comportconfig_support.serialconfig['comport'],
            listports.serial_ports())  # check if baudrate in list
        if comportindex < 0:
            print(' Port not found: ', serialconfig['comport'])
            comportindex = 0

        print('Config: ', comportconfig_support.serialconfig)

        self.tc_baudrate = StringVar()
        self.tc_baudrate = ttk.Combobox(self.Labelframe1,
                                        textvariable=self.tc_baudrate)
        self.tc_baudrate.place(relx=0.35,
                               rely=0.21,
                               relheight=0.35,
                               relwidth=0.56)
        self.tc_baudrate['values'] = comportconfig_support.cbaudrates
        self.tc_baudrate.current(baudrateindex)
        self.tc_baudrate.configure(takefocus="")
        self.tc_baudrate.bind('<<ComboboxSelected>>', self.set_baudrate)

        self.tc_comports = StringVar()
        self.tc_comport = ttk.Combobox(self.Labelframe1,
                                       textvariable=self.tc_comports)
        self.tc_comport.place(relx=0.35,
                              rely=0.53,
                              relheight=0.35,
                              relwidth=0.56)
        self.tc_comport['values'] = listports.serial_ports()
        self.tc_comport.current(comportindex)
        self.tc_comport.bind('<<ComboboxSelected>>', self.set_comport)
        self.tc_comport.configure(takefocus="")

        print('baudrate: ', self.tc_baudrate['values'])
        print('ports: ', listports.serial_ports())
    def __init__(self, master=None):
        _bgcolor = 'wheat'  # X11 color: #f5deb3
        _fgcolor = '#000000'  # X11 color: 'black'
        _compcolor = '#d9d9d9' # X11 color: 'gray85'
        _ana1color = '#d9d9d9' # X11 color: 'gray85' 
        _ana2color = '#d9d9d9' # X11 color: 'gray85' 
        self.style = ttk.Style()
        if sys.platform == "win32":
            self.style.theme_use('winnative')
        self.style.configure('.',background=_bgcolor)
        self.style.configure('.',foreground=_fgcolor)
        self.style.configure('.',font="TkDefaultFont")
        self.style.map('.',background=
            [('selected', _compcolor), ('active',_ana2color)])
        master.configure(background="#d0d0d0")
        master.configure(highlightbackground="#d9d9d9")
        master.configure(highlightcolor="black")

        self.btn_Save = Button(master)
        self.btn_Save.place(relx=0.34, rely=0.74, height=24, width=87)
        self.btn_Save.configure(activebackground="#c0c0c0")
        self.btn_Save.configure(activeforeground="#000000")
        self.btn_Save.configure(background="#d0d0d0")
#        self.btn_Save.configure(command=comportconfig_support.Close)
        self.btn_Save.configure(command=comportconfig_support.Close)
        self.btn_Save.configure(disabledforeground="#a3a3a3")
        self.btn_Save.configure(foreground="#000000")
        self.btn_Save.configure(highlightbackground="#d0d0d0")
        self.btn_Save.configure(highlightcolor="black")
        self.btn_Save.configure(pady="0")
        self.btn_Save.configure(text='''Save&Close''')

        self.btn_Cancel = Button(master)
        self.btn_Cancel.place(relx=0.68, rely=0.74, height=24, width=87)
        self.btn_Cancel.configure(activebackground="#d0d0d0")
        self.btn_Cancel.configure(activeforeground="#000000")
        self.btn_Cancel.configure(background="#d0d0d0")
        self.btn_Cancel.configure(command=comportconfig_support.cancel)
        self.btn_Cancel.configure(disabledforeground="#a3a3a3")
        self.btn_Cancel.configure(foreground="#000000")
        self.btn_Cancel.configure(highlightbackground="#d0d0d0")
        self.btn_Cancel.configure(highlightcolor="black")
        self.btn_Cancel.configure(pady="0")
        self.btn_Cancel.configure(text='''Cancel''')

        self.Labelframe1 = LabelFrame(master)
        self.Labelframe1.place(relx=0.1, rely=0.06, relheight=0.58
                , relwidth=0.86)
        self.Labelframe1.configure(relief=GROOVE)
        self.Labelframe1.configure(foreground="black")
        self.Labelframe1.configure(text='''Comport settings''')
        self.Labelframe1.configure(background="#d0d0d0")
        self.Labelframe1.configure(highlightbackground="#d9d9d9")
        self.Labelframe1.configure(highlightcolor="black")
        self.Labelframe1.configure(width=255)

        self.Label1 = Label(self.Labelframe1)
        self.Label1.place(relx=0.04, rely=0.21, height=21, width=54)
        self.Label1.configure(activebackground="#f9f9f9")
        self.Label1.configure(activeforeground="black")
        self.Label1.configure(background="#d0d0d0")
        self.Label1.configure(disabledforeground="#a3a3a3")
        self.Label1.configure(foreground="#000000")
        self.Label1.configure(highlightbackground="#d9d9d9")
        self.Label1.configure(highlightcolor="black")
        self.Label1.configure(text='''Comport''')

        self.Label2 = Label(self.Labelframe1)
        self.Label2.place(relx=0.04, rely=0.53, height=21, width=53)
        self.Label2.configure(activebackground="#f9f9f9")
        self.Label2.configure(activeforeground="black")
        self.Label2.configure(background="#d0d0d0")
        self.Label2.configure(disabledforeground="#a3a3a3")
        self.Label2.configure(foreground="#000000")
        self.Label2.configure(highlightbackground="#d9d9d9")
        self.Label2.configure(highlightcolor="black")
        self.Label2.configure(text='''Baudrate''')


        comportconfig_support.Readconfig()

        baudrateindex = self.find_index(comportconfig_support.localserialconfig['baudrate'],
                                        comportconfig_support.cbaudrates)  # check if baudrate in list
        if  baudrateindex < 0:
            baudrateindex = 0

        comportindex = self.find_index(comportconfig_support.localserialconfig['comport'],
                                       listports.serial_ports())  # check if baudrate in list
#        comportindex = self.find_index(comportconfig_support.localserialconfig['comport'],
#                                       serial.tools.list_ports.comports() )  # check if baudrate in list
        if  comportindex < 0:
            comportindex = 0

        print('Config: ', comportconfig_support.localserialconfig)

        self.tc_baudrate= StringVar()
        self.tc_baudrate = ttk.Combobox(self.Labelframe1, textvariable=self.tc_baudrate)
        self.tc_baudrate.place(relx=0.35, rely=0.21, relheight=0.35
                , relwidth=0.56)
        self.tc_baudrate['values'] = comportconfig_support.cbaudrates
        self.tc_baudrate.current(baudrateindex)
        self.tc_baudrate.configure(takefocus="")
        self.tc_baudrate.bind('<<ComboboxSelected>>',self.set_baudrate)

        self.tc_comports= StringVar()
        self.tc_comport = ttk.Combobox(self.Labelframe1, textvariable=self.tc_comports)
        self.tc_comport.place(relx=0.35, rely=0.53, relheight=0.35 , relwidth=0.56)
        self.tc_comport['values']= listports.serial_ports()
        self.tc_comport.current(comportindex)
        self.tc_comport.bind('<<ComboboxSelected>>',self.set_comport)
        self.tc_comport.configure(takefocus="")

        print ('baudrate: ', self.tc_baudrate['values'])
        print ('ports: ', listports.serial_ports())
Beispiel #5
0
import listports
import serial
import time

devices_available = listports.serial_ports()
count = len(devices_available)
ser = serial.Serial()
device_list = []
device_id = []

def device_info():
        if count != 0:
                for i in range(0,count):
                        ser.port = str(devices_available[i])
                        ser.baudrate = 115200
                        ser.open()
                        time.sleep(2)
                        device_name = str(ser.read_all())
                        ser.close()
                        device_list.append([device_name,devices_available[i]])
                        total_devices = len(device_list)

                for i in range(0,total_devices):
                        if device_list[i][0][10:14] == 'Grbl':
                                device_id.append(('Grbl 0.9j',device_list[i][1]))
                        elif device_list[i][0][2:6] == 'Pneu':
                                device_id.append(('Pneumatic Controller',device_list[i][1]))
                        elif device_list[i][0][2:6] == 'Pump':
                                device_id.append(('DC Pump Controller',device_list[i][1]))
                        else:
                                device_id.append(('Unkown Device',device_list[i][1]))