diameter=5.2, # diameter (mm) of each well on the plate depth=18.6, # depth (mm) of each well on the plate volume=1000) plate_name = 'One-Column-reservoir' if plate_name not in labware.list(): custom_plate = labware.create( plate_name, # name of you labware grid=(1, 1), # specify amount of (columns, rows) spacing=(0, 0), # distances (mm) between each (column, row) diameter=81, # diameter (mm) of each well on the plate depth=35, # depth (mm) of each well on the plate volume=350000) #### LABWARE SETUP #### temp_deck_1 = tempdeck.TempDeck() temp_deck_2 = tempdeck.TempDeck() temp_deck_1._port = '/dev/ttyACM0' temp_deck_2._port = '/dev/ttyACM1' if not robot.is_simulating(): temp_deck_1.connect() temp_deck_2.connect() temp_deck1 = modules.load('tempdeck', '4') Cold_plate = labware.load('biorad-hardshell-96-PCR', '4', share=True) # trough = labware.load('trough-12row', '2') # Trash = labware.load('One-Column-reservoir','3') temp_deck2 = modules.load('tempdeck', '10') temp_plate = labware.load('1ml_Covaris', '10', share=True)
#Then replace the below serial number with their corresponding numbers cold_deck_ID = "TDV04P20190129B13" hot_deck_ID = "TDV04P20190129B19" mag_deck_ID = "MDV01P20181127A24" module_dict = dict() # Scan /dev/attyACM* for all dev paths: devs = glob.glob("/dev/ttyACM*") # Scan all ACM dev paths and attempt to connect temp modules temp_decks = [] for dev in devs: deck = tempdeck.TempDeck() deck._port = dev # I did not test this try block. Depending on how the code is written, it may not throw an error when you attempt to connect to a mag deck. If that's the case, you may consider calling sys command `udevadm info` to get name of module and only connect when name is tempdeck try: deck.connect() except: continue temp_decks.append(deck) # If you have more than one mag deck, you need to do the same here as well # If modules not found. Give error and exit if len(temp_decks) == 0: print("Failed to find given modules. Are they plugged in?") exit(1)