The labscript Python library provides a translation from simple Python code to complex hardware instructions. The library is used to construct a "connection table" containing information about what hardware is being used and how it is interconnected. Devices described in this connection table can then have their outputs set by using a range of functions, including arbitrary ramps.
Original comment by Philip Starkey (Bitbucket: pstarkey, GitHub: pstarkey).
Ideas I've had to improve this:
Ability to pop-out BLACS tabs into their own windows (so that BLACS can span multiple monitors)
Shrink the padding around controls (when I first designed the Qt widgets, I didn't know as much as I do now about layout margins and spacings)
Ability to graphically (via settings panel) alter the distribution of notebooks (e.g. something other than the 2x2 grid we have now)
Ability to launch the tab in a secondary instance of BLACS that is runs on another PC
Virtual devices - A mashup of controls from various tabs. For example you could have a "MOT" device tab with all the IO controls relevant to that, etc. The framework for this actually already exists within BLACS, it's just never been documented or actually used to make a virtual device tab.
Original report (archived issue) by Ian B. Spielman (Bitbucket: Ian Spielman).
We don't know how to describe this, but we have so many blacs tabs that they are a mess to manage. A better organizational principle is desired.