Skip to content

Commit 44dd870

Browse files
committed
add poesp32 example
1 parent 36b7ab7 commit 44dd870

File tree

4 files changed

+233
-1
lines changed

4 files changed

+233
-1
lines changed
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
/*
2+
Description:
3+
Use UNIT PoESP32 to create HTTP request
4+
UNIT PoESP32 Connect to M5Core PORT-C (G16/17)
5+
before compiling:
6+
M5Stack: https://github.com/m5stack/M5Stack
7+
M5GFX: https://github.com/m5stack/M5GFX
8+
UNIT_PoESP32: https://github.com/m5stack/UNIT_PoESP32
9+
*/
10+
11+
#include "UNIT_PoESP32.h"
12+
#include "M5Stack.h"
13+
#include "M5GFX.h"
14+
15+
UNIT_PoESP32 eth;
16+
String readstr;
17+
18+
M5GFX display;
19+
M5Canvas canvas(&display);
20+
21+
void setup() {
22+
M5.begin();
23+
display.begin();
24+
canvas.setColorDepth(1); // mono color
25+
canvas.setFont(&fonts::efontCN_14);
26+
canvas.setTextSize(2);
27+
canvas.setPaletteColor(1, GREEN);
28+
canvas.createSprite(display.width(), display.height());
29+
canvas.setTextScroll(true);
30+
eth.Init(&Serial2, 9600, 16, 17);
31+
delay(10);
32+
canvas.println("wait device connect");
33+
canvas.pushSprite(0, 0);
34+
while (!eth.checkDeviceConnect()) {
35+
delay(10);
36+
}
37+
38+
canvas.println("device connected");
39+
canvas.println("wait ethernet connect");
40+
canvas.pushSprite(0, 0);
41+
while (!eth.checkETHConnect()) {
42+
delay(10);
43+
}
44+
canvas.println("ethernet connected");
45+
canvas.pushSprite(0, 0);
46+
47+
readstr = eth.createHTTPClient(HEAD, APPLICATION_X_WWW_FORM_URLENCODED,
48+
"http://httpbin.org/get");
49+
Serial.println(readstr);
50+
canvas.println(readstr);
51+
canvas.pushSprite(0, 0);
52+
53+
readstr = eth.createHTTPClient(GET, APPLICATION_X_WWW_FORM_URLENCODED,
54+
"http://httpbin.org/get");
55+
Serial.println(readstr);
56+
canvas.println(readstr);
57+
canvas.pushSprite(0, 0);
58+
59+
readstr = eth.createHTTPClient(POST, APPLICATION_X_WWW_FORM_URLENCODED,
60+
"http://httpbin.org/post",
61+
"field1=value1&field2=value2");
62+
Serial.println(readstr);
63+
canvas.println(readstr);
64+
canvas.pushSprite(0, 0);
65+
66+
readstr = eth.createHTTPClient(PUT, APPLICATION_X_WWW_FORM_URLENCODED,
67+
"http://httpbin.org/put");
68+
Serial.println(readstr);
69+
canvas.println(readstr);
70+
canvas.pushSprite(0, 0);
71+
72+
readstr = eth.createHTTPClient(DELETE, APPLICATION_X_WWW_FORM_URLENCODED,
73+
"http://httpbin.org/delete");
74+
Serial.println(readstr);
75+
canvas.println(readstr);
76+
canvas.pushSprite(0, 0);
77+
}
78+
79+
void loop() {
80+
if (Serial.available()) {
81+
char ch = Serial.read();
82+
Serial2.write(ch);
83+
}
84+
if (Serial2.available()) {
85+
char ch = Serial2.read();
86+
Serial.write(ch);
87+
}
88+
}
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
/*
2+
Description:
3+
Use UNIT PoESP32 connect to MQTT Server
4+
UNIT PoESP32 Connect to M5Core PORT-C (G16/17)
5+
before compiling:
6+
M5Stack: https://github.com/m5stack/M5Stack
7+
M5GFX: https://github.com/m5stack/M5GFX
8+
UNIT_PoESP32: https://github.com/m5stack/UNIT_PoESP32
9+
*/
10+
11+
#include "UNIT_PoESP32.h"
12+
#include "M5Stack.h"
13+
#include "M5GFX.h"
14+
15+
UNIT_PoESP32 eth;
16+
String readstr;
17+
18+
M5GFX display;
19+
M5Canvas canvas(&display);
20+
21+
void setup() {
22+
M5.begin();
23+
display.begin();
24+
canvas.setColorDepth(1); // mono color
25+
canvas.setFont(&fonts::efontCN_14);
26+
canvas.setTextSize(2);
27+
canvas.setPaletteColor(1, GREEN);
28+
canvas.createSprite(display.width(), display.height());
29+
canvas.setTextScroll(true);
30+
eth.Init(&Serial2, 9600, 16, 17);
31+
delay(10);
32+
canvas.println("wait device connect");
33+
canvas.pushSprite(0, 0);
34+
while (!eth.checkDeviceConnect()) {
35+
delay(10);
36+
}
37+
38+
canvas.println("device connected");
39+
canvas.println("wait ethernet connect");
40+
canvas.pushSprite(0, 0);
41+
while (!eth.checkETHConnect()) {
42+
delay(10);
43+
}
44+
canvas.println("ethernet connected");
45+
canvas.println("wait mqtt connect");
46+
canvas.pushSprite(0, 0);
47+
48+
while (!eth.createMQTTClient("120.77.157.90", "1883", "client_id",
49+
"user_name", "password")) {
50+
delay(10);
51+
}
52+
canvas.println("mqtt connected");
53+
canvas.pushSprite(0, 0);
54+
while (!eth.subscribeMQTTMsg("PoESP32_MQTT_D", "2")) {
55+
delay(10);
56+
}
57+
}
58+
59+
void loop() {
60+
if (Serial2.available()) {
61+
readstr = Serial2.readString();
62+
Serial.println(readstr);
63+
canvas.println(readstr);
64+
canvas.pushSprite(0, 0);
65+
}
66+
eth.publicMQTTMsg("PoESP32_MQTT_U", "Hello From PoESP32", "2");
67+
delay(2000);
68+
}
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
/*
2+
Description:
3+
Use UNIT PoESP32 connect to TCP Server
4+
UNIT PoESP32 Connect to M5Core PORT-C (G16/17)
5+
before compiling:
6+
M5Stack: https://github.com/m5stack/M5Stack
7+
M5GFX: https://github.com/m5stack/M5GFX
8+
UNIT_PoESP32: https://github.com/m5stack/UNIT_PoESP32
9+
*/
10+
11+
#include "UNIT_PoESP32.h"
12+
#include "M5Stack.h"
13+
#include "M5GFX.h"
14+
15+
UNIT_PoESP32 eth;
16+
uint8_t data[] = {0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
17+
0x06, 0x07, 0x08, 0x09, 0x10};
18+
19+
M5GFX display;
20+
M5Canvas canvas(&display);
21+
22+
void setup() {
23+
M5.begin();
24+
display.begin();
25+
canvas.setColorDepth(1); // mono color
26+
canvas.setFont(&fonts::efontCN_14);
27+
canvas.setTextSize(2);
28+
canvas.setPaletteColor(1, GREEN);
29+
canvas.createSprite(display.width(), display.height());
30+
canvas.setTextScroll(true);
31+
eth.Init(&Serial2, 9600, 16, 17);
32+
delay(10);
33+
canvas.println("wait device connect");
34+
canvas.pushSprite(0, 0);
35+
while (!eth.checkDeviceConnect()) {
36+
delay(10);
37+
}
38+
39+
canvas.println("device connected");
40+
canvas.println("wait ethernet connect");
41+
canvas.pushSprite(0, 0);
42+
while (!eth.checkETHConnect()) {
43+
delay(10);
44+
}
45+
canvas.println("ethernet connected");
46+
canvas.println("Config TCP Client");
47+
canvas.println("wait tcp connect");
48+
canvas.pushSprite(0, 0);
49+
// AT+CIPSTART="TCP","192.168.3.102",8080
50+
while (!eth.createTCPClient("120.77.157.90", 1883)) {
51+
delay(10);
52+
}
53+
// while (!eth.configTCPClient("192.168.1.5", 60000)) {
54+
// delay(10);
55+
// }
56+
canvas.println("tcp connected");
57+
canvas.pushSprite(0, 0);
58+
59+
if (eth.sendTCPData(data, sizeof(data))) {
60+
canvas.println("send ok");
61+
} else {
62+
canvas.println("send fail");
63+
}
64+
canvas.pushSprite(0, 0);
65+
}
66+
67+
void loop() {
68+
if (Serial.available()) {
69+
char ch = Serial.read();
70+
Serial2.write(ch);
71+
}
72+
if (Serial2.available()) {
73+
char ch = Serial2.read();
74+
Serial.write(ch);
75+
}
76+
}

