Logic2 software, invoke to connect to Logic Pro 16 and not MSO

Working on Linux, I have a system with both a Logic Pro 16 and LogicMSO connected to it. I’m writing automation software to run the new MSO device at the same time that I run the Pro16 device.

My existing system works on a headless machine where I invoke Logic2 in a “xvfb” wrapper. I then connect to it via the automation interface and my software does its thing.

I am now adding a MSO to this system. Without trying to run the Pro16, things work fine; I am able to use the Python library to access the MSO. But when Logic2 is started to handle the Pro16, it instead grabs the MSO.

Since this becomes a headless system in production, is there a command line option or other configuration for the Logic2 software to tell it to only grab the Pro16 and ignore the MSO?

@trevor.marvin Oh interesting! Sorry for the trouble with that. We haven’t prepared documentation for this particular use case (i.e. ignore MSO when both a Logic analyzer and an MSO are connected).

For Logic analyzer automation scripts, we have a method for specifying the device ID for the Logic analyzer you want it to connect to (device_id inside of the start_capture() function). However, I believe if an MSO is connected alongside a Logic analyzer, it will override that selection entirely. It was designed for when multiple Logic analyzers are connected to the same PC, but not for a mix of Logic MSO and Logic analyzers.

I’ll double check with our software team to see if there is a workaround.

The work-around I have at the moment is to drop back to a version of Logic2 that prior to the MSO release; therefor it ignores the MSO. A simple feature request would just be a flag on startup to ignore any MSOs found.

FWIW in requests for future development:

  • Being able to run more than one MSO, concurrently, with the automation library would do great for my needs.
  • Running the Logic with an automation interface like what y’all have for the MSO would be much nicer to work with (w/o the need to fire up Logic2 on a headless device), for all my existing systems that are built on Logics and have many channels.

Hi @trevor.marvin ,

You can set the environment variable SALEAE_IGNORE_DEVICE to one of “Logic”, “Logic16”, “Logic 4”, “Logic 8”, “Logic Pro 8”, “Logic Pro 16”, “Logic MSO” so that Logic 2 does not try to acquire that device type. You will probably want to do this from the command line instead of as a system-wide setting. This only works for device types right now, so you can’t ignore individual Logic MSOs, for instance.

Hope that helps - if you run into issues, please let me know.

Ryan

Thank you, that sounds like a decent approach for now.