Xprotolab Plain
The Xprotolab Plain is a multi scope board created by Gabotronics. It is the most inexpensive but feature rich oscilloscope in the market. It consists of a simple DIP module with a USB interface. Visualization of the signals and controlling the oscilloscope is done on the PC interface software (open source). The Xprotolab Plain is similar to the original Xprotolab, but doesn't have the display and buttons, so it only works with the USB interface. The board measures only 1 x 2 inches, and can be mounted directly on a breadboard. The Xprotolab can also be used as a development board for the AVR XMEGA microcontroller.
Our Package includes
- Xprotolab Plain (Connectors were soldered)
- 10 x IC hook
- Micro USB Cable
Documents & links
HW Specification
Pin description
Name | Description | Comment |
---|---|---|
+5V | +5V Input voltage | Do not apply +5V if using the USB port |
+3V | +3.3V Output voltage | 200mA max output |
GND | Ground | It is recommended to use all ground pins to reduce voltage offset errors. |
CH1 | Analog Channel 1 | Input range : -14V to +20 V |
CH2 | Analog Channel 2 | Input range : -14V to +20 V |
AWG | Arbitrary Waveform Generator | Output range : +/- 2V |
EXT | External Trigger | Digital input, max 5.5V |
Logic 0 | Digital Channel 0 | I2C Sniffer signal : SDA |
Logic 1 | Digital Channel 1 | I2C Sniffer signal : SCL |
Logic 2 | Digital Channel 2 | UART Sniffer signal : RX |
Logic 3 | Digital Channel 3 | UART Sniffer signal : TX |
Logic 4 | Digital Channel 4 | SPI Sniffer signal : /SS |
Logic 5 | Digital Channel 5 | SPI Sniffer signal : MOSI |
Logic 6 | Digital Channel 6 | SPI Sniffer signal : MISO |
Logic 7 | Digital Channel 7 | SPI Sniffer signal : SCK |
General specifications
- ATXMEGA32A4U 36KB Flash, 4KB SRAM, 1KB EEPROM
- Module size : 1.980“ x 1.01”
- PDI interface
- USB connectivity : Windows, Linux, MAC, Android
Oscilloscope specifications
- 2 Analog inputs
- Maximum sampling rate : 2MSPS
- Analog bandwidth : 200kHz
- Resolution : 8bits
- Input impedance : 1MΩ
- Buffer size per channel : 256
- Input voltage range : -14V to +20V
Logic Analyzer specifications
- 8 Digital Inputs, 3.3V level
- Maximum sampling rate : 2MSPS
- Frequency counter : 16Mhz
- Protocol sniffer : UART, I2C, SPI
- Internal pull up or pull down
- Buffer size : 256
AWG specifications
- 1 Analog output
- Maximum conversion rate : 1MSPS
- Analog Bandwidth : 44.1kHz
- Resolution : 8bits
- Output current : +/- 7mA
- Buffer size : 256
- Ouput voltage : +/- 2V
How to use
Xscopes Qt program
Available Boards
Xprotolab plain is available on ODROID-XU4, C1/C1+ and C2 with Ubuntu.
And you can use it on Ubuntu Host PC (x86).
Build & Run
1. Install Qt packages
(1) XU4
- target
$ sudo apt-get update $ sudo apt-get upgrade -y $ sudo apt-get install -y qt5-default libqt5serialport5-dev libusb-1.0-0-dev $ sudo apt-get --reinstall install libgles2-mesa
(2) C2
- target
$ sudo apt-get update $ sudo apt-get upgrade -y $ sudo apt-get install -y qt5-default libqt5serialport5-dev libusb-1.0-0-dev
(3) C1/C1+
- target
$ sudo apt-get update $ sudo apt-get upgrade -y $ sudo apt-get install -y qt5-default libqt5serialport5-dev libusb-1.0-0-dev
In case of C1/C1+, you should add swap space due to its limited RAM.
Before build operation of xscopes-qt, run the following steps.
- target
$ sudo fallocate -l 2G /swapfile $ sudo mkswap /swapfile $ sudo swapon /swapfile
After build, you can free the swap space as following.
- target
$ sudo swapoff -a
(4) Ubuntu PC (x86)
- host
$ sudo apt-get install -y qt5-default libqt5serialport5-dev libusb-1.0-0-dev $ sudo apt-get install libudev-dev
2. Get soure code
- both
$ sudo apt-get install git $ cd ~ $ git clone https://github.com/ganzziani/xscopes-qt
3. Build
- both
$ cd ~/xscopes-qt $ qmake $ make -j4
It takes a couple of minutes to compile and get the xscope image.
If you encounter this error during build process, reinstall mali-x11 package.
https://forum.odroid.com/viewtopic.php?t=31463#p234775
- both
g++ -Wl,-O1 -o xscope main.o xprotolabinterface.o qcustomplot.o libusbdevice.o fft.o complex.o customtheme.o serialp /usr/bin/ld: cannot find -lGLESv2
- both
$ sudo apt-get install --reinstall mali-x11
4. Run
- Run xscope command as a root
- both
$ sudo ./xscope
- Then, connect Xprotolab to your Board using micro USB cable
- Click “Connect” button in the tab [Options] → [Connection]
[ Tips! ] Run without sudo
It's an optional tip, so you don't need to follow the steps by default.
If you want to run the program without sudo such as desktop icon, you need to change the permission and reload udev.
- Remove the USB cable of Xprotolab from your board
- Add the following line into a udev rules file.
For C2,
add the following line in /etc/udev/rules.d/10-odroid.rules.
SUBSYSTEMS=="usb", ATTRS{idVendor}=="16d0", ATTRS{idProduct}=="06f9", GROUP="users", MODE="0666"
For XU4 and C1/C1+,
add the following line in /etc/udev/rules.d/10-odroid.rules.
SUBSYSTEM=="usb", ATTR{idVendor}=="16d0", ATTR{idProduct}=="06f9", GROUP="plugdev"
And for Ubuntu PC (x86),
add the following line in /etc/udev/rules.d/100-usb.rules or another rules file you already have.
SUBSYSTEM=="usb", ATTR{idVendor}=="16d0", ATTR{idProduct}=="06f9", MODE="0666", GROUP="plugdev"
- Then reload the udev
- both
$ sudo udevadm control --reload
- Connect Xprotolab and Click “Connect” button again
Xprotolab on Other OS
Learn more on this page if you want to run it on other OS.
Other OS programs