XStore

NORVI X-Q4 – USER GUIDE

Updated on September 8, 2026

8 min read

Overview #

NORVI X is a next generation modular industrial controller designed to power smart automation and IoT solutions. Built around a CPU module and a range of plug and play expansion modules, the platform scales from a handful of I/O points up to 200, giving system integrators, OEMs, and industrial engineers a flexible foundation for automation, remote monitoring, and data acquisition projects.

The NORVI X-Q4 is a 4 channel transistor output expansion module for the NORVI X range. It provides four high-side switching channels suitable for driving industrial actuators, relays, and solenoids.

Each output is optically isolated for circuit protection and uses a high-side P-channel MOSFET switch, enabling reliable control of 24 V DC loads with integrated per-channel fuse and surge protection.

The X-Q4 is not a standalone device. It needs to be paired with a NORVI X CPU module, such as the CPU ESPS3 X1, to be programmed and operated.

This guide covers installation, wiring, technical specifications, GPIO mapping, software setup, diagnostic test code, and troubleshooting.

Key Features #

  • Four transistor output channels
  • High-side switching, up to 24 V DC
  • Integrated fuse and surge protection per channel
  • Individual LED status indicators per output
  • DIN rail mountable enclosure with push-in front terminals
  • CE / EMC compliant

Safety Information #

  • Install and wire this module only if you are a qualified electrician or trained technician familiar with industrial control equipment.
  • Confirm that the host CPU is operating from a regulated 24 V DC supply. The module is powered through the expansion port, while each channel requires a separate 24 V supply to provide its 24 V output.
  • Mount the module on a DIN rail inside a suitably rated enclosure. It carries an IP20 protection rating and is not designed for direct outdoor or wash down exposure.
  • Keep the operating environment within minus 40 to plus 85 degrees C and avoid condensing humidity.
  • Do not connect or disconnect the module from the expansion bus while the system is powered.
  • Follow all local and national electrical codes applicable to industrial control panel wiring.
  • This module uses GPIO IO14, IO35, IO37, and IO41 on the host CPU. Check the NORVI X Mixing Guide before combining it with other expansion modules that use the same pins.

Technical Specifications #

Electrical #

Rated Supply Voltage24V DC
Current Consumption80mA @ 24V DC

Output Specifications #

Number of Outputs4 Transistor Output channels
Output TypeHigh-side switch
Switching TransistorP-channel MOSFET
Isolation TypeOptocoupler isolation
Operating Voltage24 V DC nominal
Overcurrent ProtectionPer-channel resettable PTC fuse
Gate ProtectionZener diode clamp
Switching FrequencyHigh-speed
Output DiagnosticsIndividual LED indicators
Connector TypeSpring terminal

Hardware Layout & GPIO Map #

The table below lists the GPIO pins reserved for the X-Q4’s four transistor outputs.

TerminalFunctionGPIO
TR1Transistor Output 1IO14
TR2Transistor Output 2IO35
TR3Transistor Output 3IO41
TR4Transistor Output 4IO37
GNDGround

Wiring Guide #

GPIO pin assignments for every output are listed in the Hardware Layout and GPIO Map section. This section covers how to physically wire the module.

Power Connection #

The module draws its 24 V DC supply through the expansion port shared with the CPU. There is also a separate power terminal to wire on the X-Q4 for the output load supply.

Output Wiring #

  • Each output channel switches through an internal opto-isolated MOSFET between its TRx terminal and the POWER block’s 24V rail.
  • Connect one lead of the load, such as a relay coil, solenoid, actuator, or indicator, to the corresponding TRx terminal. Connect the other lead of the load to GND.
  • The module’s outputs are powered from the dedicated POWER terminal block containing 24V, 24V, GND, GND, and GND terminals.
  • Wire an external 24 V DC supply to a POWER 24V terminal and its return to a POWER GND terminal before wiring any loads.
  • When a channel is switched ON, its TRx terminal is internally connected to the POWER block’s 24 V rail, sourcing 24 V DC to the load.
  • When the channel is OFF, the terminal is left floating at high impedance.
  • The output block GND terminal and the POWER block GND terminals share a common ground reference.
  • Since all four outputs share the same POWER supply and GND reference, use consistent wiring across all four channels.
  • For inductive loads such as relay coils or solenoids, keep the load within the per-channel fuse and switching limits.
NORVI X-Q4 transistor output terminal wiring
NORVI X-Q4 Transistor Output Terminal Wiring

Connecting the Module to the CPU #

  1. Power off the system.
  2. Mount the X-Q4 on the DIN rail next to the CPU module or an adjacent expansion module.
  3. Seat it firmly onto the expansion bus connector until it locks into place.
  4. Wire your loads, including relays, solenoids, or actuators, to TR1 through TR4. Confirm each load stays within the module’s 24 V DC nominal rating.
  5. Power the system back on.
  6. Upload the module’s test sketch from the NORVI GitHub repository to confirm each channel operates correctly.
NORVI X-Q4 expansion module connected with NORVI X CPU
NORVI CPU Controller with NORVI X-Q4 Expansion Module

