How to use STONEtech STVC035WT-01 intelligent TFT LCD module with Arduino

Displays have over time, emerged as one of the best ways to drive user interactions on any device. They make it easy to collect inputs and present information (outputs) to users in a graphical, easy to understand format. This usefulness has led to improvements in their quality, with improved resolution and low power features, but almost little has changed when it comes to the complexity of creating beautiful user interfaces for them. This is why the team at STONETech created the STVC035WT-01 intelligent Smart display which we will explore for today’s tutorial.

The STONETech STVC036WT display is a 16-bit, 3.5″ display with a 320×480 (RGB) resolution, has a 49.0 x 73.4mm viewing area, and pixel spacing of 0.1905mm×0.0635mm (H×V). The display is a Class A industry Panel with an Industry level 4 wire resistance based touch screen, all layered on an integrated CPU, driver, and flash memory with several communication interfaces to enable it to connect to data sources like microcontrollers. For communication with a microcontroller, the display supports serial communication protocols like UART/TTL, RS232, and RS485, ensuring it can communicate with any kind of microcontroller or industrial computers. The UART/TTL pin on the Display supports both 3.3v/5v logic level which adds another layer of ease to the use of the display as users need not worry about the need for logic level shifters when building using a microcontroller that operates on either of the voltage level mentioned.

How to use STONEtech STVC035WT-01 intelligent TFT LCD module with Arduino – [Link]

Programmable Thermostatic Switch using AD22105

This project simply switches the system OFF or ON whenever the temperature rises at the desired set point.  The desired setpoint can be set using a fixed resistor R6 or PR1 trimmer potentiometer. Use any of at a time R6 or PR1. You can calculate the setpoint resistor R6 using the following equation.

A relay is provided to switch ON or OFF the load. The relay can switch 7Amps/250V AC load. D2 LED indicates the relay operation. J1 provided to choose normally closed or open options for the relay. This project is built using AD22105 IC from Analog devices.  The AD22105 is a single-supply semiconductor thermostat switch that uses circuit architecture to realize the combined functions of a temperature sensor, set point comparator, and output stage all in one IC. By using one external resistor or trimmer pot, the AD22105 can be programmed to switch at any temperature selected by the system designer in the −40°C to +150°C range. The internal comparator is designed to switch accurately as the ambient temperature rises past the set point temperature. When the ambient temperature falls, the comparator relaxes its output at a somewhat lower temperature than that at which the comparator originally switched. The difference between the switch and un-switched temperatures, known as the hysteresis, is nominally 4°C.

Programmable Thermostatic Switch using AD22105 – [Link]

Free Elektor Article – Spiral MicroTesla

Original publication: Elektor magazine 6/2017, page 58.
Author: Daniel Eindhoven.
Free download expires Friday 27 December 2019.

1. Introduction

It seems to be an unwritten rule in Hollywood: there must be an assortment of devices that crackle and spark in the lab of a mad scientist. It doesn’t matter that all those noises and flashes have no apparent purpose, as long as the effects look spectacular!

2. Quick Features of the Project

  •  High voltage Tesla coil
  • Uses printed PCB coils
  • Powered by USB charger or adapter
  • Safe sparks
  • Complete DIY kit available (limited to stocks)

3. Downloads

How to use STONEtech STVC035WT-01 intelligent TFT LCD module with Arduino

Displays have over time, emerged as one of the best ways to drive user interactions on any device. They make it easy to collect inputs and present information (outputs) to users in a graphical, easy to understand format. This usefulness has led to improvements in their quality, with improved resolution and low power features, but almost little has changed when it comes to the complexity of creating beautiful user interfaces for them. This is why the team at STONE Tech created the STVC035WT-01 intelligent Smart display which we will explore for today’s tutorial.

