Error in resetting sequence?

Hello,
Could anyone advise on the problem I experience with sequences in Venus as per the screenshot please? I first fill 16 positions on plate A using 8ch head by setting end of sequence of this plate to 16 and iterating throuhg the plate. I then update the end of sequence to 96 so that the 96ch head could transfer the entire plate B to plate A, but this repeatedly triggers the error where Venus says “only 16 positions” are available on plate A. I don’t understand why that would be if I explicitly instruct start of seq = 1 and end of seq = 96 for plate A??

If you use up all the positions in a sequence (i.e. from start to end), the “current” position will be 0, designating that it is completed.

You need to reset the sequence before setting the end position or update the “current” position to what you want to start from.

2 Likes

Hi @Gareth , I already have “Set current position” = 1 and " Set end position" = 96 - this returns the error I mentioned. Is there anyhting I’m missing?

Your sequence is getting reset to be at position 1, but it if isn’t initially defined with more than 16, the effective end position cannot be greater than 16. It is getting “set” to 96, but that just sets it to the max number possible. Here’s a screenshot of the help page for that step:

image

There’s a few different ways to work around it, but here’s what first came to mind:
A—Add positions to the end of ML_STAR.plate_input after the loop (setting the position to 1 shouldn’t be necessary since you’re resetting after the loop)
B—Define ML_STAR.plate_input with 96 positions, set the end to 16 before your loop, then set the end back to 96 after the loop
C—Set up two sequences on ML_STAR.plate_input, one with 16 positions and one with 96 positions, no resetting required
D—Like B but less versatile, if you’re always using an 8 channel system you can hardcode it a bit. Define ML_STAR.plate_input as 96 positions instead of 16, set your loop to run 2x, and reset the sequence at the end of the loop before using the MPH

2 Likes

If your goal is to simply get the whole sequence.

Use the default sequence library, look for reset sequence. Use that to reset your sequence.That way you reset current, used, max and count.

To understand what is happening I would add a trace both after your loop, before your loop and before the error point. Just to understand what is going on.

1 Like

@labrat thank you ! I think my current method would be your option B actually, and that doesn’t seem to work. C is problematic because the length of sequence is defined by user input, so could be 8, 16, 48 etc. D is not applicable, because I need (prefer?) to use a combination of 8ch and 96ch heads . I haven’t tried A, the fix from @Pascal seems to work - SeeqReset from the Seq library.

That worked! thank you very much @Pascal . I modified my method as per the screenshot below and that did the trick. What I don’t quite understand, if why this command is required, given that the loop had been configured to reset the sequence before and after the loop anyway…

1 Like

It would help by inserting some traces here.

I suspect you are using automatic counting, so this should count your used positions based upon the consumed positions. Normally it should be reset then properly.

Check if you are resetting the correct sequence (In particular, check if you do not have a local sequence and a task local sequence with the same name, and you are resetting the wrong sequence)

1 Like

@Pascal I can’t attach pdfs but here are screenshots of the simplified method which has the same behavious as the main method and the traces from simulation.

A) lines 16, 17, 18 disabled - returns error on second fill
B) line 16 enabled, 17+18 disabled - works fine
C) line 16 disabled, 17+18 enabled - does not work
D) line 16 disabled, 18+17 enabled (and swapped) - does not work

example of error message trace is on another screen



Hi Nikolay,

You are running a MPH. It is important to understand that a 96/384 MPH should always contain 96/384 positions in the sequence, regardless if you are using them. It’s a bit of a turndown ofcourse if you wish to use " column" pickup, but for this the VirtualLabwareV2 a handy tool.

Back to your issue :
Your loop at line 13 runs through the whole sequence, is this what you are aiming for? I presume you do a multi dispense here. You then perform the last dispense + tip eject. This should work for that.

The reset sequence at line 16 works because you reset your current position to 1, your end position to 96 and max positions, resulting in a useful sequence, the lines 17 and 18 only care for the start and end position,

These numbers (above small image) will be reset to their original values.

2 Likes