Skip to content

Commit e973bfb

Browse files
authored
Add Norvi IIOT ESP32-PLC (#1080)
* Add Norvi IIOT ESP32-PLC * Fix whitespace * More whitespace
1 parent 7c1aa12 commit e973bfb

File tree

1 file changed

+305
-0
lines changed
  • src/docs/devices/Norvi-IIOT-AE02-I

1 file changed

+305
-0
lines changed
+305
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,305 @@
1+
---
2+
title: Norvi IIOT AE02-I
3+
date-published: 2025-04-14
4+
type: misc
5+
standard: global
6+
board: esp32
7+
difficulty: 2
8+
---
9+
10+
## Overview
11+
12+
This is a DIN mounted PLC-style ESP32 unit with 24V supply, OLED display, RS485, up to 8x 24V digital inputs, up to 6x 4-20mA analogue inputs, up to 6x 0-10V analogue inputs, up to 8x open collector outputs, or up to 6x 5A relay outputs (depending on the model).
13+
There are expansion modules that operate via i2c to provide more inputs or outputs.
14+
15+
The example below is for the 4-20mA current input version, with an attached 8x relay output module.
16+
17+
## Product Images
18+
19+
![Norvi IIOT AE02-I](https://github.com/user-attachments/assets/11dfaf8e-2827-4a4a-9ca9-9741d2220a35)
20+
21+
![8x 5A Relay Expansion](https://github.com/user-attachments/assets/fff40b67-0877-451f-a8ff-5c0f12929f7a)
22+
23+
![Schematic Front View](https://github.com/user-attachments/assets/edc0435c-f4db-41a7-91b8-dca2c112c675)
24+
25+
More details at the product website [here](https://norvi.lk/norvi-iiot-industrial-esp32-for-iiot-applications) or a very similar version [here](https://sensoper.com/shop/sc-se-i8-am6-to2/)
26+
27+
[Data Sheet](https://norvi.lk/docs/norvi-iiot-ae02-i-datasheet/)
28+
29+
## Example Configuration
30+
31+
```yml
32+
33+
esphome:
34+
name: iiot-demo
35+
friendly_name: Norvi IIOT AE02-I Demo
36+
37+
esp32:
38+
board: esp32dev
39+
framework:
40+
type: arduino
41+
42+
logger:
43+
baud_rate: 0
44+
45+
api:
46+
encryption:
47+
key: !secret api_key
48+
49+
ota:
50+
- platform: esphome
51+
password: !secret ota_password
52+
53+
wifi:
54+
ssid: !secret wifi_ssid
55+
password: !secret wifi_password
56+
57+
i2c:
58+
sda: 16
59+
scl: 17
60+
frequency: 800kHz
61+
62+
font:
63+
- file: "gfonts://Roboto"
64+
id: roboto
65+
size: 12
66+
67+
display:
68+
- platform: ssd1306_i2c
69+
id: front_display
70+
model: "SSD1306 128x64"
71+
pages:
72+
- id: page1
73+
lambda: |-
74+
it.printf(0, 0, id(roboto), "Hello World!");
75+
76+
graphical_display_menu:
77+
id: main_menu
78+
display: front_display
79+
font: roboto
80+
active: false
81+
items:
82+
- type: menu
83+
text: 'Menu'
84+
items:
85+
- type: label
86+
text: 'Label'
87+
- type: back
88+
text: 'Back'
89+
- type: command
90+
text: 'Exit'
91+
on_value:
92+
then:
93+
- display_menu.hide:
94+
95+
uart:
96+
tx_pin: 1
97+
rx_pin: 3
98+
baud_rate: 9600
99+
100+
modbus:
101+
flow_control_pin: 4
102+
103+
ads1115:
104+
- address: 0x48
105+
id: ads1115_1
106+
- address: 0x49
107+
id: ads1115_2
108+
109+
#This is for the optional Relay expansion module
110+
mcp23017:
111+
- id: mcp23008_relays
112+
address: 0x27
113+
114+
sensor:
115+
- platform: adc
116+
pin: 32
117+
id: button_adc_input
118+
update_interval: 50ms
119+
attenuation: auto
120+
filters:
121+
- delta: 1.0
122+
on_value_range:
123+
- above: 1.25
124+
below: 1.45
125+
then:
126+
- display_menu.up
127+
- above: 1.9
128+
below: 2.1
129+
then:
130+
- display_menu.down
131+
- above: 2.63
132+
below: 2.83
133+
then:
134+
- if:
135+
condition:
136+
display_menu.is_active: main_menu
137+
then:
138+
- display_menu.enter: main_menu
139+
else:
140+
- display_menu.show: main_menu
141+
142+
- platform: ads1115
143+
multiplexer: A0_GND
144+
ads1115_id: ads1115_1
145+
gain: 2.048
146+
id: ai0
147+
filters:
148+
- multiply: 10.0 # V * 1000 (mV) /20(gain) /5(ohm) -> mA
149+
- platform: ads1115
150+
multiplexer: A1_GND
151+
ads1115_id: ads1115_1
152+
gain: 2.048
153+
id: ai1
154+
filters:
155+
- multiply: 10.0 # V * 1000 (mV) /20(gain) /5(ohm) -> mA
156+
- platform: ads1115
157+
multiplexer: A2_GND
158+
ads1115_id: ads1115_1
159+
gain: 2.048
160+
id: ai2
161+
filters:
162+
- multiply: 10.0 # V * 1000 (mV) /20(gain) /5(ohm) -> mA
163+
- platform: ads1115
164+
multiplexer: A3_GND
165+
ads1115_id: ads1115_1
166+
gain: 2.048
167+
id: ai3
168+
filters:
169+
- multiply: 10.0 # V * 1000 (mV) /20(gain) /5(ohm) -> mA
170+
- platform: ads1115
171+
multiplexer: A0_GND
172+
ads1115_id: ads1115_2
173+
gain: 2.048
174+
id: ai4
175+
filters:
176+
- multiply: 10.0 # V * 1000 (mV) /20(gain) /5(ohm) -> mA
177+
178+
binary_sensor:
179+
- platform: gpio
180+
pin: 18
181+
id: dio0
182+
- platform: gpio
183+
pin: 39
184+
id: dio1
185+
- platform: gpio
186+
pin: 34
187+
id: dio2
188+
- platform: gpio
189+
pin: 35
190+
id: dio3
191+
- platform: gpio
192+
pin: 19
193+
id: dio4
194+
- platform: gpio
195+
pin: 21
196+
id: dio5
197+
- platform: gpio
198+
pin: 22
199+
id: dio6
200+
- platform: gpio
201+
pin: 23
202+
id: dio7
203+
204+
output:
205+
- platform: gpio
206+
pin: 26
207+
id: t00
208+
- platform: gpio
209+
pin: 27
210+
id: t01
211+
- platform: gpio
212+
pin: 14
213+
id: led0
214+
- platform: gpio
215+
pin:
216+
number: 12
217+
ignore_strapping_warning: true
218+
id: led1
219+
- platform: gpio
220+
pin: 13
221+
id: led2
222+
- platform: gpio
223+
pin:
224+
number: 15
225+
ignore_strapping_warning: true
226+
id: led3
227+
- platform: gpio
228+
pin:
229+
number: 2
230+
ignore_strapping_warning: true
231+
id: led4
232+
- platform: gpio
233+
pin: 33
234+
id: led5
235+
- platform: gpio
236+
pin: 25
237+
id: expansion_port_pin_1
238+
239+
#Relay Expansion Module (8 relays)
240+
- platform: gpio
241+
name: "Relay R1"
242+
id: relay1
243+
pin:
244+
mcp23xxx: mcp23008_relays
245+
number: 7
246+
mode:
247+
output: True
248+
- platform: gpio
249+
name: "Relay R2"
250+
id: relay2
251+
pin:
252+
mcp23xxx: mcp23008_relays
253+
number: 6
254+
mode:
255+
output: True
256+
- platform: gpio
257+
name: "Relay R3"
258+
id: relay3
259+
pin:
260+
mcp23xxx: mcp23008_relays
261+
number: 5
262+
mode:
263+
output: True
264+
- platform: gpio
265+
id: relay4
266+
name: "Relay R4"
267+
pin:
268+
mcp23xxx: mcp23008_relays
269+
number: 4
270+
mode:
271+
output: True
272+
- platform: gpio
273+
id: relay5
274+
name: "Relay R5"
275+
pin:
276+
mcp23xxx: mcp23008_relays
277+
number: 8
278+
mode:
279+
output: True
280+
- platform: gpio
281+
id: relay6
282+
name: "Relay R6"
283+
pin:
284+
mcp23xxx: mcp23008_relays
285+
number: 9
286+
mode:
287+
output: True
288+
- platform: gpio
289+
name: "Relay R7"
290+
id: relay7
291+
pin:
292+
mcp23xxx: mcp23008_relays
293+
number: 10
294+
mode:
295+
output: True
296+
- platform: gpio
297+
name: "Relay R8"
298+
id: relay8
299+
pin:
300+
mcp23xxx: mcp23008_relays
301+
number: 11
302+
mode:
303+
output: True
304+
305+
```

0 commit comments

Comments
 (0)