The STONE STVC035WT-01 display is a 16-bit, 3.5″ display with a 320×480 (RGB) resolution, has a 49.0 x 73.4mm viewing area, and pixel spacing of 0.1905mm×0.0635mm (H×V). The display is a Class A industry Panel with an Industry level 4 wire resistance based touch screen, all layered on an integrated CPU, driver, and flash memory with several communication interfaces to enable it to connect to data sources like microcontrollers. For communication with a microcontroller, the display supports serial communication protocols like UART/TTL, RS232, and RS485, ensuring it can communicate with any kind of microcontroller or industrial computers. The UART/TTL pin on the Display supports both 3.3v/5v logic level which adds another layer of ease to the use of the display as users need not worry about the need for logic level shifters when building using a microcontroller that operates on either of the voltage level mentioned.

A summary of the features and specification of the display are shown below:

  • Cortex m4 CPU
  • UART interface (RS232/RS485/TTL) ;
  •  256-byte register;
  • 128 kb variable memory;
  • 128 MB flash memory, expandable to 1 GB;
  • GUI design software;
  •  A customized command set;
  • 8-channel curve trend chart memory;
  •  extremely fast variable display response speed;
  • A single-page supports up to 128 display variables;
  • Integrated real-time clock RTC,
  • Touch buzzer sound function;
  • Support software 90 degrees, 180 degrees, 270 degrees screen rotation, adjust the appropriate visual Angle;

One of the major benefits of using this display is its compatibility with the STONE TOOL GUI Designer which allows the development of User Interfaces in a fast and easy manner.

To demonstrate the capabilities of the display, we will build a heart rate monitor using an Arduino Uno with the MAX30100 pulse oximetry and heart rate sensor. The Arduino will serve as the brain of the project and perform the simple task of obtaining the heart rate and blood oxygen data from the MAX30100, displaying it on the screen.

At the end of this tutorial, you would know how to interface Arduino boards with the STONETech displays, and also how to interface sensors like the MAX30100 with the Arduino.

Required Components

The following components are required to build this project;

  • Arduino Uno
  • STVC035WT-01 (or any other STONE Tech display)
  • MAX30100 Pulse Optometry sensor
  • MAX3232
  • Bread Board
  • Jumper Wire
  • Power Bank/Battery with a 9v Jack
MAX30100 Sensor
MAX30100 Sensor

Creating the GUI

There are 2 major steps associated with the development of devices using any of the STONEtech displays:

  1. Creating the GUI using the STONE GUI Design Tool and exporting the GUI to the display.
  2. Connecting the display to the microcontroller and writing the code to integrate the microcontroller with the display.

Our development process for today’s project will follow this outline. We will first create the GUI for the project after which we will proceed to write the firmware to interface the microcontroller with the display.

1. Creating the GUI using the STONE TOOL GUI Designer

There are two major ways of creating a GUI. One is to create the GUI using only the elements (buttons, text boxes, etc) that are available within the GUI Design tool, while the second is to create a mockup image using image editing tools like Photoshop/Paint.NET, import the image into the GUI Desing tool software and place the GUI design elements on the image. For this tutorial, we will go with the second option as it allows more flexibility and gives room for the development of truly beautiful GUIs.

As mentioned during the introduction, today’s tutorial will focus on creating a heart rate and Oxygen-level monitoring system using the display and to get things started, we create the GUI image (shown below) using Photoshop.

The design is quite simple, we illustrate label elements to hold the date, the project title, and the values from the microcontroller. The values from the microcontroller include; the status of the connection between the microcontroller and the display, the heart rate, and the oxygen levels.

With the GUI Image done, we then proceed to import it into the STONE TECH GUI tool. This obviously mean we need to install the STONE TOOL first, so head over to the STONE Tool GUI Designer page and download it. The STONE TOOL software requires no installation and it can be directly opened and run by decompression on your computer.

It should be noted that while compatibility with other OS is currently being considered, the current version of the software only supports Windows 8 and 10 operating systems.

Follow the steps below to create the GUI.

1. With the software downloaded on your computer, launch it and go to File>New Project. This will launch the “New Project dialog box ” where you will be expected to fill in the details of your display, set the storage path, and the name of your project. Since we will use the STVC035WT-01 display which has a  resolution of 320*480 and a default flash space size of 128Mbyte (expandable to 1024MByte), I have entered its details as shown in the image below. If you are using any of the other StoneTech displays, you will need to enter the details of that display instead.

