Archive

Posts Tagged ‘tools’

Sigrok Compatible ZeroPlus Logic Cube LAP-C USB Logic Analyzers Support up to 32 Channels, 75 MHz Bandwidth

December 4th, 2017 1 comment

Back in 2015, I discovered USB123 USBee AX PRO, an ultra cheap logic analyzer (now $5 shipped) with 8 channels, and up to 24 MHz. I purchased one at the time, and successfully tested it with Sigrok & Pulseview open source tools that now work in Linux, Windows, Mac OS, FreeBSD, Android, and several other operating systems.

As I read through my list of RSS feeds today, I noticed Peter Scargill had tested ZeroPlus Logic Cube Lap-C 322000 logic analyzer also connected to your PC via USB, but with better specifications including 32-channels, and 75 MHz. Peter used the company’s Windows software (ZEROPLUS Logic Analyzer LAP-C_Standard_V3.14.03), but a quick search confirmed ZeroPlus Logic Cube Lap-C family is supported by Sigrok.

Click to Enlarge

LAP-C 322000 is the top model from the family with the following hardware specifications:

  • Sample Rate – Internal clock (timing mode): 100Hz~200MHz; external clock (state mode): 100MHz
  • Bandwidth – 75MHz
  • Working Range – -6V~+6V
  • Accuracy – ±0.1V
  • Memory – 64Mbit, i.e. 2Mbit per channel with up to 512Mbits with compression enabled
  • Trigger – Condition: Pattern/Edge; 32 channels; trigger count: 1~65535
  • Phase Errors: < 1.5ns
  • Maximum Input Voltage: ±30V
  • Impedance:500KΩ/10pF
  • Power Supply – 5V/500mA via USB port
  • Safety Certification – FCC / CE / WEEE / RoHS / REACH

Click to Enlarge

The hardware is based on ZEROPLUS ZP-322MB-5 which is believed to be a custom ASIC from the company, Genesys Logic GL660USB (USB2.0 to IEEE-1284 / DMA bridge), Cypress SRAM, and various other chips as explained in the sigrok page.

The company’s software supports Windows 2000 to Windows 10 with plenty of features (Waveform display, filter, filter delay, trigger delay, protocol analysis, etc..), and you can read a detailed review of the device used with the Windows software if you are interested. If you prefer open source software, or run another operating system Sigrok should be a worthwhile alternative.

ZeroPlus Logic Cube LAP-C 322000 is not a low cost part as it goes for $1,599 on Amazon, but other models with the same 75MHz bandwidth, only 16-channels, a lower clock speed (up to 100 MHz), and less memory (512Kbits) such as Zeroplus LAP-C 16032 can be purchased for about $135 on Amazon or eBay. More details should be available on ZeroPlus website.

WifiMETRIX Wi-Fi Networks Analyzer Supports Packet Injection, Throughput Analysis

November 2nd, 2017 No comments

Nuts about Nets (that’s the company name…) WifiMETRIX is a dual band WiFi diagnostic tool used to analyze, monitor and troubleshoot Wi-Fi networks. The handheld device implements two main features:

  • AirHORN RF signal / channel generator that transmits RF signals for each of the Wi-Fi channels, and aids in testing Wi-Fi antennas, RF shields and wireless networks.
  • WiFiPROBE for per channel’s throughput analysis

The device operates in standalone mode and does not need to associate with the access point to perform the functions.

WifiMETRIX technical specifications:

  • Dual-band 802.11 Wi-Fi chip
  • Antennas / connectors
    • Dual-band antenna for 2.4 and 5.x GHz ISM bands
    • Standard 50 ohm SMA antenna connector
    • 50 ohm SMA terminator to protect antenna connection
    • SMA terminator (dummy load) also used for calibrating the device
  • Functions
    • AirHORN channel / signal generator functionality (packet injection)
    • WifiPROBE channel analyzer functionality
  • Display – 128×64 built-in LCD screen
  • USB – 1x micro USB port for charging
  • Dimensions – 210mm x 155mm x 39mm (Solid aluminum case plus silicon rubber boot protector)
  • Weight – 425 grams
  • Certifications – CE and FCC compliance

The AirHORN feature can be used to test WiFi antennas & amplifiers, test the effectiveness of RF shield designs,  stress-test wireless networks, align directional Wi-Fi antennas, quick evaluation of receiver performance, and locating Wi-Fi dead spots.

