Changing 'park' position of CO-RE 96 probe head during iSWAP movement

I’m looking for ways to change where the 96-well pipetting head parks while the iSWAP performs a labware movement on Hamilton STAR. It seems like the STAR system has a hardcoded step to move the 96-head to its park position in the back left corner before initiating iSWAP movements. That’s fine for me most of the time, but there’s an edge case where the default park position causes a crash.

When the 96-head has tips loaded, and I’m using iSWAP to move a plate off-deck, the tips will crash into one of our integrations. However, if the 96-head were parked instead in the front left corner of the deck, the crash would be avoided. I’m keeping the tips on the pipetting head to save time, as loading/reloading tips after every iSWAP move off-deck takes too long for my application. Does anyone have experience with this issue? Thanks in advance.

3 Likes

Alright, I came up with a solve which I’ll post here for posterity. The answer was firmware commands! Apparently using firmware commands can void your warranty, so for legal purposes the following is all a thought experiment and should not be applied :slight_smile:

First off, credit to @pylabrobot for the docstrings in the STAR backend code, which I used to reverse engineer a set of commands that worked for my application. Couldn’t have done it without those, as I didn’t have any firmware command documentation from Hamilton.

I used a USB sniffer to look at the firmware commands being sent to my STAR; It was mostly system “C0” commands that were coordinating both the head96 and iSWAP positioning during hotel placement. I had to instead choose single-component commands that would actuate the head96 and iSWAP x/y/z/rotation/wrist drives separately.

I am working in VENUS, so I used a single step Get Plate command to flexibly encode the plate pickup location for scalability, but then I programmed a series of firmware commands as follows:

Move tip-loaded head96 forward:

H0YA ya7000yv20000yr32000yw15

Rotate iSWAP arm, then iSWAP wrist to extend:

R0WP wp3
R0TP tp2

Move iSWAP Y, then X, then Z:

R0YA ya#####yv8000yr1yw7
X0XP la#####lr3lw7
R0ZA za+#####zv11000zr060zw6

Open gripper:

C0GF go0910

From there, one can just run the firmware commands in reverse order (using the close gripper command to start) to perform the pickup from the integration. Hope this helps anyone else struggling with this issue.

5 Likes

Just FYI, in the LogFile folder there is a file called HxCom…that contains all your firmware commands…Saving you a usb sniffer :slight_smile:

1 Like