2. Next, on the left side of your screen, you will see the project tree (under the project window) with its assets. Expand the Picture file, and delete the 0.jpg image inside it by right-clicking on it, and selecting “Remove”. For every new project, the 0.jpg file is always created as the default background for your UI, since we will use our background (the one we designed with photoshop), we can delete it.

3. Next, we need to add the background we designed with photoshop into the picture file. Right-Click on the “Picture” directory and select “Add”. This will open a dialog box for you to navigate to where the JPG version of our photoshop images is stored.

4. Next, we add fonts to the project’s assets to determine how texts appear on the display. Right-click the “Font” file, and select the appropriate font to add to the project. For this tutorial, we will use the ASCII 24 by 48 font. With that done we are now ready to begin adding the GUI elements.

5. We will only use the “Text Display” GUI element since the display is only meant to display data from the MAX30100. The text display elements are capable of holding texts that can be changed programmatically by updating the data stored in their memory addresses. Add text displays on the lines as highlighted in the image below. Also, create a text display for the day-time section at the top of the display image to help users note the date/time each reading was observed.

6. Next, we set the properties of the text displays especially their memory addresses. The properties of each GUI element will be available on the right-hand side of your PC screen after clicking on the element. Note the memory address down as it will play an important role later.

Copy Memory Address

7. With all of these done, we compile the GUI and upload it to the screen. To do this, click on button 1 in the image below to Compile the GUI design and click on button 2 to upload the GUI to your display.

Compile and Upload GUI

Uploading the GUI display requires you either connect the display directly to your computer or you put the GUI on a flash drive and plug the flash drive into the USB port of the display. Because of the little complexity associated with the second option, we will be going with it.

Plug the USB flash drive into the computer then click the “Download to u-disk” button on the STONE GUI TOOL. With the “download to u-disk” process complete, pull out the USB flash disk, insert it into the USB interface of the display module and wait for the completion of the upgrade. When the upgrade is completed, there will be a prompt sound.

With the GUI uploaded to the display, we can now connect the display and other components and write the Arduino code to publish data to it.

Schematics

Connect the display and the MAX30100 to the Arduino as shown in the image below.

Schematics

The model of the STONE display being used for this tutorial communicates via RS232, as such, to be able to interface the display with the Arduino, we have to connect it through a MAX3232 chip. This extra requirement can be avoided by using one of the STONE displays with a TTL interface.

To make the schematics easier to follow, a pin-to-pin map showing how each of the components connects, one to the other, is provided below.

STVC035WT-01 – Max3232

Din - Rin
Tout - Din
GND - GND

Max3232 – Arduino

Rout - RxD
Tin - TxD
GND - GND
VCC- 5v

MAX30100 – Arduino

SDA - A4
SCL - A5
GND - GND
VCC- 5v

Go over the connections once again to be sure everything is properly connected. With this done we can now proceed to the Arduino code to send commands and data to the LCD.

Arduino Code

The idea behind the Arduino code is to condition the data from the MAX30100 and create a pipeline for the data to be sent to the LCD display.

Due to the simplicity embedded in the design of STONETECH displays, the microcontroller’s interaction with any of the GUI components is usually via the “memory address” of each component. for instance, to send a message to the display from the microcontroller (the Arduino in this case), the message has to be published to the memory address of the GUI Component (in this case, the text-display component). The same holds for GUI Components that are meant to send data to the microcontroller, as the microcontroller has to poll their memory address to obtain information from them. As a result of these, we need to obtain the memory address of all the GUI components before proceeding. For each GUI component, the memory address is usually listed among the properties of the component, under the property toolbar, at the right-hand side of the STONE TOOL interface.

While mine may be different from yours, the memory address of the text displays is provided below.

  • Connection sta : 0x0008
  • Heart rate : 0x0001
  • Blood oxygen : 0x0005

With this obtained, we can now proceed to write the code for the project. One of the good things about using the STONETech displays is the fact that you don’t need a library to write code for them because of their simplicity, but since we will use serial communication, we will use the software serial library to avoid having to use the hardware serial port on the Arduino Uno. To interface with the MAX30100, we will also need to install the MAX30100 library. The Max30100 library can be installed using the Arduino Library Manager or by downloading it from the attached link and installing manually by extracting the file, copying its content and pasting it in the Arduino libraries folder. The software serial library comes pre-installed with the Arduino IDE.

