Norvi Logo
  • HOME
  • PRODUCTS
  • SUPPORT
  • CONTACT US
  • CART
Menu
  • HOME
  • PRODUCTS
  • SUPPORT
  • CONTACT US
  • CART

NORVI IIOT AE01-R / AE01-T

  • Datasheet
  • User Guide
  • Test Program

NORVI IIOT AE02-V

  • Datasheet
  • User Guide
  • Test Program

DIGITAL INPUT EXPANSIONS

  • NORVI-EX-I4 Datasheet
  • NORVI-EX-I4 User Guide
  • NORVI-EX-I8 Datasheet
  • NORVI-EX-I8 User Guide
  • NORVI-EX-I16 Datasheet
  • NORVI-EX-I16 User Guide

TRANSISTOR OUTPUT EXPANSIONS

  • NORVI-EX-Q4 Datasheet
  • NORVI-EX-Q8 Datasheet
  • NORVI-EX-Q16 Datasheet
  • NORVI-EX-Q8 User Guide
  • NORVI-EX-Q4 User Guide
  • NORVI-EX-Q16 User Guide

RELAY OUTPUT EXPANSIONS

  • NORVI-EX-R8 Datasheet
  • NORVI-EX-R16 Datasheet
  • NORVI-EX-R8 User Guide
  • NORVI-EX-R16 User Guide

ANALOG INPUT EXPANSIONS

  • NORVI-EX-ANV Datasheet
  • NORVI-EX-ANV User Guide
  • NORVI-EX-ANI User Guide
  • NORVI-EX-ANI Datasheet

NORVI-EX-LRWAN

  • NORVI-EX-LRWAN Datasheet
  • Home
  • Docs
  • NORVI IIOT AE01-R / AE01-T
  • User Guide

User Guide

Table of Contents
  • Programming
  • Digital Inputs
    • Wiring Digital Inputs
    • Programming Digital Inputs
  • Relay / Transistor Outputs
    • Wiring Relay Outputs
    • Wiring Transistor Outputs
    • Programming Relay/ Transistor Outputs
  • RS-485 communication
  • Built-in OLED Display
  • Built-in Buttons

Programming #

NORVI IIOT AE01-R / AE01-T has a mini USB Port for serial connection with the SoC for programming. Any ESP32 supported programming IDE can be used to program the controller.

Follow the Guide to programming NORVI ESP32 Based Controllers with Arduino

SoC : ESP32-WROOM32
Programming Port : USB UART

Digital Inputs #

Wiring Digital Inputs #

The digital inputs of NORVI IIOT range can be configured as both Sink and Source connection. The inverse of the Digital Input polar should be supplied to common terminal.

NORVI IIOT Digital Input Wiring

Programming Digital Inputs #

Reading relevant GPIO of ESP32 gives the value of the Digital Input. When the inputs are in OFF state the GPIO goes HIGH, and when the input is in ON stage GPIO goes LOW.

Refer to the GPIO Allocation Table for Digital Input GPIO

#define INPUT1 18

void setup() {
  Serial.begin(115200);
  Serial.println("Device Starting");

  pinMode(INPUT1, INPUT);
}

void loop() {
  Serial.print(digitalRead(INPUT1));

  Serial.println(""); 
  delay(500);
}

Relay / Transistor Outputs #

Wiring Relay Outputs #
NORVI IIOT Relay Output Wiring

Wiring Transistor Outputs #
NORVI IIOT Transistor Output Wiring
Programming Relay/ Transistor Outputs #

Reading relevant GPIO of ESP32 gives the value of the Digital Input. When the inputs are in OFF state the GPIO goes HIGH, and when the input is in ON stage GPIO goes LOW.

Refer to the GPIO Allocation Table for Digital Input GPIO

#define OUTPUT1 14

void setup() {
  Serial.begin(115200);
  Serial.println("Device Starting");

  pinMode(OUTPUT1 , OUTPUT);
}

void loop() {
  digitalWrite(OUTPUT1, HIGH);
  delay(500);
  digitalWrite(OUTPUT1, LOW);
  delay(500);

  Serial.println(""); 
  delay(500);
}

RS-485 communication #

RS-485 Wiring

DriverMAX485
UART RXGPIO3
UART TXGPIO1
Flow ControlGPIO4
GPIO Connections of RS-485

Programming RS-485

The UART Connections of RS-485 of NORVI IIOT AE01 series are shared with the UART connections of USB Serial.

#define RS485_FC 4

void setup() {
  Serial.begin(115200);
  Serial.println("Device Starting");

  pinMode(RS485_FC, OUTPUT);
}

void loop() {
  digitalWrite(RS485_FC, HIGH);   // Turns on Transmitter Mode
  Serial.println("RS-485 Sending"); 
  
  delay(500);
}

Built-in OLED Display #

Display driverSSD1306
CommunicationI2C
Module Address0x3C
Resolution128 x 64
0.96 OLED Display Specification


Refer to the GPIO Allocation Table for I2C GPIO of the OLED Display

Library Supported Adafruit_SSD0306 Library

Wire.begin(SDA, SCL); is required to initialize I2C on correct pins


#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels

// Declaration for an SSD1306 display connected to I2C (SDA, SCL pins)
#define OLED_RESET     -1 // Reset pin # (or -1 if sharing Arduino reset pin)
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);


void setup() {
  Wire.begin(16,17);
  
  if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { // Address 0x3C for 128x64
    Serial.println(F("SSD1306 allocation failed"));
    for(;;); // Don't proceed, loop forever
  }

  // Show initial display buffer contents on the screen --
  // the library initializes this with an Adafruit splash screen.
  display.display();
  delay(2000); // Pause for 2 seconds

  }

void loop() {
}

Built-in Buttons #

Read modeADC (Analog to Digital Conversion)
Analog IOGPIO32
Built-in button Internal Schematic
What are your Feelings
Share This Article :
  • Facebook
  • Twitter
  • LinkedIn
  • Pinterest
Still stuck? How can we help?

How can we help?

Updated on April 19, 2023
DatasheetTest Program

Powered by BetterDocs

Table of Contents
  • Programming
  • Digital Inputs
    • Wiring Digital Inputs
    • Programming Digital Inputs
  • Relay / Transistor Outputs
    • Wiring Relay Outputs
    • Wiring Transistor Outputs
    • Programming Relay/ Transistor Outputs
  • RS-485 communication
  • Built-in OLED Display
  • Built-in Buttons
Facebook-f Twitter Youtube

ICONIC DEVICES PVT LTD
Green Cliff 2, Midigama East
Weligama, Sri Lanka, 81700

FAQ

CONTACT 

SHOP

Visa, Master, American Express