library.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,5 @@ category=Device Control
88
url=https://github.com/m5stack/m5stack
99
architectures=esp32
1010
includes=M5Stack.h
11-
depends=M5GFX,ESP32CAN,UNIT_ENV,UNIT_4RELAY,ADXL345,FastLED,MODULE_GRBL13.2,Adafruit MCP4725,Adafruit TCS34725,Adafruit NeoPixel,MAX30100lib,MFRC522_I2C,M5_BM8563,M5_ADS1100,M5_ADS1115,M5_FPC1020A,HX711 Arduino Library,PCA9554,TinyGPSPlus-ESP32,Adafruit SGP30 Sensor,FFT,TFTTerminal,ClosedCube TCA9548A,M5GFX,ArduinoJson,M5_EzData,PubSubClient,UNIT_SONIC,PoE_CAM,M5_RoverC,UNIT_UHF_RFID,M5_JoyC,M5_BH1750FVI,ATOM_DTU_CAT1,TinyGSM
11+
depends=M5GFX,ESP32CAN,UNIT_ENV,UNIT_4RELAY,ADXL345,FastLED,MODULE_GRBL13.2,Adafruit MCP4725,Adafruit TCS34725,Adafruit NeoPixel,MAX30100lib,MFRC522_I2C,M5_BM8563,M5_ADS1100,M5_ADS1115,M5_FPC1020A,HX711 Arduino Library,PCA9554,TinyGPSPlus-ESP32,Adafruit SGP30 Sensor,FFT,TFTTerminal,ClosedCube TCA9548A,M5GFX,ArduinoJson,M5_EzData,PubSubClient,UNIT_SONIC,PoE_CAM,M5_RoverC,UNIT_UHF_RFID,M5_JoyC,M5_BH1750FVI,ATOM_DTU_CAT1,TinyGSM,UNIT_PoESP32
1212

0 commit comments

Comments
 (0)