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.
The EEZ Studio is an open source cross-platform modular visual tool aimed to address various programming and management tasks for EEZ BB3 open source T&M chassis and EEZ H24005 programmable power supply and other T&M devices that support SCPI from manufacturers such as Keysight, Rigol, Siglent, etc.
- Modular visual development environment for designing TFT display screen decorations and defining user interaction (HMI)
- Supported modules (project features):
- Settings (General, Build, Configurations, Files)
- Actions
- Data
- Extension definitions
- GUI (Pages, Widgets, Styles, Fonts, Bitmaps)
- SCPI (command subsystems, commands and context sensitive help)
- Shortcuts
- Generate C++ code for HMI functionality that can be directly included in STM32CubeIDE for BB3 or Arduino IDE for H24005
- Instrument definition file (IDF) builder with context sensitive SCPI commands help (based on Keysight’s Offline Command Expert command set XML structure) suitable for EEZ Studio Workbench (ESW) and Keysight Command Expert
- SCPI command help generator based on bookmarked HTML generated directly from .odt file using EEZ WebPublish extension for OpenOffice/LibreOffice.
New functionality is under development thanks to the sponsorship of the NGI0 PET fund from NLnet, which will enable quick and easy creation of flow diagrams using ready-made components. The target for executing the flow chart can be PC or EEZ BB3. This will be realized in five milestones:
- M1 - Visual editor
- M2 - Interpreter for PC
- M3 - Interpreter for BB3
- M4 - Debugger for PC
- M5 - Debugger for BB3
Interpreting the flowchart on a PC will allow the creation of a dashboard for remote control of various T&M instruments (including EEZ BB3). The debugger will simplify and speed up the development of flowcharts as it will allow step-by-step execution, setting breakpoints, etc. Adding a flow chart interpretation on EEZ BB3 will open up entirely new possibilities for quickly creating different test scenarios, automating measurement data collection, and more.
- Dynamic environment where multiple instruments and other "widgets" can be placed and easily accessed
- Session oriented interaction with each SCPI instrument
- Support for serial (via USB) and TCP/IP communication
- Direct import of ESP generated IDFs and Keysight’s Offline Command Expert command sets
- IEXT (Instrument EXTension) catalog with growing number of supported instruments (Rigol, Siglent, Keysight, etc.)
- History of all activities with search/content filtering
- Quick navigation via calendar ("heatmap") or sessions list view
- Shortcuts (hotkeys and buttons) that can be user defined or come predefined from imported IDF. The shortcut can contain single or sequence of SCPI commands or Javascript code.
- Javascript code for task automation (e.g. logfile, or programming list upload/download, etc.) can be also assigned to the shortcut
- SCPI commands context sensitive help with search
- File upload (instrument to PC) with image preview (e.g. screenshots)
- File download (PC to instrument) automation for transferring instrument profiles
- Simple arbitrary waveform editor (envelope and table mode)
- Displaying measurement data as graphs
- FFT analysis, harmonics and simple math functions (Period, Frequency, Min, Max, Peak-to-Peak, Average)
- Export graphs as .CSV file
Scheduled for future releases:
- Support for other connections (i.e. VXI-11, USBTMC, IVI) using 3rd party open source
- Instrument extensions for popular instruments from other vendors
- Print and PDF export
- (External) Data logger functionality
- Protocol analyzer using 3rd party open source
- Import/export of all working data (i.e. measurements, session history, shortcuts, settings, etc.) for archiving purposes or easier integration with e.g. ELNs
64-bit OS is required in all cases.
Download eezstudio-linux-x64.tar.gz
, unpack and select eezstudio
.
Download eezstudio-mac.zip
, unpack and move eezstudio.app
to Applications.
Download and start EEZ_Studio_setup.exe
.
- Install
Node.JS 8.9.x
or newer - Install
node-gyp
, more information at https://github.com/nodejs/node-gyp#installation
sudo apt-get install build-essential libudev-dev
git clone https://github.com/eez-open/studio
cd studio
npm run build
npm start
First: install dependencies:
sudo npm install -g electron-installer-debian
Then build the package:
npm run build
npm run build-installation
npm run build-deb
Or in one step:
npm run build-deb-all
Built DEB package is located in installation/linux
.
First, install dependencies:
sudo npm install -g electron-installer-redhat
sudo apt install rpm
Then build the package:
npm run build
npm run build-installation
npm run build-rpm
Or in one step:
npm run build-rpm-all
Built RPM package is located in installation/linux
.
sudo npm install -g electron-installer-snap
sudo apt install snapcraft
npm run build
npm run build-installation
npm run build-snap
Built Snap package is located in installation/linux
.
Execute ./docker_start.sh
first, then execute ./docker-build.sh
inside docker container.
Installation packages are located inside builder-output
folder.
Download and start Zadig. Select your device and click "Install WCID Driver" button.
Follow instructions described here under "USB connection".
- Linux:
~/.config/eezstudio/storage.db
- Mac:
~/Library/Application\ Support/eezstudio/storage.db
- Windows:
%appdata%\eezstudio\storage.db
Creating database someplace else can be done from ESW Settings.
- Linux:
~/.config/eezstudio/extensions
- Mac:
~/Library/Application\ Support/eezstudio/extensions
- Windows:
%appdata%\eezstudio\extensions