>With the libraries installed, we now have all we need to write the Arduino Code. As usual, I will do a brief explanation and attach the complete version of the code under the download section.

We start the code by including the libraries we will use. The Wire.h library is added to satisfy the I2C requirements of the Max30100 library.

#include <Wire.h>
#include <SoftwareSerial.h>
#include "MAX30100_PulseOximeter.h"

Next, we create an instance of the software serial and MAX30100 libraries.

SoftwareSerial screenserial(10, 11); // RX, TX
PulseOximeter pox;

Next, we create variable names to hold the memory address of the three GUI elements we will use for data display.

#define Heart_dis_addr 0x01
#define Sop2_dis_addr 0x05
#define connect_sta_addr 0x08

Next, we provide the customized commands that will be sent to the screen to store data in the memory address. The commands are the same for all the elements with the only difference being the memory address.

unsigned char heart_rate_send[8]= {0xA5, 0x5A, 0x05, 0x82,\
0x00, Heart_dis_addr, 0x00, 0x00};
unsigned char Sop2_send[8]= {0xA5, 0x5A, 0x05, 0x82, 0x00, \
Sop2_dis_addr, 0x00, 0x00};
unsigned char connect_sta_send[8]={0xA5, 0x5A, 0x05, 0x82, 0x00, \
connect_sta_addr,0x00, 0x00};

Next, we specify the variables; Reporting_Period_MS and tsLastReport, which will be used to determine when the sensor should be refreshed. With this done, we then move to the void setup() function.

#define REPORTING_PERIOD_MS 1000

uint32_t tsLastReport = 0;

We start the function by initializing serial communications between the screen and the microcontroller setting the baud rate to 115200. We also initialize hardware serial communication so we can use the serial monitor on the Arduino IDE for debugging purposes. 

void setup()

{
  screenserial.begin(115200);
  Serial.begin(9600);

Next, we initialize the MAX30100 and send the status of the initialization to the display. If the initialization fails, 0x00 meaning 0 is sent to the display, but if successful, 0x01 meaning 1 is sent to it.

Serial.print("Initializing pulse oximeter..");
  Initialize the PulseOximeter instance
  if (!pox.begin()) 
  {
    Serial.println("FAILED");
    connect_sta_send[7]=0x00;
    screenserial.write(connect_sta_send,8);

    for(;;);

  } 
  else 
  {
    connect_sta_send[7]=0x01;
    screenserial.write(connect_sta_send,8);
    Serial.println("SUCCESS");

  }

To wrap up the void setup() function, we increase the current of the IR LED on the Max30100 beyond the default 50mA. With this done, we move to the void loop() function.

 // The default current for the IR LED is 50mA and it could be changedby uncommenting the following line. Check MAX30100_Registers.h for all theavailable options.
  pox.setIRLedCurrent(MAX30100_LED_CURR_7_6MA);
}

We start the void loop() function by calling for updated readings, after which we check if the reporting period has elapsed. If the reporting period has elapsed, it means we need to take new measurements, so we call the pox.getHeartRate and pox.getSp02 commands to get new heart rate and oxygen levels. These new readings are displayed on the serial monitor and also sent to the display.

void loop()
{ 
  // Make sure to call update as fast as possible
  pox.update();
  // Asynchronously dump heart rate and oxidation levels to the serial
  // For both, a value of 0 means "invalid"
  if (millis() - tsLastReport > REPORTING_PERIOD_MS)
  {
    Serial.print("Heart rate:");
    Serial.print(pox.getHeartRate());
    Serial.print("bpm / SpO2:");
    Serial.print(pox.getSpO2());
    Serial.println("%");
    heart_rate_send[7]=(uint32_t)pox.getHeartRate();
    screenserial.write(heart_rate_send,8);// send heart rate to display
    Sop2_send[7]=pox.getSpO2();
    screenserial.write(Sop2_send,8);// send oxygen level to display. 
    tsLastReport = millis();

  }

}