The WifiPROBE feature can be used to detect presence of RF interferences,  determine whether performance can be improved by using a different channel, quantify expected change in performance that would result from using a different channel,  configure Wi-Fi networks with the goal of improving throughput performance, and as a tool to help placing Wi-Fi devices into a location offering the best performance.

Click to Enlarge

You can find how to use the device in the documentation page, which also explains how to interpret the results. The WiFiMETRIX is on back order on Seeed Studio for $295 with shipping expected on November 11.

Testing Google’s GNSS Analysis Tool for GPS, GLONASS, Galileo, Beidou…

November 1st, 2017 No comments

Google has recently released GNSS Analysis Tool to process and analyze Global Navigation Satellite System (GNSS) raw measurements from Android devices. This is mostly designed to enable manufacturers to see whether their GNSS receivers are working as expected.

The tool can also be used for research and to learn more about GNSS, and there are two components:

  • GNSS Analysis tool itself available for Windows, Linux, or Mac OS X
  • GNSS Data Logger app working with Android 7.0 or greater phones that support raw measurements.

You can download both from the release page on Github. I’ve given it a try with a computer running Ubuntu 16.04 and Xiaomi Mi A1 smartphone, but you can the analysis tool even f you don’t have Android 7.0+ smartphone, as sample data is included.

I downloaded GnssAnalysisLinuxV2.4.0.0.zip, and extracted the content in ~/Desktop/GnnsAnalysisFiles directory as instructed.

Click to Enlarge

Now we can open a terminal window and install the utility:

The last command will download MATLAB runtime, and other necessary files and may take a few minutes (around 10 minutes here). Once it’s done, it should show the installer for GnssAnalysisApp 2.400.

Click next and select installation directories for the app and MATLAB Runtine R2016a…

… and click on Install. A bit more patience, and we’ll be able to run the tool using MATLAB Runtine installation directory as parameter:

This will show the control panel below.


Click on Find Log File but and load demofiles/gnss_log_2016_06_30_21_26_07.txt, then click on Analyze & Plot, and it will open many different windows, analyzing the GPS/GNSS data.

Click to Enlarge

People familiar with GNSS will know how to analyze this data, but this will feel like gibberish to anybody unfamiliar with the intricacies of GPS or other GNSS systems. A good way to better understand the data, and learn more about GPS is to close all the windows, and click on “Make report” button with the Android logo instead. This will create a file called GnnsAnalysisReport.html giving some more useful information and whether a given test passed or failed, for example:

When there you can read the analysis, and learn more from the results. Using sample data is fun, but let’s try to use the Android app to gather our own data with Xiaomi Mi A1 smartphone running Android 7.1.2. Once the app (Gnsslogger.apk) is installed, place your phone in an open location, start the app, enable the options in the SETTINGS tab, switch to the LOG tab and tap START LOG.

Click to Enlarge

Leave the app gathering data for a few minutes, optionally setting a timer, and then tap on STOP & SEND button, which should open Android’s share menu, and in my case I simply sent the log to my email, and received it with SensorLog subject with attachment. I could load the attachment, but after clicking on Analyze & Plot the log window reported “No raw measurements read from this file.”. I did have some data in my file, but I had no “Raw” lines, while the sample had some:

So that likely means my phone does not provide any raw GNSS data.

uCAN CAN Ethernet Converter and Logger is Based on Orange Pi Zero Board

September 19th, 2017 2 comments

The CAN bus is a serial communication protocol used in automotive and automation applications. The guys at ucandevices.pl have designed a solution around Orange Pi Zero board that allows you to log CAN bus data or act as a bridge between the CAN bus and Ethernet or WiFi. They call it “CAN Ethernet converter, CAN Logger, Linux CAN computer”. Sorry, no shorter name that I could find…

Click to Enlarge

uCAN (pronounced micro CAN) CAN Bus board specifications:

  • Main Board – Orange Pi Zero with Allwinner H2+ quad core cortex-A7 processor, 256 MB RAM
  • Network Connectivity – 10/100M Ethernet, 802.11 b/g/n WiFi
  • Can Bus – 2-pin terminal block; support for CAN version 2.0 support
  • Power Supply – DC 5V/2A via micro USB port
  • Dimension – 50 x 50 x 20 mm

