Please enable JavaScript to view this site.

Waijung 2 User Guide

Navigation: ESP32 target

Waijung 2 for ESP32 Packages

Scroll Prev Top Next More

Packages (License types) [1]*

 

Standard

Professional

Commercial

Best for

 

Undergraduate students.

Lecturers, researchers, and classroom.

Commercial product development.

Feature set

 

Sufficient features for most undergraduate projects.

Full featured but without generated source code or executable.

NOT for mass production.

Full featured with generated source code and executable.

Ideal for mass production.

Free evaluation

 

No need.

Yes, 30 days.

Request free evaluation.

Yes, 30 days.

Request free evaluation.

Duration

 

1 Year

1 Year

1 Year

Blocks/Features

When to use

 

 

 

Target Setup block

Use this block to configure parameters related to code generation for the target hardware. This block must be included in a Simulink model to generate code for ESP32.

Y

Y

Y

xTask Create block

Use this block to create FreeRTOS tasks for multi-tasking.

Y

Y

Y

Hardware-in-the-Loop (External Mode)

Create a communication channel between Simulink and hardware via WiFi or Serial. Monitor signals and tune parameters in real-time.

Y

Y

Y

vTasks Delay block

Use this block to implement a delay in ticks or in milliseconds.

Y

Y

Y

Digital Output block

Use this block to generate digital signal(s) from selected ESP32 pin(s).

Y

Y

Y

Digital Input block

Use this block to read digital signal(s) from selected ESP32 pin(s).

Y

Y

Y

UART blocks

Use this block to send and receive data via UART serial communication.

Y

Y

Y

SPI block

Use this block to send and receive data via SPI serial communication.

Y

Y

Y

I2C master block

Use this block to send and receive data via I2C serial communication.

Y

Y

Y

CAN BUS block

Use this block to send and receive data via CAN communication.

 
Y

Do NOT support Simulink

 canMessageBusType.

 
Y

Support Simulink

 canMessageBusType.

Y

Support Simulink

 canMessageBusType.

ADC block

Use this block to read analog signals.

Y

Y

Y

Print block

Use this block to print data to a serial monitor such as PuTTY or Docklight.

Y

Y

Y

LEDC block

Use this block to generate PWM signals for driving LED.

Y

Y

Y

MCPWM block

Use this block to generate PWM signals for driving motors.

Y

Y

Y

String processing block

Use this block to manipulate string data e.g. sprintf, sscanf, strlen, strcmp, strncmp, and strextract.

Y

Y

Y

Host serial send and receive block

Use this block to send/receive data using COM port or serial adapter from the host PC.

Y

Y

Y

DAC block

Use this block to generate analog signals.

Y

Y

Y

Timer interrupt block

Use this block to create Timer Interrupt Service Routine (ISR).

Y

Y

Y

GPIO interrupt block

Use this block to set up an Interrupt Service Routine (ISR) that uses digital inputs as trigger signals.

Y

Y

Y

SD Card blocks

Use these blocks to setup, write, and read to and from a SD card. Information such as total and free memory can be extracted. A circular log file system can also be set up.

Y

Y

Y

SPIFFS blocks

Use these blocks to setup, write, and read to and from Serial Peripheral Interface Flash File System (SPIFFS).

Y

Y

Y

Volatile data storage blocks

Use these blocks to setup, write, and read to and from volatile/non-volatile data storage.

Y

Y

Y

UIDREAD block

Use this block to retrieve unique MAC addresses of the ESP32 chip.

Y

Y

Y

Camera blockset:
Camera block
IP camera block
Camera control block
Memory block

- Use Camera block to get the camera feed from the ESP32-supported camera modules.
- Use IP Camera blocks to view image or video results in Simulink
- Use Camera control block to adjust real-time camera image parameters in External Mode.
- Use Memory block to do simple image processing algorithms via the target with the Camera block.

 
Y

Camera block: camera resolution is limited to 160x120 pixels
Camera control block: real-time tuning enabled for brightness feature only
(No add-on license is available with this package to access full features).