The complete code for the project is provided below and also attached under the download section of the tutorial.

#include <Wire.h>
#include <SoftwareSerial.h>
#include "MAX30100_PulseOximeter.h"


SoftwareSerial screenserial(10, 11); // RX, TX
PulseOximeter pox;


#define Heart_dis_addr 0x01
#define Sop2_dis_addr 0x05
#define connect_sta_addr 0x08
unsigned char heart_rate_send[8]= {0xA5, 0x5A, 0x05, 0x82,\
0x00, Heart_dis_addr, 0x00, 0x00};
unsigned char Sop2_send[8]= {0xA5, 0x5A, 0x05, 0x82, 0x00, \
Sop2_dis_addr, 0x00, 0x00};
unsigned char connect_sta_send[8]={0xA5, 0x5A, 0x05, 0x82, 0x00, \
connect_sta_addr,0x00, 0x00};

#define REPORTING_PERIOD_MS 1000

uint32_t tsLastReport = 0;

void setup()

{
  screenserial.begin(115200);
  Serial.begin(9600);
  Serial.print("Initializing pulse oximeter..");
  Initialize the PulseOximeter instance
  if (!pox.begin()) 
  {
    Serial.println("FAILED");
    connect_sta_send[7]=0x00;
    screenserial.write(connect_sta_send,8);

    for(;;);

  } 
  else 
  {
    connect_sta_send[7]=0x01;
    screenserial.write(connect_sta_send,8);
    Serial.println("SUCCESS");

  }
  // The default current for the IR LED is 50mA and it could be changedby uncommenting the following line. Check MAX30100_Registers.h for all theavailable options.
  pox.setIRLedCurrent(MAX30100_LED_CURR_7_6MA);
}

void loop()
{ 
  // Make sure to call update as fast as possible
  pox.update();
  // Asynchronously dump heart rate and oxidation levels to the serial
  // For both, a value of 0 means "invalid"
  if (millis() - tsLastReport > REPORTING_PERIOD_MS)
  {
    Serial.print("Heart rate:");
    Serial.print(pox.getHeartRate());
    Serial.print("bpm / SpO2:");
    Serial.print(pox.getSpO2());
    Serial.println("%");
    heart_rate_send[7]=(uint32_t)pox.getHeartRate();
    screenserial.write(heart_rate_send,8);// send heart rate to display
    Sop2_send[7]=pox.getSpO2();
    screenserial.write(Sop2_send,8);// send oxygen level to display. 
    tsLastReport = millis();

  }

}

Demo

With the code complete, connect your Arduino board to your computer and upload the code to your setup. Place a finger on the Max30100 and after a while, you should see the live pulse rate and oxygen levels appear on the display as shown in the image below.

Demo

While this project only demonstrates less than 35% of the capabilities of the STONE TECH display, it provides a good foundation for you to build amazing projects. As an engineer, the key benefit of the display to me is the ease of use both in the creation of the GUI and also the development of the code to tie it together with a microcontroller. The fact that the display doesn’t require any library makes it perfect for use with any language and any microcontroller with serial port access.

The quality, size ανδ variety of the STONE TECH displays makes them perfect for HMI Applications and one of my next projects will be a Home Automation Panel using one of the STONETECH displays.

Τhat’s it for this tutorial guys. Feel free to reach out to me via the comment section if you have any difficulties with recreating this project.

Resources

Programmable Thermostatic Switch using AD22105

This project simply switches the system OFF or ON whenever the temperature rises at the desired set point.  The desired setpoint can be set using a fixed resistor R6 or PR1 trimmer potentiometer. Use any of at a time R6 or PR1. You can calculate the setpoint resistor R6 using the following equation:

A relay is provided to switch ON or OFF the load. The relay can switch 7Amps/250V AC load. D2 LED indicates the relay operation. J1 provided to choose normally closed or open options for the relay. This project is built using AD22105 IC from Analog devices.  The AD22105 is a single-supply semiconductor thermostat switch that uses circuit architecture to realize the combined functions of a temperature sensor, set point comparator, and output stage all in one IC. By using one external resistor or trimmer pot, the AD22105 can be programmed to switch at any temperature selected by the system designer in the −40°C to +150°C range. The internal comparator is designed to switch accurately as the ambient temperature rises past the set point temperature. When the ambient temperature falls, the comparator relaxes its output at a somewhat lower temperature than that at which the comparator originally switched. The difference between the switch and un-switched temperatures, known as the hysteresis, is nominally 4°C.

To combine and calculate the initial tolerance and thermal drift effects of the setpoint resistor R6 use the following equation:

RMAX is the worst-case value that the setpoint resistor can be at TSET. RNOM is the standard resistor with a value closest to the desired RSET. ε is the 25°C tolerance of the chosen resistor (usually 1%, 5%, or 10%). TC is the temperature coefficient of the available resistor. TSET is the desired setpoint temperature.

After calculation, compare RMAX to the desired RSET from Equation 1. The required value of RSET at a TSET of 125°C is 5.566 kΩ. If the nearest standard resistor value is 5.600 kΩ, its worst-case maximum value at +125°C is 5.713 kΩ, which is +2.6% higher than RSET, leading to a total additional error of −0.52°C beyond that given in Table 1 in the datasheet.

Features

  • Supply 5V DC
  • Current Consumption 60mA (When Relay is on)
  • Adjustable Temperature PR1

Schematic

Parts List

Connections

Photos

Video

AD22105 Datasheet

EEPD Launches AMD Ryzen Embedded NUC Boards & Mini PCs

Interest in SBCs is growing and even though their capabilities have improved over the years, there is a yearning for more, from processing power to IOs. To add to their already impressive line of SBC offerings, EEPD (Electronic Equipment Production and Distribution) recently announced the release of two SBCs; the Profive NUCV and the Profive NUCR which are based on the AMD Ryzen Embedded V1000 and R1000 respectively.

PROFIVE® Single Board Computer NUCR (x86)
PROFIVE® Single Board Computer NUCR (x86)

The boards were both designed for industrial applications with EEPD mentioning that the boards were targetted at applications across various sectors including; aerospace and defense, industrial control and automation, IoT, Networking and thin clients, Medical Imaging, digital casino gaming, along with digital signage and retail to mention a few.

In line with the NUC standard, the boards utilize the AMD Ryzen Embedded platform with a Radeon Vega Graphics card integrated into the system. While the boards have a lot of similarity in face value, quite a number of differences exist within them. For instance, the NUCV comes with 4 different variants offering 4 different Ryzen Embedded V1000 series CPU and Vega 3, 8 and 11 AMD Radeon Graphics to choose from, while the NUCR, on the other hand, only has two variants of the R1000 series CPU with just the AMD Radeon Vega 3 graphics option. Both boards support operating systems like Windows 10, the Windows 10 IoT Enterprise and Linux ubuntu among others.  A summary of the features of these two board categories is provided below;

PROFIVE® Single Board Computer NUCV (x86)

SBC Profive NUCV Specifications

  • AMD processors of the V1000 series – V1202B / V1605B / V1756B / V1807B up to 35W TDP (max TDP supported by the board)
  • Integrated GPU – AMD Radeon Vega 3 / 8 / 11 Graphics
  • Up to 32 GB memory DDR4
  • 2x Gigabit Ethernet Ports
  • 1x MicroSD card slot
  • 3x M.2 Type B, Type E, Type M sockets
  • 1x SATA (6G) with a separate power connector
  • Up to 4x USB-Ports: 3x USB 3.1 Gen1, 1x USB 2.0
  • 1x RS-232 Port + 1x RS-232/485 Port
  • 24-bit dual-channel LVDS-Connector
  • 2x Mini-DP++ connector up to 4096×2160 @ 60Hz
  • Operating Systems: Microsoft Windows 10 / 10 IoT Enterprise, Linux Ubuntu 18.04 LTS
  • 8V to 32 V power supply range (automotive grade)
  • Max. Operating temperature range commercial at 0°C to + 60°C; others on request
  • Max. Storage temperature range from -40°C to +85°C
  • Max. relative humidity: 95% @ 40°C, non-condensing
  • Dimensions 101.6 mm x 101.6 mm