The device comes pre-load with Debian distribution provided by Armbian plus various CAN tools. The getting started video below shows uCANTools web interface programmed with Node.js and running by default on the board, and explains how to use sockets instead to access the CAN data.


You can find the source code for uCANTools on Github, and the other pre-installed tools are based on can-utils package available from Debian repository.

uCAN CAN Ethernet converter is normally sold on Tindie for $50 plus shipping, but right as I was about to finish this article the price switched to $150 with the message “This seller is on vacation. Please return after Oct. 14, 2017 to purchase this awesome product!”. Oh well…

Mini Review of Nextion Enhanced NX8048K070 7″ Display with Enclosure for HMI Applications

June 21st, 2017 3 comments

I reviewed some Nextion touchscreen a while ago. Those were 2.4″ and 5″ serial TFT displays with optional resistive touch support that could be used in standalone mode, or connected to an MCU board over UART to control external hardware. The user interface could be designed and emulated in Windows based Nextion Editor program before uploading it to the display via UART or micro SD card. ITEAD Studio has recently launched Nextion Enhanced NX8048K070 family of 7″ displays with resistive or capacitive touch panels, and support for GPIOs. The company sent me the capacitive model with enclosure for evaluation, so I’ll have a quick look at the hardware and Nextion Editor in this mini review.

Nextion Enhanced NX8048K070_011C Unboxing

I received it in a package from “ITEAD intelligent solutions” with basic description with

  • Model: NX8048L070_011C with enclosure
  • Outside dimensions : 275 x 170 x 50 mm (That’s the package dimensions)
  • Product size: 218 x 150 x 22.5 mm
  • Gross weight: 0.598kg

Click to Enlarge

The display comes with a UART cable, or small micro USB power board, and a wall mounting kit.

Click to Enlarge

If we check the other side of the display, we’ll find the UART connector on the left, a micro USB slot on the bottom right, and the GPIO connector that inconveniently requires a flat cable, so you’d have to make your own board to connect external hardware, or purchase the company’s $5 expansion board, which is not included in the kit by default. There’s also the almost-compulsory typo found on many devices made in China: “Human Mechine Interface”.

Click to Enlarge

The thickness is indeed 22 mm, but if you fully embed the display into a wall, the visible thickness will be 6 mm.

You may have to open the bottom cover, as you’ll need to add a battery in case you want to use the RTC function.

Click to Enlarge

Let’s have a look an the main IC while we have the case open:

I close the case back, and power the display via the micro USB power supply board, and a USB power adapter.

Click to Enlarge

It’s a simple demo with a background image, some text, a slider, and 4 different pages, which I’ll demonstrate below after doing some simple modifications.

Nextion Editor and NX8048K070 Demo Sample

Nextion Editor is a Windows program, but a while ago, I was told it also worked with Wine in Ubuntu. So I downloaded the latest version (v0.47), and while the installation started, it eventually failed in Ubuntu 16.04. So I reverted to using Windows 7 in VirtualBox. I also downloaded and extracted Enhanced_Nextion_5.0-7.0_Demo.zip found at the bottom of Wiki page, which I then opened from Nextion Editor.

Click to Enlarge

The user interface will allow you to add various items from the Toolbox including text, scrolling text, numbers, buttons, pictures, progress bars, gauges, check boxes, and so on. As with the previous version, you’ll also need to import and convert font with a fixed size. The demo already has four of those defined. You can also add and link several pages with 4 pages used in the demo, and the Attributes section is used to defined parameters for the selected item

Click to Enlarge

I just added text. It should have been easy, but I was very confused at the beginning, since nothing would show up when I clicked on “Text” in toolbox. I could change the attributes, but the text would not be displayed. I went back to check the old review, and I used “Add Component” menu in Nextion v0.30 at the time, but that menu does not exist anymore. Finally, I noticed the 800×480 display was not shown completely, on the text was located on the top left of the UI. I delete the dozen text items I had created, and added “CNXSoft was here!” at the end of the list. The user interface is not really intuitive, so I’d still recommend to read the user guide, even some of the parts are outdated, as it should help getting started, and they have examples with Arduino. To control GPIOs on the display, you’d need to use cfgpio code.  In case, you run into troubles because the documentation is not quite as good as expected, you can always try your luck in the forums.

You can click on Compile to check for errors in your user interface, and then Debug to launch the simulator.

