PyHamilton for Vantage

Hi everyone,
My lab has a Hamilton Vantage and I am looking into using PyHamilton to program some of our protocols. I used the tutorials to install and run my first test script with deck.lay no problem, but this is with a STARlet deck. Obviously the Vantage has more tracks than a STARlet and different positioning of labware, and so I would like to change that. Could someone explain to me how PyHamilton points to a given .lay file for VENUS, and how to adapt it for a Vantage deck?

When trying a Vantage .lay file with LayoutManager() I get errors in my trace file:

I am new to this so apologies if this is a newbie question. I appreciate the help!

1 Like

You will probably need to change your STAR_OEM_Test.lay so that it is a Vantage deck. Not only that, you will probably also need to add specific Vantage functionality within STAR_OEM_noFan.med, defaultcmds.py, liquid_handling_wrappers.py, etc. for things like MagPip functionality.
I would also make sure your libraries within STAR_OEM_noFan.med and submethods are compatible with Vantage and remove the ones that throw errors (if you don’t need them).

Overall, this will require a lot of simulation testing to get right for your config but I would first start with digging in and understanding what STAR_OEM_noFan.med is really doing.

1 Like

PyHamilton uses the LayoutManager class which just loads the layfile you reference into the file that the universal noFan.med method loads. If you don’t do that you are just referencing whatever the previous layfile you loaded was.

That looks like this
lmgr = LayoutManager('deck.lay')

That should fix the specific error you’re seeing, but I’m pretty sure there will be other issues. These are all fixable but I haven’t directly used a Vantage with PyHamilton yet. Happy to help walk through troubleshooting any issues.