A Block Diagram for the Profive NUCR SBC

SBC Profive NUCR specifications

  • AMD Series R1000 Processors – R1606G / R1505G
  • Integrated GPU – AMD Radeon Vega 3 Graphics
  • Up to 32 GB dual-channel DDR4 memory
  • 2x Gigabit Ethernet ports (Intel I210 with IEEE1588)
  • 1x MicroSD card slot
  • 3x M.2 Type B, Type E, Type M sockets
  • M.2 SATA or NVMe
  • 1x Serial ATA (6G) with a separate power connector
  • 3x USB 3.1 Gen1
  • 1x RS-232 port + 1x RS-232/485 port (FDX)
  • 2x Mini-DP++ Connector up to 4096×2160 @ 60Hz
  • Sound: HDA with MIC In/headphone Out
  • Health monitoring and management: Fan control (PWM + Tacho), hardware monitoring and Watchdog
  • Power and status LEDs,
  • 2x GPIO (3.3V)
  • 8V to 32V power supply range (automotive grade)
  • Max. Operating temperature range (commercial): 0°C to + 60°C / others on request
  • Max. Storage temperature range from -40°C to +85°C
  • Max. relative humidity: 95% @ 40°C, non-condensing
  • Dimensions 101.6 mm x 101.6 mm
  • Supported operating systems: Microsoft Windows 10 / 10 IoT Enterprise, Linux Ubuntu 18.04 LTS
A Block Diagram for the Profive NUCv SBC

The two boards seem to be currently available in different processors and memory configurations, but the information provided on their respective product pages does not include their price details. This may be a result of the different configurations available and can however be ratified by speaking to the company’s representatives.  More information about the features and capabilities of the Profive NUCr and NUCv boards can be found on their individual product pages (Hotlinked).

STMicroelectronics TCPP01-M12 USB Type-C Port Protection

STMicroelectronics TCPP01-M12 USB Type-C Port Protection is a single-chip solution that facilitates the migration from USB legacy connectors type-A or type-B to USB Type-C connectors. This Type-C port protection features overvoltage protection on VBUS, adjustable up to 22 V, with external N-channel MOSFET. The TCPP01-M12 USB port protection includes an integrated charge pump to control the gate of an external N-channel MOSFET. This Type-C port protection offers Over Temperature Protection (OTP), open-drain fault reporting, and integrated dead battery.

The TCPP01-M12 USB port protection operates at -40°C to 85°C junction temperature range. This Type-C port protection function with 6V overvoltage protection, 150°C junction-to-ambient thermal resistance, and 122μA supply current. The TCPP01-M12 USB Type-C port protection is ideal for use in sink configuration, source configuration, UFP or DFP configuratioN, power delivery, and PPS compliant.

Features

  • Overvoltage protection on VBUS with external N-channel MOSFET
  • System-level ESD protection for USB type-C connector pins
  • Compliant with IEC 61000-4-2 level 4
  • Integrated charge pump to control the gate of an external N-channel MOSFET
  • Null quiescent current when no USB charging cable is attached for battery operated “consumer/sink” applications
  • Integrated “dead battery” (RD resistors)
  • Over-temperature protection
  • Complies with the latest USB Type-C and USB power delivery standards
  • Compliant with Programmable Power Supply (PPS) as defined in the latest USB PD specification
  • Open-drain fault reporting
  • ECOPACK2 compliant

Specifications

  • 6V overvoltage protection
  • At Absolute maximum ratings (Tamb = 25°C):
    • -40°C to 85°C operating junction temperature range
    • -55°C to 150°C storage temperature range
    • 150°C/W junction-to-ambient thermal resistance
  • At Power supply and leakage current, Tamb = -40 °C to 85 °C:
    • 3V to 3.6V input voltage range
    • 120μA supply current

Applications

  • USB Type-C for UFP (upstream facing port) or DFP (downstream facing port) configuration
  • USB Type-C power delivery, PPS compliant
  • USB Type-C used in sink configuration (consumer)
  • USB Type-C used in source configuration (provider)