This will allow you to test the UI as if it was running in the display itself. You can even send keyboard or MCU commands. Once you are happy with the results, click on Operation->Upload to Nextion to upload the UI to the display. I had some troubles getting the display work when I connected it through my serial debug board via USB hub (the display would blink), but the problem was solved by connecting it directly to the USB power from my computer. The upload still failed as the demo is configured for the 5.0″ board, and it correctly detected a 7.0″ board. The fix was easy, as I just had to select Device ID, and change NX8048K050_011 to NX8048K070_011.

Click to Enlarge

After that the upload could start with the Nextion display properly detected.

It took 6 minutes and 35 seconds to upload the ~4MB user interface to the display, so it’s not really fast. That mean if you have  ~32MB UI, it would take close to 50 minutes. In that case, it would be much faster load the UI from the micro SD card. In that case, you need to copy the .tft file found via Nextion->File->Open build folder.

Here’s a quick overview and demo.

Nextion Enhanced 7″ display can be purchased for $88 with resistive touch and $108 with capacitive touch.

$46 TS100 Digital Programmable Soldering Iron is Controlled by STMicro STM32 MCU

December 5th, 2016 12 comments

I’m now using a $4 soldering iron which works most of the time for what I’m doing, but sometimes it does not seem to heat quite fast enough which may cause problems. I’m not soldering that often, so I did not think about getting a better one, but I’ve just come across an TS100 digital & programmable soldering iron with a OLED display showing the current temperature, and controlled by an STMicro STM32F103T8U6 micro-controller.

ts100-soldering-iron

The soldering iron also includes an accelerometer which allow the soldering iron to know when you are using it, so the temperature drops if it is inactive for over 5 minutes (sleep mode), and after 10 minutes of inactivity, the soldering iron automatically turns off.

TS100 soldering iron key specifications:

  • OLED Display
  • USB – 1x micro USB port for configuration
  • Temperature Range – 100 to 400 °C; 15 seconds to heat to 300 °C @ 19V; Sleep mode temp: 200 °C (default)
  • Power – 65 Watts (max @ 24V); 40W using 19V power supply
  • Supported Tips – TS-D24, TS-K, TS-BC2, TS-B2
  • Misc – 2x buttons to adjust temperature, calibrate temperature, and enter DFU (firmware update) mode
  • Power Supply – 12 to 24 V via DC5525 connector (an old laptop power supply will work provided it has a 5.5/2.5mm jack)
  • Dimensions – 96 x 16.5 Φ mm for operating unit, 72+33 mm x 5 mm Φ for heating unit
  • Weight – 33 grams

If you connect the TS100 to you computer via its USB port, you’ll be able to change config.txt to adjust default settings like temperature, temperature steps, sleep time, and so on, as well as change the boot logo, and update the firmware.

TS100 is also listed on Tindie where you’ll find a user’s manual, schematics, and source code for your STM32 soldering iron. The manufacturer also has a forum mostly in English, where people exchange ideas, and for example they released a firmware for left handed people.

I discovered the soldering iron thanks to a video by Andreas Spiess comparing irons of different price points: a 30-years old Weller Magnastat, Aoyue 968 A+, two cheaper soldering irons, namely 907 constant temperature soldering iron and Mustool MT223 not-so-adjustable temperature electric soldering iron, and of course TS100.

For each soldering iron, he tested the actual power draw during heating, whether the set temperature (360°C) is the actual temperature, heating speed, heat transfer, and showing special features of each iron. The video is really interesting to watch, but if you don’t have time that’s the summary at the end.

soldering-iron-comparison-tableTS100 performed really well for the price, although there’s about a 30 °C delta between the set and real temperature. I really like small form factor, fast heating and automatic power off feature. I’m pretty sure it will solve the issue I had with my $4 iron, so I was convinced an bought TS100 on Banggood for $45.55. I’ll use a laptop power supply to power it up, but if you don’t have a spare one DSY404-19V-2 power supply is recommended, and sells for $22.02 on Banggood.

Thank you Nanik!

Categories: Hardware, Video Tags: electronics, tools

Realtek RTL8710AF (PADI IoT Stamp) vs Espressif ESP8266 (ESP-07) WiFi RF Performance Comparison

October 27th, 2016 4 comments

After I posted about PADI IoT Stamp IoT kit based on RTL8710AF ARM Cortex M3 WiSoC yesterday, I was soon asked whether I could compare the RF performance against ESP8266 modules like ESP-12. I don’t have any equipment to do this kind of test, except for some simple test like testing range with WiFi Analyzer app, but I remember Pine64 told me they had some comparison data a little while, and accepted to share their results.