Y

Can purchase add-on license 

to access full features.

Y

Can purchase add-on license 

to access full features.

XCP block

Use this block to implement an XCP slave to write and read data to and from the ECU, using WiFi or Serial as the communication protocol

 
Y

Supports up to 4 parameters or signals combined
(No add-on license is available with this package to access unlimited parameters/signals).

Y

Can purchase add-on license to access unlimited parameters/signals.

Y

Can purchase add-on license to access unlimited parameters/signals.

Light/Deep Sleep modes block

Use the sleep mode block to put ESP32 to sleep (light/deep sleep) to save power consumption. Multiple wake-up modes have been added (timer, ext0 & ext1).

-

Y

Y

Bluetooth block

Use this block to connect to phone via BLE (NimBLE) protocol to send and receive data (configurable as a server only).

Y

Support NimBLE configurable as a server only.

Y

Support NimBLE configurable as a server only.

Support SPP configurable as both server and client.

Y

Support NimBLE configurable as a server only.

Support SPP configurable as both server and client.

Encoder block

Use this block to read incremental rotary encoder values. This block can also be used to read any input pulse count. Depending on the configurations this block can determine the rotation direction as a positive or negative value.

Y

Y

Y

HX711 block

Use this block to read data from the HX711 amplifier. This is widely used with Load-cell weight sensors.

 
Y

- Cannot save/load calibration values to and from non-volatile storage
- Cannot use multiple read/calibration blocks to test multiple load cells in a single build

Y

Y

ESP-NOW blocks

Use these blocks to exchange data between multiple ESP32 boards via ESP-NOW's connectionless communication technology.

 
Y

Long range unavailable

Y

Y

MODBUS RS485 block

Use this block to configure MODBUS registers and communicate between the ESP32 and MODBUS slave via RS485 standard.

-

Y

Y

JSON block

Use this block to generate the JSON packet with the given key/value pair.

Y

Y

Y

Output to State block

Use this block to output a Stateflow state name from an input signal.

Y

Y

Y

Mesh Network

 

 

 

 

Mesh send / receive block

Use these blocks to send and receive data package in a mesh network.

Y

Y

Y

Web server / client function

 

 

 

WiFi block

Use this block to setup WiFi communication in either STA (Client) or AP (Server) modes.

Y

Y

Y

HTTP client block

Use this block to generate HTTP requests.

Y

Y

Y

HTTP server blocks

Use this block to handle HTTP GET and POST method.

 
Y

Supports up to 6 GET requests and 6 POST requests. Support HTTP only.

 
Y

Unlimited GET and POST requests.

Support both HTTP and HTTPS.

Y

Unlimited GET and POST requests.

Support both HTTP and HTTPS.

HTTP setup block

Use this block to set up ESP32 as a web server.

Y

Y

Y

MQTT blocks

Use these blocks to publish and receive data using MQTT protocol and MQTT Client software. Available over both TCP and TLS connection types.

Y
TLS protocol not supported

Y

Y

AWS IoT core blocks

Use these blocks to publish and receive data to & from Amazon Web Services (AWS) IoT core which utilizes MQTT protocol.

Y

Y

Y

ESP Log block

Use these blocks to log messages as information, warnings or errors on the serial monitor or direct them to the SD card or SPIFFS

Y

Y

Y

Aimagin Connect block (HTTP/HTTPS and runs on AP and STA mode)

 

Use this block to create a local server to host web apps created using Aimagin Connect. (drag and drop method)

Y

(Limited HMI components)

Y

(All HMI components)

Y

(All HMI components)

SIMCOM 7600 MQTT blocks

Use these blocks to setup MQTT client to publish and subscribe data with SIMCOM 7600 sim module.

Y

Y

Y

SIMCOM 7600 GPS block

Use this block to get GPS coordinates using SOMCOM 7600 sim module.

Y

Y

Y

SIMCOM 7600 SNTP block

Use this block to get the date/time from ntp server using SIMCOM 7600 sim module.

Y

