“Dispense target liquid volume (50uL) was reduced to the available liquid volume (49.831uL). Please verify the liquid class”
For context, I created a MCA LC that allows me to aspirate excess volume. In the formula section of the LC, I calculate the excess volume (10% of the input volume)
Then in the microscript, I calculate total volume to aspirate as a sum of volume, accuracy adjustment, excessVolume and conditioning volume (if the sum is greater than the tip volume capacity, it aspirates the max volume that I set, in this case 200). After aspirating excess, I use an empty tips command in the main script to reset the volume to 0.
The LC is working well. However, now I’m getting a strange error, where the dispense volume is decreased by < 0.25uL in some of my aspiration/dispense steps. I tried turning off LLD and tracking but the problem persists. I also have run the script in simulation mode, and I don’t get an error. It only occurs when I run on the fluent. I verified that LLD is turned off by running the script dry and also embedding comments in the microscript. Any thoughts on what else I could be missing?
We had a similar issue on the FCA when we performed tip initialization at the start. I introduced a drop tip command after the initialization and before the first Asp-Disp step and then the error was gone.
Hmmm… I’m not sure if that would fix it. In my script, there is no error the first time the MCA picks up tips. It aspirates and dispenses with the first set of tips 8 times using this LC. Then on the next step, with a new set of tips, I get this error on the first dispense (there are 7 additional dispenses with the same tips that don’t trigger additional errors). On the last liquid transfer the MCA does partial tip pick ups 4 times and the first dispense of each of those transfers triggers an error.
I have an empty tips command between steps within the script. Does it need to be inside the LC? I wasn’t sure how to direct the empty tips command to the appropriate place inside the LC microscript.
It can’t hurt. As you know, Fluent Control is heavily dependent on software definitions meaning that even small incorrect labware definitions can have a huge impact, same with bad teaching. This could be a nothingburger and just a simple rounding error on the software end that does not impact the hardware or it could be some loose variable in the microscript that’s causing an impact.
In the early days we ran into issues with the theoretical limits of the the channels on the arms, in future updates they increased them but every now and then you have air gaps that sneak into liquid classes if you’re not careful because some engineer changed something and then forgot.
It also doesn’t help that the variable portion of their UI/UX is atrocious, you can only view 5 at any given time…
I say give it a go or create a mimic from scratch from a default LC.
It seems like you’re using a 1mL tip and multidispensing right?
I would also check all of the variables that are listed in the script. I have seen variables, although not explicitly called for in the Microscript, have an effect on the final turnout. I would look for anything around “First Dispense Volume” or “Conditional Dispense Volume”. I read your post and interpret it as you are doing a multi-dispense. Without seeing your full script, it is possible those variables have default values that you aren’t seeing.
I think there are two possible things happening here. On the aspirate side, you have the actual volume of liquid being aspirated and you also have certain air gaps. All the liquid class settings, specifics of the microscript, etc. as well as the tip type used for the step, whether it has a filter or not, etc. and capacity of liquid (and air) the tip can ultimately hold impact what the system is ultimately set to do. So in this case on the aspirate side what it ends up thinking it is actually aspirating at the machine level is 49.831 uL (even though your volume is set nominally to 50 uL. So then when you go to dispense, and you tell it dispense 50 uL, well, it gives that warning because internally it looks at it and says it doesn’t think it has 50 uL, it thinks it actually only has 49.831 uL, and so it just reduces the dispense to 49.831 uL so as to dispense exactly what it thinks it has from the aspirate side (the software doesn’t like the idea of dispensing a volume that is greater than it aspirated, although we’ve got a solution for that in one of our customer’s applications ). It’s still very much in spec, less than 1% difference.
So if you are wanting to try to tweak it, it’s actually on the aspirate side, not the dispense side, where you would go to make adjustments.
And as you see, the other aspect is it’s very close. It may even potentially be a rounding error somewhere in the way it models this stuff. Possibly may look at the Accuracy Adjustment / AdjustAccuracy which is a curve fitting. Also generally not something to fret over when the difference between the specified volume and what it shows in the warning is this small. Though it is satisfying when the run finishes green instead of yellow.