eez-open / studio

Cross-platform low-code GUI and automation
https://www.envox.eu/studio/studio-introduction/
GNU General Public License v3.0
601 stars 99 forks source link
eez-studio flow-based-programming instrument-extensions lvgl scpi-commands scpi-instrument

GitHub release license liberapay Downloads

Ownership and License

The contributors are listed in CONTRIB.TXT. This project uses the GPL v3 license, see LICENSE.TXT. EEZ Studio uses the C4.1 (Collective Code Construction Contract) process for contributions. To report an issue, use the EEZ Studio issue tracker.

Important note: Envox d.o.o. does not claim any ownership rights to the source code generated by the Build command except in the case of a project that uses EEZ Flow when it is given under the MIT license.
The user owns the .eez-project file and all the source code generated from the file template definitions that are part of eez-project file. EEZ Studio may also generate files that are under MIT, BSD 2.0 or Public Domain license.

Links

Introduction

EEZ Studio is a free and open source cross-platform low-code visual tool for desktop and embedded GUIs with LVGL support. Built-in EEZ Flow enables the creation of complex scenarios for test and measurement automation, and the Instruments feature offers remote control of multiple devices and T&M equipment including EEZ BB3 T&M chassis and EEZ H24005 programmable power supply and any other T&M devices that support SCPI from manufacturers such as Keysight, Rigol, Siglent, etc.

EEZ Studio Project

EEZ Studio Project

Flow

EEZ Studio Instrument

EEZ Studio Instrument


New functionality is under development thanks to the sponsorship of the NGI0 PET and NGI0 Entrust funds from NLnet. The following milestones have been achieved so far:

Installation

64-bit OS is required in all cases.

Linux

Depending on your linux distribution, choose one of the listed packages (.deb, .rpm) and start the installation using the associated installer. In addition, there is a self-executing .AppImage version that, after downloading, needs to enable the Allow executing file as program under file Permissions before starting it. If you encounter a problem running the .AppImage version on your Linux distribution, try running it using the --no-sandbox option, i.e. ./EEZ-Studio-[version].AppImage --no-sandbox

Mac

Download eezstudio-mac.zip, unpack and move eezstudio.app to Applications.

Windows

Download and start EEZ_Studio_setup.exe.

Nix

The Nix flake provides a derivation for EEZ Studio or an overlay that provides that derivation. It can be used to install the project using Nix package manager.

Build and run from source (all operating systems)

Only Linux:

sudo apt-get install build-essential libudev-dev libnss3

Only Raspbian:

Install Node.js 16 and npm on Raspberry Pi: https://lindevs.com/install-node-js-and-npm-on-raspberry-pi/

sudo apt-get install build-essential libudev-dev libopenjp2-tools ruby-full
sudo gem install fpm

All platforms:

git clone https://github.com/eez-open/studio
cd studio
npm install
npm run build

Start with:

npm start

Create distribution packages (except MacOS and Raspbian):

npm run dist

On MacOS:

npm run dist-mac-arm64

or

npm run dist-mac-x64

On Raspbian:

npm run dist-raspbian

Nix

To build:

nix build 'github:eez-open/studio'

To start:

nix run 'github:eez-open/studio'

USB TMC

The USB TMC driver must be installed if you want to access the T&M instrument using the USB-TMC interface from EEZ Studio Instrument section.

Windows

Download and start Zadig. Select your device, select libusb-win32 and press "Replace Driver" button:

Zadig

Linux

You will probably need to add your Linux account to the usbtmc group before you can access the instrument using EEZ Studio. Connect your instrument with a USB cable and turn it on. Wait until booting is complete. Now check the instrument group name by entering the following command:

ls -l /dev/usbtmc*

In case it is root, enter the command:

sudo groupadd usbtmc

Now, add your account () to the group:

sudo usermod -a -G usbtmc <username>

A reboot is required. After that, the gid of /dev/usbtmc0 should be set to usbtmc and you are ready to use your instrument via USB-TMC interface.

FAQ

Q&A Wiki

Q: Where is the database file by default? A: Depending on the operating system, it can be:

The default created database as well as its location can be changed later through the options in the Settings section of EEZ Studio.

Q: Where are the IEXTs (Instrument EXTensions) used to access T&M instruments stored? A: Depending on the operating system, it can be: