質問編集履歴

3

わかりやすく追記

2022/05/30 14:58

投稿

DRJV
DRJV

スコア5

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,6 @@
1
- Atom lite を使用してBlynk 経由でオンラインで指示を出したいと考えています。
1
+ Atom lite を使用してBlynk 経由でオンラインでマイクロサーボを回転させる指示を出したいと考えています。
2
+ なお、Blynk Legacy でなく、Blynk IoTでやろうとしています。
3
+ (Blynk Legacy を利用してBLEでの操作は実行できました。)
2
4
 
3
5
  下記のコードで実行しています。
4
6
  connectwifi()にて、wifiに接続できることは確認しています。
@@ -105,5 +107,9 @@
105
107
  ルータやファイヤウォールの問題でしょうか?
106
108
  しかし検索してもどこもルータの設定を変更する必要があるなどの記述が見つけられず、設定するにもどうすればよいかわからない状態です。
107
109
 
110
+ 参考にしたサイトは下記などです。
111
+ https://next.rikunabi.com/journal/20180207_t21_iq/
112
+
113
+
108
114
  アドバイス、不明点ありましたら教えていただけますと幸いです。
109
115
  よろしくおねがいします。

2

修正

2022/05/30 14:52

投稿

DRJV
DRJV

スコア5

test CHANGED
@@ -1 +1 @@
1
- Atom lite の Blynk または、 arduino cloud IoT を利用したオンライン操作ができない。
1
+ Atom Lite の Blynk または、 Arduino cloud IoT を利用したオンライン操作ができない。
test CHANGED
@@ -1,3 +1,109 @@
1
- Atom lite を使てBlynk 経由で指示を出したいが、うくいかない
1
+ Atom lite を使用してBlynk 経由でオンラインで指示を出したいと考えていす。
2
2
 
3
+ 下記のコードで実行しています。
4
+ connectwifi()にて、wifiに接続できることは確認しています。
5
+
6
+ ```arduino
7
+ #include "M5Atom.h"
8
+ #include "WiFi.h"
9
+ #include "BlynkSimpleEsp32.h"
10
+
11
+ const uint8_t Srv0 = 25;//GPIO No.
12
+ const uint8_t srv_CH0 = 0; //チャンネル
13
+ const double PWM_Hz = 50; //PWM周波数
14
+ const uint8_t PWM_level = 16; //PWM 16bit(0~65535)
15
+
16
+ bool IMU6886Flag = false;
17
+
18
+ char auth[] = "***";
19
+ char ssid[] = "***";
20
+ char pass[] = "***";
21
+
22
+ void setup(){
23
+ M5.begin(true, false, true);
24
+ delay(50); //delay 50ms.
25
+ M5.dis.drawpix(0, 0x00ff00);
26
+
27
+ pinMode(Srv0, OUTPUT);
28
+ ledcSetup(srv_CH0, PWM_Hz, PWM_level);
29
+ ledcAttachPin(Srv0, srv_CH0);
30
+
31
+ //connectWiFi();
32
+ Blynk.begin(auth, ssid, pass);
33
+ }
34
+
35
+ /*
36
+ void connectWiFi(){
37
+ WiFi.disconnect(); // reset
38
+ for (int i = 0; WiFi.status() != WL_CONNECTED; i++)
39
+ {
40
+ if (i % 10 == 0) {
41
+ WiFi.begin(ssid, pass);
42
+ }
43
+ delay(1000); // wait a second for connection
44
+ }
45
+ M5.dis.drawpix(0, 0x0000f0); //BLUE
46
+ }*/
47
+
48
+ BLYNK_WRITE(V0){
49
+ int val = param[0].asInt();
50
+ if(val == 0){
51
+ M5.dis.drawpix(0, 0x00ff00); //GREEN
52
+ for (int i = 4900; i <= 8190; i=i+50) { //500μsec -> 2500μsec 0deg -> 90deg
53
+ ledcWrite(srv_CH0, i);
54
+ delay(10);
55
+ }
56
+ }
57
+ if(val == 1){
58
+ M5.dis.drawpix(0, 0xff0000); //RED
59
+ for (int i = 8190; i > 4900; i=i-50) { //2500μsec -> 500μsec 90deg -> -90deg
60
+ ledcWrite(srv_CH0, i);
61
+ delay(10);
62
+ }
63
+ }
64
+ }
65
+
66
+ uint8_t FSM = 0; //Store the number of key presses.
67
+
3
- 途中で投稿したので追記中
68
+ void loop(){
69
+ if (M5.Btn.wasPressed()){ //Check if the key is pressed.
70
+ switch (FSM){
71
+ case 0:
72
+ M5.dis.drawpix(0, 0x00ff00); //GREEN
73
+ for (int i = 4900; i <= 8190; i=i+50) { //500μsec -> 2500μsec 0deg -> 90deg
74
+ ledcWrite(srv_CH0, i);
75
+ delay(10);
76
+ }
77
+ break;
78
+ case 1:
79
+ M5.dis.drawpix(0, 0xff0000); //RED
80
+ for (int i = 8190; i > 4900; i=i-50) { //2500μsec -> 500μsec 90deg -> -90deg
81
+ ledcWrite(srv_CH0, i);
82
+ delay(10);
83
+ }
84
+ break;
85
+ default:
86
+ break;
87
+ }
88
+ FSM++;
89
+ if (FSM >= 2){
90
+ FSM = 0;
91
+ }
92
+ }
93
+ delay(50);
94
+ M5.update(); //Read the press state of the key.
95
+ Blynk.run();
96
+ }
97
+ ```
98
+
99
+ 開発環境
100
+ 母艦: windows 10
101
+ arduino IDE : 1.8.19
102
+ ライブラリのバージョンはいずれも質問投稿時点の最新。
103
+
104
+ ログを取って色々確認してみましたが、wifiには接続できるものの、その先のblynkと接続できていないようで、blynkからみても端末がオンラインとなっていません。
105
+ ルータやファイヤウォールの問題でしょうか?
106
+ しかし検索してもどこもルータの設定を変更する必要があるなどの記述が見つけられず、設定するにもどうすればよいかわからない状態です。
107
+
108
+ アドバイス、不明点ありましたら教えていただけますと幸いです。
109
+ よろしくおねがいします。

1

追記

2022/05/30 14:41

投稿

DRJV
DRJV

スコア5

test CHANGED
File without changes
test CHANGED
@@ -1 +1,3 @@
1
1
  Atom lite を使ってBlynk 経由で指示を出したいが、うまくいかない
2
+
3
+ 途中で投稿したので追記中