wifi-rf-performance-testingThe test setup is comprised of Litepint IQ2010 multi-communication connectivity test system and PC software, as well as the device under test (DUT) with PADI IoT Stamp (version with u.FL antenna connector) and ESP-07 ESP8266 module as a u.FL connector is required to connect the test system.

They’ve tested 802.11b, 802.11g, and 802.11n, but for IoT projects 802.11b is the most important as usually long range is more important than data rate. Test results below are based on CH1 input data with 1dBm compensation.

That’s the results for ESP8266…

esp8266-802-11b-test-data

ESP8266 802.11b Data, Spectral Mask and Constellation Diagram

.. and the results for RTL8710 using an 802.11b connection.

rtl8710af-802-11b-test-data

RTL8710AF 802.11b Spectral Mask and Constellation Diagram

The tables show peak and average power, LO leakage, EVM (Error vector magnitude), Frequency error and other parameters. The spectral mask, and constellation diagram are also shown for each case. If you’ve never studied or worked about RF signal, it’s quite all complicated, but can get some insights by reading Practical Manufacturing Testing of 802.11 OFDM Wireless Devices white paper.

A Spectral Mask describes the distribution of signal power across each channel. When transmitting in a 20 MHz channel, the transmitted spectrum must have a 0 dBr bandwidth not exceeding 18 MHz, –20 dBr at 11 MHz frequency offset, –28 dBr at 20 MHz frequency offset, and the maximum of –45 dBr and –53 dBm/MHz at 30 MHz frequency offset and above.

The Constellation Diagram is a representation of a signal modulated by a digital modulation scheme. It is useful to identify some types of corruption in signal quality. The EVM is a measure of the deviation of the actual constellation points from the ideal error-free locations in the constellation diagram (in % RMS or dB), and you’d want to keep this as small as possible.

In both diagrams, it appears that the signal is quite cleaner on PADI IoT stamp compared to ESP8266 module with more distortions. The diagram are not quite clear enough to check the Spectral Mask values. I’m sure we’ll get some more feedback in the comments section.

If you are interested in 802.11g and 802.11n results, you can access the rest of the report.

NXP Unveils MCUXpresso Development Tools for LPC and Kinetis Microcontrollers

October 25th, 2016 No comments

After NXP bought Freescale, you had development tools for Freescale Kinetis MCUs such as Design Studio or Kenetis SDK, and others such as LPCXpresso for NXP LPC microcontrollers. The company has worked to unifying software and tools support between its ARM Cortex-M MCU families, and has now announced MCUXPresso software and tools for both NXP Kinetis and LPC MCUs.

Click to Enlarge

Click to Enlarge

MCUXpresso unifies thousands of Kinetis and LPC microcontrollers under a set of compatible tools including

  • MCUXpresso SDK – Open-source software MISRA-compliant development kit (SDK) with peripherals drivers, wireless & wired connectivity stacks, middleware, real-time OS, getting started guides, API documentation, and application examples.
  • MCUXpresso IDE – Integrated development environment (IDE) for editing, compiling and debugging. It also integrates MCU-specific debugging views, code trace and profiling, multicore debugging, etc… Both free and professional edition of the IDE will be available, and LPCXpressor and previously Freescale Freedom & Tower platforms will be supported.
  • MCUXpresso config tools:
    • An SDK Builder enabling custom-built SDKs for specific MCUs or evaluation boards.
    • A graphical pins tool to assist with routing of internal signals to external pins, and generates ANSI-C source for the MCUXpresso SDK environment.
    • A clocks tool with a graphical representation of the MCU clock tree system, interactive user controls, and assistance with system fine-tuning.
    • A power estimation tool to allow application modeling and assessment of power consumption under user-defined parameters.
MCUXpresso SDK Architecture

MCUXpresso SDK Architecture

The MCUXpresso SDK and config tools will be available around the middle of next month, and beside built-in support for the MCUXpresso IDE, the SDK can also work with IAR Embedded Workbench, ARM Keil  MDK, Atollic TrueSTUDIO, SOMNIUM  DRT, and others. That’s not a bad thing since MCUXpresso IDE will only be released in March 2017.

You’ll find many more details, and download links for the SDK on MCUXpresso page.