Hamilton [MPE]² functionality for SPE

I am currently developing an SPE method on the MPE² and have encountered a limitation in the available MPE² library functions.

During the elution step, it is necessary to keep the collection plate permanently underneath the SPE plate. In some cases, methanol starts flowing through the SPE material immediately after dispensing, or even during the clamping process. Therefore, the collection plate must already be in place before the SPE plate is clamped and remain there afterwards.

With the functions currently available in my MPE² library, the closest sequence I can achieve is:

  1. Place an empty SPE plate on the MPE² loading position.

  2. Execute ClampFilterPlate.

  3. Place an empty collection plate on the MPE² loading position.

  4. Execute RetrieveFilterPlate → the entire stack moves out.

  5. Pipette methanol onto the SPE plate.

  6. Execute ClampFilterPlate → the entire stack moves back into the MPE², but afterwards the collection plate is automatically moved out again.

My question is:

Is there a possibility to keep the metal carriage (with the collection plate) inside the MPE² after executing ClampFilterPlate?

From what I can see, ClampFilterPlate is the only function available to clamp the SPE plate, but it automatically ejects the carriage afterwards. What I need is a way to clamp the SPE plate while keeping the collection plate positioned underneath it inside the MPE².

Is there any possibility, perhaps a newer firmware/library version or an adaption in the .hsl code of the ClampFilterPlate function that supports this workflow?

Thank you very much for your support.

Kind regards,
Martin

PS: the installed version of MPE² HSL Driver is 2.1.0.0

Hi Martin,

I encountered the same problem. To solve it you have to run ProcessToColletion Plate without prior clamping. This will move the entire stack in and perform the processing. This is wront in (at least my) documentation. If needed I can also look up the entire sequence in one of my protocols.

best
Dominik

2 Likes

Hi Dominik,

thanks for that hint! I did not try this, I always thought that I need ClampFilterPlate first, before I call the function ProcessFilterToCollectionPlate. Unfortunately, the help file of the MPE library is not detailled enough.

I will try this as soon as possible and give an update here.

2 Likes

Hi @dominik.b

I tested it in various ways but always received an error like ‘not possible in the current state of the instrument’. I thought it is related to the functions “FilterPlatePlaced” and “CollectionPlatePlaced” but no matter which combination and order, it did not work.

Could you please check your sequence, how you got it work in your workflow?

Thanks lot,

Martin

The MPE is a state machine, if you don’t have a state diagram from Hamilton I highly recommend requesting one. When in certain states your only option is to either go back a step, sometimes impossible if error’d, or re-init the entire device.

Sure, here you go:

A bit messy with the screenshots, but I did not find another quick solution. As I’m using half-skirted filter plates I have to use an intermediate clamp plate as otherwise the nozzles touch the bottom of the MPE.

L190: I place the clamp plate
L192: I register it as a filter plate (FilterPlatePlaced())
L193: Clamping the filter plate –> Clamp plate is in, bottom shuttle comes out

L197: I place my collection plate (which collects waste at this point)
L198: I register the Collection plate, (CollectionPlatePlaced(1))
L199: I eject the Filter plate BUT do not deregister it (I think this may be the key)

L201-205: I remove the clamping plate (a regular full-skirted PCR plate) and place the actual half-skirted filter plate

L233: I process to collection plate. Dont be confused by my control points: As one of the sensors in my MPE pressure modules is bricked I bypass the pressure control by applying pressure in 1 second steps.

After the processing the entire stack is ejected and I can pipette again, process again etc.

Do you also need the processing steps for the elution?

best
Dominik

it’s working! Thanks a lot. Obviously the issue was that I unregistered the plate.

2 Likes