Expansion Port (50 pin) #

The X-Q4 connects through the same 50 pin expansion bus used across the NORVI X range. Pins carrying IO14, IO35, IO37, and IO41 are claimed by this module. The remaining pins remain available for other compatible expansion modules or custom wiring.

PIN INDEXPurposeGPIOSOURCE
1MOSIIO11ESP32-S3
2MISOIO13
3SCLKIO12
4GND—-
5SCLIO9
6SDAIO8
7GND—-
8RX1IO18
9TX1IO17
10GND—-
11D+—-
12D-—-
13GND—-
14CS1P1_0PCA9539
I2C Address 0x75
15CS2P0_7
16CS3P0_6
17CS4P0_5
18IO1IO1ESP32-S3
19IO2IO2
20IO4IO4
21IO5IO5
22IO6IO6
23IO7IO7
24IO10IO10
25IO11IO35
26IO12IO41
27IO13IO37
28IO14IO14
29RS485_TXIO15
30GND—-
31GND—-
32RS485_RXIO16
33P1_1P1_1PCA9539
I2C Address 0x75
34P1_2P1_2
35IO21IO21ESP32-S3
36GND—-
37GND—-
38P1_3P1_3PCA9539
I2C Address 0x75
39P1_4P1_4
40P1_5P1_5
41IO39IO39ESP32-S3
42IO40IO40
43NC—-
44NC—-
45NC—-
46GND—-
475V5V
48GNDGND
4924V24V
5024V24V

Software Setup (Arduino IDE) #

The NORVI X-Q4 is driven through the host CPU using the Arduino IDE with the ESP32 board package. Firmware examples and required libraries are maintained in the NORVI GitHub repository.

Board Configuration #

  1. Install Arduino IDE

    Install the Arduino IDE and add ESP32 board support:

    Tools → Board → Boards Manager → ESP32
  2. Connect the Controller

    Connect the NORVI X CPU to your computer using the USB interface.

  3. Select Board and Port

    Configure the board and communication port:

    Tools → Board → ESP32 Arduino → ESP32S3 Dev Module
    Tools → Port → Select the corresponding COM/serial port
Arduino IDE Board and Tools Menu Configuration
Arduino IDE Board and Tools Menu Configuration

Configure Board Settings #

Under the Tools menu, configure the following settings:

Upload Settings under the Tools Menu
Upload Settings under the Tools Menu
SettingSelection
USB CDC On BootEnabled
Flash Size16MB (128Mb)
PSRAMQSPI PSRAM

Test Code Examples #

Required Libraries #

Install these via Arduino IDE → Sketch → Include Library → Manage Libraries before compiling any examples:

  • Wire
  • WiFi
  • SPI
  • TFT_eSPI
  • CST816S
  • Free_Fonts

Install the Required Library #

Install the Wire library through:

Sketch → Include Library → Manage Libraries

Search for Wire and install it if required.

Opening the Arduino IDE Library Manager
Opening the Arduino IDE Library Manager
The libraries are available in the NORVI-X-Version-02 GitHub repository .

Open and Upload the Test Sketch #

  1. Open the X-Q4 test sketch from the NORVI GitHub repository .
  2. Verify the board and port selections.
  3. Click Upload to upload the test sketch to the NORVI X CPU.

Transistor Output Test #

The following excerpt drives the four X-Q4 output channels and can be used to verify output switching.

#define TR1 14
#define TR2 35
#define TR3 41
#define TR4 37

pinMode(TR1, OUTPUT);
pinMode(TR2, OUTPUT);
pinMode(TR3, OUTPUT);
pinMode(TR4, OUTPUT);

digitalWrite(TR1, HIGH); // Output 1 ON
delay(500);

digitalWrite(TR1, LOW);  // Output 1 OFF
delay(500);

Validating the Full Test Sketch #

When the module is wired correctly, the display shows OUTPUT 1 through OUTPUT 4, with each output toggling between ON and OFF in sequence.

The corresponding LED on the module should illuminate while the channel is active, and any load connected to the matching TRx terminal, such as a relay, solenoid, or indicator, should energize while ON is shown.

Troubleshooting #

SymptomSuggested Action
No response from an output Check the wiring polarity and confirm the load’s return lead is properly connected to GND.
LED stays off despite an active output Confirm the 24 V DC supply is present and within rating, and that the channel’s PTC fuse has not tripped.
Output will not switch off / stays on Check for a shorted or excessive load. Disconnect the load and retest with the channel unloaded.
Module not detected by the CPU Power down, reseat the module on the expansion bus, and confirm no other module is already using IO14, IO35, IO37, or IO41.
TFT display blank or not working Check three settings under Tools: USB CDC On Boot set to Enabled, Flash Size set to 16MB (128Mb), and PSRAM set to QSPI PSRAM.

Support & Resources #

Product Documentation & Datasheets NORVI X-Q4 Datasheet
Product Page Visit NORVI
Firmware Examples & Libraries NORVI X Version 02 GitHub Repository
Technical Support support@norvi.io