Biomek Scripting Tools

Would love for people to post their favorite VBScripts they’ve made for advanced Biomek-i5/7 methods. Things such as,

  • Open a file browser to load file inputs
  • Slack integration script
  • Get unique barcodes from worklist input
  • Automatically assign labware to deck locations

A little off topic, but!
I’ve we written many methods on the Fx where I dynamically add labware based on user input. I’ll set the labware properties including “the volume amount is true” and the volume value in the labware, and this allows me to pipet at liquid level with the 8-span even when using clear tips. The same code on the i-7 doesn’t work. Has anyone else run into this?

1 Like

I do the same in Biomek Software 5 and in Biomek Software 4 without issues. If you are referring to the Biomek 4 variant dictionary ‘Othros’ is a set or createobject command then use ‘Biomek5’ as the name instead.

1 Like

Wrote this to open a file browser in Biomek any comments or cleaner VBscript coders out there.

' Navigate to a file from a biomek method and store the filepath in a global
' variable
'   INPUT : none
'   OUTPUT : SelectedFilePath [Scope = Global, Type = String]

Dim strFile
If not World.Globals.Browserman.Simulating then
  ' Wrapped in if statment to only pull up browswer for simulated or real runs
  ' and not virtual runs, i.e. pressing finish searching for red...
  World.Globals.PauseGenerator.StallUntilETSIs 0
  strFile = SelectFile( )
  World.Globals.PropertyChanger.SetGlobal "SelectedFilePath", strFile
end If

Function SelectFile( )
    Dim objExec, strMSHTA, wshShell

    SelectFile = ""
    ' For use in "plain" VBScript only:
     strMSHTA = "mshta.exe ""about:<input type=file id=FILE>" _
              & "<script>;new ActiveXObject('Scripting.FileSystemObject')" _
              & ".GetStandardStream(1).WriteLine(FILE.value);close();resizeTo(0,0);</script>"""

    Set wshShell = CreateObject( "WScript.Shell" )
    Set objExec = wshShell.Exec( strMSHTA )

    SelectFile = objExec.StdOut.ReadLine( )

    Set objExec = Nothing
    Set wshShell = Nothing
End Function

That’s really cool! I’m just getting started with scripting in the Biomek software, is the scripting interface standard Visual Basic script? And is there a cheat sheet out there for accessing Biomek state variables like “World.Globals.Browserman.Simulating”?

I tried a bunch to ask about that. You have to press “Cntl Shift Alt REDACTED” at the same time to enter the debug mode and open the editor to track down variables. Would love for someone like @EricSindelar_Hamilton frok Beckman to jump on this forum though one day!

*Update - Someone has warned me that Beckman really really really doesn’t want the mysterious alien finger key combination that helps user to stuff on their machine get out. Ask your FSE tell you today though and keep pressure on them.

1 Like

How many fingers did the inventor of that one have :thinking:

Looking forward to trying it out though! Thanks for the tip

Thanks for the feedback. I’m glad it can be done and that I’m just doing something wrong! I ended up using booleans that were set in a vbscript for which labware to use and then queried it Method Launcher’s “Guided Labware Setup” commands. It seems to be working well. The software is Biomek5

I’ve been asking for this manual for years! Lol. There is a biomek user forum that’s been around for many years and has a lot of examples from their World library. You could try checking that out.

1 Like

I worked at Beckman for quite some time and still know a fair few people. I look back quite fondly on my Biomek days. I’ll gently encourage someone to try and get involved.


Please can share the link of the forum ?

Hi All,

The website used to be:

It looks like that forum was taken down. It now displays a “This community is not available” webpage. I hope that they bring it back, there was some good ideas on there even outside of the VBscript stuff. I’m really disappointed!

1 Like

Please can share some VBscript code they use it …

What’s the question?

you mean “ctrl shift u” ? :slight_smile:

1 Like

Still looking for it?

How I usually solve (most) scripting issues: Write everything (data handling, etc.) in python code, than call this via “Run program” and get it back into the biomek software.
Much easier than (slowly) dying VBS.

Has anyone explored the idea of implementing a tip counter into their methods on the Biomek software 5?

You can use VBScript to cantrol MPH96 for tipcounter.

By MPH96, are you referring to a 96 rod multi channel pipetting head? Also, the instrument I’m working on only has an 8 channel pod.