Y

Y

UDP send/receive Block

Use these blocks to send/receive data with UDP method.

-

Y

Y

WiFi scan

Use this block to allow ESP32 to scan WiFi SSID.

-

Y

Y

System time block

Use this block to get ESP32 system time

-

Y

Y

SNTP block

Use this block to get the time from Simple Network Time Protocol (SNTP) server

-

Y

Y

OTA firmware upgrade block

Use this block to update ESP32 firmware Over the Air (OTA).

-

Y

Y

Local firmware upgrade block

Use this block to perform a Firmware Upgrade using a bin file saved on the SD card or Flash memory.

-

Y

Y

4G Router SMS block

Use this block to send SMS via ESP32 using a router. Currently supports RUT200 and TL-MR100 routers.

-

Y

Y

Expression evaluator block

Use this block when needed to evaluate an expression.

-

Y

Y

 

 

 

 

 

AES block

Use this block to perform Advanced Encryption Standard (AES) encryption and decryption.

-

Y

Y

Sqlite3 block 

Use these blocks to setup, read from and write to SQLite database(s) on an SD card.

-

Y

Y

Circular buffer block

Use this block to temporarily hold data to ensure no data loss when saving the data (for example: to a database) due to a blocking process.

-

Y

Y

Internet of Things (IoT)

 

 

 

Alert system block

Use this block to send email, line and SMS alerts based on an advanced filter expression.

Y

Email alert only

Y

Email, Line and SMS alert

Y

Email, Line and SMS alert

MQTT File sync block

Use this block to sync files from another MQTT client to ESP32 over WiFi

-

Y

Y

Wireguard VPN block

Use this block to set up a WireGuard VPN client through WIFI.

-

Y

Y

Circular buffer FIFO Matrix block

Use this block when needed to maintain the latest data set. It employs a First-In-First-Out (FIFO) circular buffer format for data storage. For enabling normal/high speed mode.

-

Y

Y

Circular buffer Matrix block

Use this block when needed to store data set. It uses a circular buffer format for data storage. For enabling normal/high speed mode.

-

Y

Y

SD card file system block

Use this block to save and retrieve data from an SD card. It maintains a file system to ensure the secure storage of all data. For enabling normal/high speed mode.

-

Y

Y

Processor-in-the-loop (PIL) Mode

Supports PIL via WiFi (AP or STA mode) and Serial in advanced testing.
1. Test whether your model and generated code are numerically equivalent.
2. Perform code execution profiling.
3. Run an automatic test with Simulink Test.
4. Perform verification and validation according to various IEC Certification and DO Qualification (require respective Mathworks' product).

-

Y

Y

Custom code block

Use this block to add custom C code to Waijung 2 Simulink model.

-

Y

Y

Generated source code

Generated source codes are available for inspection and modification out side of Matlab Simulink environment.

-

-

Y

Generated bin file

Complied executable file (. bin) is available for later upload to other ESP32 target (for Mass Production).

-

-

Y

Technical Support Request Channel

 

 

 

 

Forum (Community)

 

Y

Y

Y

Email

 

Y

Y

Y

Service request (ticket) system

 

-

-

Y

Onboarding call

 

-

-

Y

Voice over IP (VoIP)

 

-

-

[3]*

Type of Technical Support

 

 

 

 

Installation

 

Y

Y

Y

Bug fixes

 

Y

Y

Y

Feature request

 

Y

Y

Y

Customization [2]*

 

-

Y

Y

Project based [2]*

 

-

Y

Y

Time to Response

 

 

 

 

 

 

Within 10 days

Within 3 days [4]*

Within 1 day [4]*

Remark

[1]*

Standard, Professional and Commercial license types are annual licenses. Annual licenses provide the right to use and upgrade the software for a fixed duration of 12 months.

[2]*

Require purchase of separate support package. Customization such as new feature implementations.

[3]*

Only with active purchased support package.

[4]*

When request using the Service request system during business day.

 

Copyright 2024 Aimagin Co.,Ltd. Rev.1601