TCPP01-M12 USB Type-C Block Diagram
more information: www.st.com

iWave Systems Introduces a SOM based on ZU19EG / ZU17EG / ZU11EG Xilinx ZynQ UltraScale+ MPSOC

iWave Systems introduces a powerful SOM (System on Module) with six heterogeneous ARM processor cores (four 64-bit ARM Cortex-A53 and two 32-bit ARM Cortex-R5 Cores), an ARM Mali-400 MP2 GPU, and a big chunk of the latest-generation UltraScale+ programmable logic cells scaling all the way to 1 million. Designed a ZU19EG / ZU17EG / ZU11EG Zynq UltraScale+ MPSoC System on Module in the package C1760 and a 10+ Years Longevity support.

The CPU module has a compact-size measuring 110mm by 75mm, equipped with ZU19/17/11 EG MPSoC, 64-Bit 4GB DDR4 for PS, dual 4GB DDR4 64-Bit for PL, 8GB eMMC (expandable up to 128GB) as well as integrated with Ethernet PHY, USB PHY, and power circuitry to provide control and processing capabilities as an embedded system. Besides these, all the FPGA IOs, 16 x PL-GTY @32.75Gbps, 32 x PL-GTH @16.3Gbps, 4 x PS-GTR @6Gbps Transceivers & FPGA IOs up to 48LVDS/96SE + 46SE IOs are terminated at high-speed Board-to-Board (B2B) connector.

Product Highlights:

It is ready to run Linux OS and targets a wide variety of applications like the High-Speed Networking using 25G, 40G & 100G Optical, Cloud Computing, 4K Video Surveillance System, Deep Neural AI/ML Networks, Automotive Imaging Radar, Intelligent Data Center, etc.,

Targeted Applications

iWave Systems has the stock of various ZU19EG / ZU17EG / ZU11EG MPSoC based SOMs which is ready for immediate dispatch

iWave Systems also offers a versatile iW-RainboW-G35D Development Board for evaluating the SOM Module. It takes full features of the Zynq UltraScale+ MPSoC device to have explored a robust set of peripherals such as Dual FMC for doing initial POC with the available off-the-shelf FMC boards, 12G SDI IN & OUT, SFP+, USB 3.0 Type C, Gigabit Ethernet, Dual PMOD, DisplayPort (DP), PCIe x4 interface, M.2 SATA interface, JTAG, CAN and so on. The iW-RainboW-G35D is a solid reference design for development based on Xilinx Zynq UltraScale+ MPSoC solutions.

More information about the new products can be found at:

For further information or enquiries please write to mktg@iwavesystems.com or contact our Regional Partners.

SEGGER’s SystemView adds data acquisition via UART and TCP/IP

SEGGER announces the release of SystemView V3.10, a major update to its system verification tool for embedded systems. The most significant enhancement is the addition of real-time data acquisition via UART or TCP/IP. Any system with UART or TCP/IP connection, typically Ethernet, can now be monitored and verified.

The new version comes with the target code required for integration as well as example projects.

The software also adds a variety of new features. New performance markers are useful for performance verification and optimization. A new Runtime window provides information on the runtime distribution of tasks, interrupts and software timers. All windows are updated in real-time, with no limit on the sampling time due to streaming data acquisition. The entire data set can be stored for later or remote analysis as well as archival and documentation purposes. SystemView also comes with the files required for many popular RTOS such as embOS, FreeRTOS, uC/OS-II and uC/OS-III, and more. Any system, with or without RTOS, can be monitored.

SystemView V3.10 can be easily downloaded and installed without any registration process. It is available under SEGGER’s friendly licensing policy, and –like SEGGER’s Ozone debugger and SEGGER’s Embedded Studio IDE – is free for non-commercial purposes as well as unlimited evaluation, even for the commercial user. Previous releases of the software continue to be available on segger.com.

SystemView, like Ozone and Embedded Studio, works cross-platform for Windows, macOS, and Linux.

For more info on SystemView see https://www.segger.com/products/development-tools/systemview/

TOP PCB Companies