AVR試用記の掲示板

367337

最近、電子工作は一時ほど活発でないみたい。

しばらくは、この掲示板も電子工作にこだわらず使うことにします。

Arduino-IDEの便利さ - kuman

2017/05/22 (Mon) 07:12:54

このところArduino-IDEのお世話になっています。

一時期、関心があり少し調べたことがありましたがあまり使ってはいませんでした。が、ESP8266が面白いデバイスであり、Arduino-IDEでプログラムと書込みができるので嬉しく使っています。

今回はESP8266のLCD表示のために手持ちのmega8をI2Cスレーブに使った表示器を考えました。以前のAVRプログラムで表示には成功しましたがArduinoにはI2Cスレーブを作る機能があることを知りましたのでArduino-IDEでも書いてみたところ試行錯誤はありましたが思い通りの結果を得る事ができました。

昔はbordを自由に追加できましたが最近のArduino-IDEはできないようです。mega8はArduino NG or older で使われているので助かりました。

(次回に続く予定)

ESP8266+BME280 ? - kawana

2017/06/27 (Tue) 04:21:19

Shuji009さん
蛇の目基板に、ESP8266+BME280を組みました。きれいに
まとまっていますね。

Wi-Fiでデ-タ送信されていると思うのですが、受信は
どの様なもので受信されているのですか?

Re: Arduino-IDEの便利さ - Shuji009

2017/06/26 (Mon) 21:08:10

ようやく、蛇の目基板に、ESP8266+BME280を組みました。
試験運転をしかけたところです。

再び、グラフを公開していますが、加速度試験中なので、何の連絡もなしに閉鎖する可能性もありますが・・・
https://thingspeak.com/channels/281837

ESP8266本体(技適品)と電池は秋月のCR123Aを使用しています。
変換基板はAITENDOのシンプルなやつ。
USB-UARTは、つけていませんが、TxD、RxD、グランド等のソケットを付けています。
基板は大きいので、隙間だらけですww
---------------------------------
グラフのデータが飛んでいますが、BME280の測定で、エラーが発生して、無限ループしていました。
秋月版BME280を使っていますが、SDO端子をちゃんとグランドに落として明示的にI2Cのアドレスを0x76と決めておかないと、測定エラーが出るようです。

SCL,SDA Pinの変更 - kawana

2017/06/25 (Sun) 17:32:00

貴重な情報有難うございます。
試してみます。

https://www.arduino.cc/en/Reference/Wireを読もうかと
考えていました。
ダメならば、SoftI2CのLCDル-チンを再検討してみようと
考えていました。これならば自分でSCL、SDAを定義するのでWire.hは必要有りません。
#include SCL 0
#include SDA 1

ESP8266 I2Cのポート番号 - kuman

2017/06/25 (Sun) 16:28:33

ESP8266 I2Cのポート番号 を自由に決めたい、ということなら実験してみました。
http://kuman2600.web.fc2.com/esp/e02esp_memo.html#3

wire.begin(4,5);

と書けば、SDAがGPIO4、SCLがGPIO5になります。
他のポートも試しています。

Re: Arduino-IDEの便利さ - kawana

2017/06/25 (Sun) 15:56:45

Arduino/UNO boardでI2CLCD(ACM160NI)に正常に文字表示
出来ています。

このProgramをWeMOS D1で動作させようとしているのですが簡単に動作させるにはどうしたら良いですか?

#include<Wire.h>を使用しています。
これだとSCL:A5、SDA:A4が使用されます。
Wire.hを修正して動作させる事を考えていますが、
無理でしょうか?

NODEMCU board - kawana

2017/06/25 (Sun) 07:33:30

kumanさんご説明ありがとうございます。
私のボ-ドは、CH340Gがセットしてありました。

Re: ESP8266MOD AI_Thinker - kuman

2017/06/24 (Sat) 14:52:06

ここに書きました。

http://kuman2600.web.fc2.com/esp/e05esp_ai.html

Crash course on NodeMCU Arduino - kawana

2017/06/24 (Sat) 14:31:22

http://www.instructables.com/id/Quick-Start-to-Nodemcu-ESP8266-on-Arduino-IDE/

NodeMCUをArduinoとして使用する方法でしょうか?

7行くらいつつ翻訳ソフトで翻訳してみようか、

Re: NodeMcu Lua ESP8266 - kuman

2017/06/24 (Sat) 14:23:04

はい、Arduino-IDEで使えています。

ただ、TeraTeamでの通信をすると、立ち上げるたびにリセットがかかったように思います。

NodeMcu Lua ESP8266 CP2102 WIFI インターネット 開発ボード - kawana

2017/06/24 (Sat) 14:02:50

HiLetgo NEW バージョン NodeMcu Lua ESP8266 CP2102 WIFI インターネット 開発ボード Arduino [並行輸入品]

上記品を購入した。
そうしたら、Kumanさんの購入後の評価が有りました。
Arduinoとして動作確認はOKですか?

NODEMCU? - kawana

2017/06/24 (Sat) 04:30:15

https://github.com/nodemcu

NODEMCUは、いろんな言語系が有るのが分かった。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/23 (Fri) 21:55:50

「Lチカできない」

 単純ミスは除く

(1)ボード選択が違う場合
ArduinoIDEでのツール -> ボード選択でも悩むことがあります。
ボード選択を間違えると、動かないことが往々にしてあります。

(2)ポートが使えないものを使っている
ボードが正規になっていても、使えないポートを記述していることもあります。勿論動作しません。

これ以上は、超能力者でないので、分からないです。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/23 (Fri) 20:12:47

kumanさん、どうもです。

>シリアル変換器がついているので

正に書かれおられる通り、回路図の中ほどにあるUSBtoUARTをみると、CH340のnDTRからトランジスタを通して、ESPのnRSTに行っていますね。書き込む直前に、flashボタンをおせば良いようになっているのですね(さらにuserボタンをみても・・・)。

NODEMCU0.9が動作しません? - kawana

2017/06/23 (Fri) 19:01:13

Program WriteしてError無く書き込み終了するのですが
D10,D0Blinkしません。
ArduinoFirmが書かれていないのでは?

Re: Arduino-IDEの便利さ - kuman

2017/06/23 (Fri) 18:37:02

Shuji009さん、ありがとうございます。

間違って書きました。

flashボタンを押した状態でリセットしなければならないので、リセットを離すときはflashを押していなければならない、のでした。

日頃はそうしているのにドジでした。

ところで、kawanaさんのNodeMCU v0.9はシリアル変換器がついているので、ソフトウエアでリセットがかかるのではないのでしょうか。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/23 (Fri) 17:47:47

添付画像の回路図が、おそらく、そのNODEMCUだと思います。
確かに、ボタンは2つありますが、リセットボタンは回路図にもありません。
と、いうことは、少し乱暴ですが、やり方は決まると思います。
なお、画面の上の中にもフラッシュからのブートと書き込みのやり方(ポートをどうするか)を書いています。

参考にしたサイト
https://github.com/nodemcu/nodemcu-devkit
------
kumanさんへ
私は、resetボタンとflashボタンを
 (ほぼ)同時におす
  先に、resetボタンを離す
  後にflashボタンを離す
 とやっています。

NODEMCU VER0.9 書き込むが動作せず - kawana

2017/06/23 (Fri) 15:09:24

2つのスイッチを2本の指で押し、
まずFlashSWを離してから、
次にresetSWを離し、
arduino-IEDの書き込みボタンを押しています。

kumanさんありがとうございます。
ESPr Developer Rev.4は出来ました。しかし

NODEMCU VER0.9の方は、出来ません。
SWは、USERとFLASHの2個あります。
USERSW=RESETSW ?

ボードの書き込み - kuman

2017/06/23 (Fri) 13:15:03

ESP8266は、シリアルからプログラムを書き込むときは
GPIO0(ポート0)をGNDに落とした状態でリセットする必要があります。

このポート0をLに落とすのがFlashスイッチだと思います。

私は、書き込みの前に 2つのスイッチを2本の指で押し、まずFlashSWを離してから、次にresetSWを離し、arduino-IEDの書き込みボタンを押しています。

実際はarduino-IEDはコンパイルしてから書きに行きますのでスイッチのタイミングが少々ずれてもOKです。

この2枚のボ-ドは書き込みに失敗する - kawana

2017/06/23 (Fri) 11:27:40

NODEMCU VER0.9と
ESPr Developer Rev.4(SWITCH SCIENCE)の書き込みが
上手く出来ない?

この2つのボ-ドは、RESETSWとFLASHSWが有る。
このSWを操作しないと、書き込みが出来ないのか?

動きました。Blink WeMOSD1 - kawana

2017/06/23 (Fri) 05:12:31

WeMOs D1BoardでD13 LED(SCK printed) Blink 出来ました。

Shuji009さん、kumanさんご指導ありがとうございました
ProgramListにConnector# & Signalを記述
Board選択 ESP8266を memoしました。

他のボ-ド、NODEMCU VER0.9, ESPr Developer Rev.4
でも、同じ事をしてみよう。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/22 (Thu) 15:24:54

Arduino IDEとは関係ありませんが、WeMos D1 R2が遊んでいますので、micro pythonを入れてみました。

https://docs.micropython.org/en/latest/esp8266/esp8266/tutorial/intro.html
(Lチカまでやってみました)

BME280を使った、簡易気象計の実験は電池をCR123Aにして実験中です。一番持ちそうです。
また、こちらは、KiCadで回路図を書いています(進行形)。どちらかというとKiCadの勉強中です。

Shuji009さん、ありがとうございます - kawana

2017/06/22 (Thu) 07:52:13

kumanさんに、前に説明して頂きましたが、
Arduinoと考えてプログラムする事も出来ると言う事と
理解しました。

通常のArduinoはDigitalPort D0~D13 
AnalogPort A0~A5(D14~D19)20本も有りますが
ESP8266は、この本数は無いですね、

Re:ESP8266を勉強したいのですが - kuman

2017/06/22 (Thu) 07:43:17

Arduino-IDEは 1.83 が最新版だと思います。

1.8より前は2つに別れたArduinoの片方はESP8266に対応していなかったようです。
今では1.8以降を使うのが常識です。(1.6などは過去の記述です。記事には書いた日付がほしい。)

ESP8266には、2つの機能があります。1つはWiFi、2つ目は極めて大きなプログラム領域を持つマイコンです。
WiFiは私は理解不足です。手の付け所がわかっていません。
マイコンはArduino-IDEで書けて、プログラム量を心配せずに使えるのが特徴だと思います。

Lチカ、LCD表示(I2C)、センサ(CdS、温度など)と進むと楽しいでしょう。

書込み用のUSB-シリアル変換(3.3V)が必要です。

なお、電源はUSBでない方がトラブルが少ないかも。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/22 (Thu) 05:58:05

>ESP8266を勉強するため準備する事

(1)ブレッドボードとそのジャンパー線、試験したいセンサーを準備する。
 ブレッドボードに慣れる。

(2)インストールしたArduino IDE環境で、ESP8266(最初はDemosD1が良いと思います)サンプルのLチカプログラムが、UART経由で書き込めて、動作するようにする。

・上記のLチカプログラムを色々変更する。
 点滅時間の変更、LEDを増やす等。

(3)ブレッドボードでの試験に慣れることが必要

(4)Ardinoの流儀でのプログラムをサンプルを通して、慣れる。

----------
まずは、こんなとこだと思います。ブレッドボードに慣れないならArduino環境は意味ないと言っても過言ではないです。

ESP8266を勉強したいのですが? - kawana

2017/06/22 (Thu) 02:43:07

ESP8266を勉強するため準備する事は何でしょうか?
下記にArduino1.65をInstallする指示が有りますが
Arduino1.85 install済みです。

http://qiita.com/azusa9/items/264165005aefaa3e8d7d

Re: Arduino-IDEの便利さ - Shuji009

2017/06/19 (Mon) 21:00:18

2日前の土曜日から、試験回路の電源をLi-ION電池(650mAh)+3端子レギュレータから秋月で購入したCR2(750mAh)に替えました。

1日程度しか動作をしなかったのが、2日半以上動作しています。
CR123Aでも試験をして、良ければ、プロタイプ基板を作って、外で実験してみようと思っています。
(別のこともやりたいしw)

ただし、動作はしていますが、電圧が低くてESP8266の規格外の使い方になっています。

リチウム電池 CR2
http://akizukidenshi.com/catalog/g/gB-10130/

Re: Arduino-IDEの便利さ - Shuji009

2017/06/16 (Fri) 09:17:11

想定よりもあまりに、電池が無くなるのが早いので、嫌だな、と思っていたら、その想定が間違っていました(汗)。
リチウムイオン電池の直後で、電流測定をしていると思ったら、レギュレータの後で測定していました。<--あほ

ということで、1Ω抵抗を電池とレギュレータ入口の間に付けました。初期データを取り直して、試験中です。<-- 今ここ
------------------------------
ディープスリープ時 0.8mA
 
計測&WiFi使用時 73mA --- 1測定で5秒程度

試験中の測定方法
 1セット 動作(73mA x 5sec) ディープスリープ(0.8mA x 30 sec)
         = 389mA →400mA(35sec)とする
         --> 11.5mAs
 
        
 電池 650mAh=39000mAm=2340000mAs
 
 予測時間 2340000/11.5=203,478sec=3391min=56h
 予測回数 2340000/400=5850回

Re: Arduino-IDEの便利さ - Shuji009

2017/06/15 (Thu) 10:25:38

kumanさん、どうもです。

リチウムイオン電池(650mAh)では、容量が少ないのは間違いないのですが、1測定で8秒はかかりすぎだろうと、いうことで、現在検討中です。
とりあえず、ググると、DHCPでのIPアドレス割り当ては時間がかかるので、固定IP方式が早いらしいので、今は、固定IPを付与するようにプログラム変えて試験中です。
------------------------------
WiFi.begin(ssid, password);

while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}

WiFi.config(IPAddress(192, 168, 0, 25), WiFi.gatewayIP(), WiFi.subnetMask()); ///*****
------------------------------------
WiFi.begin
WiFi.status
WiFi.config
 の順番でないと、うまく動きませんでした。
 当初、begin直後に、config入れていて、webに接続できず悩みました(汗)。
 実際どれくらい速くなったのというと、8秒が5秒程度になったようです。ただwifiルーターの都合等によってはもっと時間がかかることがあります。

Re: 簡易気象測定回路 - kuman

2017/06/13 (Tue) 20:21:24

Shuji009さん、まいどです。

簡易気象測定回路が面白そうなのでそのうちに試してみたいと思います。
BME280はないのですがBMP280があるので気圧と温度で実験します。
ESP8266のWiFiの部分がわかりません(理解できていません)ので、詳しく教えていただきたいと思っています。
ぼちぼちに研究したいのでその節はよろしくお願いします。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/12 (Mon) 11:23:30

kumanさん、どうもです。

簡易気象測定回路を少し変え、電池(リチウムイオン電池、16340 3.7v 650mA)自体の減り具合を1分ごとに記録しています。それと電池の+側とレギュレータIN側に1Ωの抵抗をいれ、その両端電圧にテスターをいれてみました(簡易電流計)。
それによると、動作中は、68mA(68mV)のようです(突発電流とかは不明)。動作していないとき(deepSleep時)は0mA(テスターでは測定不能なので実際に0かどうかは不明)です。

(68を70として計算)
現在の環境だと、1サンプル8秒かかるので、おおまかに、
650mAh / (70mA x 8sec) = 4178(回)

計算上4178回の測定ができるってことになります。
今は、1分で1回測定するようにしていますので、計算上3日弱(実際はもっと短いと思います)。

勿論wifi使用しています。画像は、昨日のもの(非公開)。

レギュレータですが、kumanさんが紹介されているものも買っていたのですが、別のものに使用してしまって1個も残っていませんでした。なので、パーツ箱にあった下の↓を使っています。

低損失三端子レギュレーター 3.3V1A TA48033S
http://akizukidenshi.com/catalog/g/gI-00534/

Re:ESP8266消費電力 - kuman

2017/06/12 (Mon) 10:06:24

電波を出しているときは200~300mA出ないかと思います。状況によって変わるようですが。
電波を出さないときは80mAくらいでしょう。

ただ、瞬間的に800mAくらい流れるとの話もありますので私は電源はUSBからでなく、3.3V、1A程度の別電源を使っています。

Re: Arduino-IDEの便利さ - kawana

2017/06/12 (Mon) 07:25:40

soft_i2c_LCDの見通しがついて来たので、ESP8266に取り組んでみようと思った。ESP8266の概要も知らないので
ウィキペデイアを検索した。
https://ja.wikipedia.org/wiki/ESP8266

Clock Speed 80M or 160Mと有るので、消費電力は多いか
0.5x3.3Vで 1.65W これわ大きいか?

Re: Arduino-IDEの便利さ - kuman

2017/06/11 (Sun) 13:18:00

Shuji009さん、こんにちは。

>3V3は、006Pから3端子レギュレータで…
9Vからはもったいないし、ESP8266は大食いだから。

単3×3でLDOとか。amazonのスイッチングレギュレータ降圧型(SODIAL(R) 5件ミニDC-DCコンバータステップダウンモジュール)は電源が5V必要な感じです。

3.3Vの電池駆動では今のところリチウムイオン電池18650+LDO(秋月NJM2845DL1-33)が私のスタンダードです。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/11 (Sun) 10:14:59

kumanさん、どうもです。

http://www.esp8266.com/viewtopic.php?f=13&t=11863
の最後の方に

>No Brownout hardware inside ESP8266.

と書かれていますが、ブラウンアウト対策はじぶんでやれってことのようですね。

とりあえず、電池の減り具合の傾向が知りたいので、電圧測定を加えて、例のthingtalkのサイトに1分おきにgetしています(非公開ですが)。
ただ、レギュレータ越えのチェックなので、直接電池電圧を監視するようにした方がいいような気がしています(汗)。それとも、普通の電池に替えるか・・。


Re: 電池切れでコアダンプ - kuman

2017/06/11 (Sun) 09:20:46

ブラウンアウトでプログラムが破壊されるのはAVRでも話題になっていましたがESP8266でも起こるのですね。
しかも、繰り返すとチップが壊れる(使用不可)と言うのはもっと困ります。

ESP8266 BOR または ESP8266 ブラウンアウト で検索しても出てこないようです。

電池の場合、電源が回復する見込みはないのですからリセットだけでは不安を感じます。

CMOSを電源の最初に入れて、ADCで電圧低下を見たら永久に電源offにするというのはいかがでしょうか。

リチウムイオン電池でリセットICでコントロールしたらoffで電圧が一時的に上がり長時間ON、OFFを繰り返すのを経験しました。

Re: Arduino-IDEの便利さ - kawana

2017/06/11 (Sun) 04:11:53

Brown-out Detectionの様な機能は無いのでしょうか?

電源電圧低下で暴走は、機能が脆弱過ぎるのでは?

電池切れでコアダンプ - Shuji009

2017/06/10 (Sat) 19:53:59

リチウム電池で実験していたのですが、1日弱程度で、暴走?してしまい、コアダンプ?を出して、こけてしまいました。

↓ コアダンプ?
-----------------------------------
Exception (9):
epc1=0x4021f484 epc2=0x00000000 epc3=0x00000000 excvaddr=0x3ffee08a depc=0x00000000

ctx: sys
sp: 3ffffd10 end: 3fffffb0 offset: 01a0

>>>stack>>>
3ffffeb0: 40220013 3ffecd80 3ffeb6f8 00000001
3ffffec0: 00000002 0000003c 4010100b 3ffecd80
3ffffed0: 00000000 00000000 00000000 00000000
3ffffee0: 00000000 00000000 00000000 00000000
3ffffef0: 00000000 00000000 00000000 00000000
3fffff00: 00000000 00000000 00000000 00000000
3fffff10: 00000000 00000000 00000000 00000000
3fffff20: 00000000 00000000 0000002e 00000000
3fffff30: 3fff0d34 4021faa3 3ffecf60 3fff0974
3fffff40: 00000000 3ffee0d8 3ffecf60 3ffeb6bc
3fffff50: 3ffeb6bc 0000013a 00000000 0000002e
3fffff60: 00000000 0000013a 402147bb 3ffecf60
3fffff70: 3ffeb6b0 3fffdcc0 3ffe9618 3ffe9618
3fffff80: 00000080 3ffecf60 00000000 3fffdcb0
3fffff90: 402140db 3fffdab0 00000000 00000000
3fffffa0: 3ffe9618 40000f49 3fffdab0 40000f49
<<<stack<<<
"@ェrjrA(!
-------------------------------------------

電圧が一定以下になるとこけてしまうようです。
さらに、リセットしても電源を入れなおしても動かなくなってしまいました。
が、再度UARTからプログラムを入れなおせば、動作はするようになりました。
何回も修復が可能かどうかは不明です(ESP32は回数がきまっているらしい)。

やはり、電池運用の場合は、A/Dコンバータを入れて電圧監視をしないと駄目ですね。

8266のプログラム容量 - kuman

2017/06/10 (Sat) 15:09:00

話題が変わってごめんなさい。

ESPROOM02(ESP8266)のプログラムに色々加えてやや大きくしました。
コンパイル後のフラッシュメモリ使用量ですが、ごく短いプログラムを書いたときに 22% 使用と出て、そこからおよそ8.6kB書き込んだときに使用量が 23% になりました。
プログラム用のフラッシュが 1MB であるというのと矛盾しない結果となりました。

Re: Arduino-IDEの便利さ - きゅうる村 URL

2017/06/10 (Sat) 14:48:03

ets?

flashに書き込まれているブートプログラムに関係するのかな。

Re: Arduino-IDEの便利さ - ラジオ少年

2017/06/10 (Sat) 13:47:19

Shuji009さん。

了解です。どうも有難うございました。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/10 (Sat) 13:34:55

ラジオ少年さん、どうもです。

ESP32のTeraTermの画像ですが、何のプログラムも入れていないケースから出したばかりのESP32-DevKitCをUSBでPCとつなぎ、TeraTermで認識したUSBシリアルのポート番号とボーレートを115200bpsとして表示させただけのものです。
なので、開発環境は、一切使っていません。まだ構築もしていません。ということで、よろしいでしょうか?

因みに、ものは、秋月の
http://akizukidenshi.com/catalog/g/gM-11819/
です。

Re: Arduino-IDEの便利さ - ラジオ少年

2017/06/10 (Sat) 13:24:26

Shuji009さん、質問です。

ESP32-DevKitC(秋月)は持っていませんので、何もできませんが、画像の表示はarduinoでやっているのですか?

それとも、esp-idfですか?

ESP-IDF環境をいじくっているのですが、make menuconfigでエラーが出てうまくいきません。
libinitl.hがないとはじかれます。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/10 (Sat) 09:38:01

きゅうる村さん、どうもです。

リンク先ですが、ESP32なんですね。
ESP32の場合、ブートは115200bpsでモニターできるんですね。

手持ちのESP32-DevKitC(秋月)で確認しました。

>ets Jun 8 2016 00:22:57

Re: Arduino-IDEの便利さ - きゅうる村 URL

2017/06/10 (Sat) 08:24:39

ets?
↓ここで、esp-idfのコンパイル後のブートでも出ているので、それに関連した略号なんでしょうが、わかりません。
http://esp-idf.readthedocs.io/en/latest/get-started/index.html#get-esp-idf

Re: Arduino-IDEの便利さ - kawana

2017/06/10 (Sat) 03:46:13

>ets Jan 8 2013

ets: Establish Time Stampからの頭文字かしら?

establish: 設立、確立

Re: Arduino-IDEの便利さ - きゅうる村 URL

2017/06/09 (Fri) 21:45:59

>ets Jan 8 2013

このバージョンができた日?
etsはコードネーム??

Re: Arduino-IDEの便利さ - Shuji009

2017/06/09 (Fri) 20:05:56

ラジオ少年さん、ありがとうございます。

電源オン
ets Jan 8 2013,rst cause:1, boot mode:(3,0)
ets Jan 8 2013,rst cause:1, boot mode:(3,7) <<たまにでます

ESP8266のリセット
ets Jan 8 2013,rst cause:2, boot mode:(3,6) <<普通これみたい
ets Jan 8 2013,rst cause:1, boot mode:(3,6) <<滅多に出ない

deep sleepからの復帰
ets Jan 8 2013,rst cause:2, boot mode:(3,6) <<GPIO16からリセットしているだけ

----
ところで、最初のetsって何なんでしょうか?est(EST)なら、米国東部標準時になるとのことなんですが、ググってもわかりませんでした。

Re: Arduino-IDEの便利さ - ラジオ少年

2017/06/09 (Fri) 18:59:20

今晩は。
最初から下記の様に設定してやって見ました。

Serial.begin(74880);

結果は添付画像の様になりました。
Reset スイッチを押しても同じ結果になります。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/09 (Fri) 17:49:11

自作の方のESP-WROOM02のbootは、以下のようになります。

プログラムをSerial.begin(74880);にしています。

ESP8266のリセット時
-----------------------------------------------
ets Jan 8 2013,rst cause:2, boot mode:(3,6)

load 0x4010f000, len 1384, room 16
tail 8
chksum 0x2d
csum 0x2d
v00000000
~ld


int size = 4 Bytes(以下略)
-----------------------------------------
電源オン時は、1行目のboot modeが
ets Jan 8 2013,rst cause:1, boot mode:(3,0)
あるいは、
ets Jan 8 2013,rst cause:1, boot mode:(3,7)
となることがありました。
------------------------------------------
追試できる人!!!
1行目の結果を教えてください。
よろしくお願いいたします。

74880/115200 bps - kawana

2017/06/09 (Fri) 13:15:14

どうして最初は74880で動かすのでしょうか?

Re: Arduino-IDEの便利さ - きゅうる村

2017/06/09 (Fri) 12:29:59

通信スピードが変わる目印が何かあればと。

ゴミでは有りません - kawana

2017/06/09 (Fri) 11:30:11

なるほど、

最初の、bps
ESP8266の最初のメッセージだけは 74880bps で動いているようです。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/09 (Fri) 10:04:28

昨日、WeMosD1 R2のファームをねむいさんの昔のブログを参考に、atコマンドのファーム(新しいバージョンですが)に戻しました。

それをkumanさんが書かれている、74880bpsにTeraTermを設定しました。
画像(と下のログ)は、ブートシーケンスでの文字列です。
--------------------------------

ets Jan 8 2013,rst cause:2, boot mode:(3,6)

load 0x40100000, len 2408, room 16
tail 8
chksum 0xe5
load 0x3ffe8000, len 776, room 0
tail 8
chksum 0x84
load 0x3ffe8310, len 632, room 0
tail 8
chksum 0xd8
csum 0xd8

2nd boot version : 1.6
SPI Speed : 40MHz
SPI Mode : QIO
SPI Flash Size & Map: 32Mbit(1024KB+1024KB)
jump to run user1 @ 1000

rf cal sector: 1019
freq trace enable 1
rf[112] : 03
rf[113] : 00
rf[114] : 01

SDK ver: 2.1.0(116b762) compiled @ May 5 2017 16:08:55
phy ver: 1134_0, pp ver: 10.2
----------------
ここまではOKでしたが、
以下、
)ヘNO
となり化けています。

Re: ゴミ表示 - kuman

2017/06/09 (Fri) 09:05:52

「これ」はゴミではありません。

ESP8266の最初のメッセージだけは 74880bps で動いているようです。

TeraTeamのボーレートを手動で 74880 に設定してリセットすると化けていない文字が見えて、意味があるそうです。
http://neo-sahara.com/wp/2015/12/17/esp8266%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%ABesp-wroom-02%E3%82%92%E8%A9%A6%E3%81%99-%E3%81%9D%E3%81%AE%EF%BC%91%EF%BC%91-%E8%B5%B7%E5%8B%95%E6%99%82%E3%81%AE%E3%83%A1%E3%83%83%E3%82%BB/

もっとも、その先は化けますが。

ゴミ表示 - kawana

2017/06/09 (Fri) 08:29:34

SerialPrinの最初のゴミと想像します。
最初にBuferClearを入れるなどしても取れないのでしょうか?

後半では、正常に表示されている事からSpeedもあって
いると思います。

Re: Arduino-IDEの便利さ - きゅうる村 URL

2017/06/09 (Fri) 08:12:19

>ところで、画像の「これ」の要らない文字郡は何とかならないのでしょうかね?

cr,lfのうちのlfだけ効いていて、文字化けもしている感じですね。

Re: Arduino-IDEの便利さ - ラジオ少年

2017/06/09 (Fri) 08:05:21

お早うございます。
Shuji009さんの検証をやって見ました。

void setup() {
Serial.begin(115200);
}

int cnt = 0;

void loop() {
while (cnt < 1){
Serial.println();
Serial.print("short size = ");
Serial.print(sizeof(short));
Serial.println(" Bytes");

Serial.print("long size = ");
Serial.print(sizeof(long));
Serial.println(" Bytes");

Serial.print("float size = ");
Serial.print(sizeof(float));
Serial.println(" Bytes");

Serial.print("double size = ");
Serial.print(sizeof(double));
Serial.println(" Bytes");

int x=1; // 0x00000001
if (*(char*)&x) {
Serial.println();
Serial.println("little endian "); /// little endian. memory image 01 00 00 00
}else{
Serial.println("BIG endian "); ///big endian. memory image 00 00 00 01
}
cnt ++;
}
}

結果は添付画像のとおりでした。
ところで、画像の「これ」の要らない文字郡は何とかならないのでしょうかね?

int長 & リトル・エンディアン - kawana

2017/06/09 (Fri) 03:17:39

kumanさん、Shuji009さん、解り易い説明ありがとう
ございます。
BigはByte単位で入れ替わっていると勘違いしていました
PDFはメモリ配置が異なっているのですね、解りました。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/08 (Thu) 16:35:25

kumanさん、どうもです。

C言語のintは、CPUに依存するので、ESP8266のintは、32ビットになるのですね。

Serial.print("int size = ");
Serial.print(sizeof(int));
Serial.println(" Bytes");

で、確認しました。

ついでに、リトル・エンディアンであることの確認もしてみました。
http://www.math.kobe-u.ac.jp/~kodama/tips-C-endian.html

int x=1; // 0x00000001
if (*(char*)&x) {
Serial.println("little endian "); /// little endian. memory image 01 00 00 00
}else{
Serial.println("BIG endian "); ///big endian. memory image 00 00 00 01
}
-----------------------------------------

int size = 4 Bytes
char size = 1 Bytes
short size = 2 Bytes
long size = 4 Bytes
float size = 4 Bytes
double size = 8 Bytes

little endian

Re: ESP8266のint - kuman

2017/06/08 (Thu) 15:12:35

Arduino-IDEでESP8266を扱うときは int は16ビットではなく32ビット整数になるようです。

Arduino-IDEは32ビットCPUではそうなるようです。

Re: 命令RAM 64KiB、データRAM 96KiB - kuman

2017/06/08 (Thu) 01:31:50

ESP8266のCPUは 命令RAM 64KiB、データRAM 96KiB のようです。

プログラムのROMは持っていないとのことです。
プログラムROMは外付けで、ROMの内容をプログラムROMに読み込んで実行するようです。

外付けROMを1MB持っていて、そのうちの必要な部分だけをRAMに読み込んで実行すると考えるとプログラム全体が64KiBを遥かに超えていても使えるのではないでしょうか。

Arduino-IDE で Generic ESP8266 module を選択するとflashが 512k 1M 2M 4M の候補があります。

今使っているものが4MBのflashを持ち、そのうちの1MBがROMとして使われ、その1MBの内容の内今必要なものがRAMに取り込まれる、と考えています。

そうするとArduino-IDEのコンパイル後の表示と合うように思います。
「最大1044464バイトのフラッシュメモリのうち、スケッチが250509バイト(23%)を使っています。
最大81920バイトのRAMのうち、グローバル変数が32984バイト(40%)を使っていて、ローカル変数で48936バイト使うことができます。」
 

Re: Arduino-IDEの便利さ - ラジオ少年

2017/06/08 (Thu) 00:16:48

Shuji009さん、今晩は。
ESPの知識は全くありません。

ESP-WROOM-32はESP8266兄貴に相当するとか、RAM領域も多そうです。

私の持っているのは技適対応ではありませんので、WiFiでは使えません。
この先、色々やるには、対応品を入手する必要がありますが、果たして、、、、ネコに小判?になりそうです。(無駄な出費は避けないと、、)

Re: Arduino-IDEの便利さ - Shuji009

2017/06/07 (Wed) 23:18:40

今更ながら、
https://ja.wikipedia.org/wiki/ESP8266
をみると、知らないことだらけでさわっていることに気が付きます(汗)。

結構衝撃なのが(笑劇かも?)
「命令RAM 64KiB、データRAM 96KiB」。
プログラム領域がRAM!しかも64KiBしかない!単位がKiB!!とか。

読んでいてあーなるほどと、納得することが多いです(汗)。

Re: Arduino-IDEの便利さ - kawana

2017/06/07 (Wed) 20:24:34

プログラムに使えるのは1MBで、それ以外はデータメモリとして使えるようです。

kumanさん有難うございます。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/07 (Wed) 20:23:23

ラジオ少年さん、どうもです。

Arduinoですが、少し前までは、C:\Program Files (x86)にいれていたのですが、何故か私の環境だと、ESP8266関連のツールの追加インストールができませんでした。また、kumanさんからのアドバイスもありましたので、C;\binフォルダに入れなおしています。
なお、C:\Program Files (x86)のArduinoフォルダはArduinoXXXという名前に変えて今のとこと残しています。
(蛇足)
因みに、c:\binフォルダには、コンピューター将棋が数種類入っています。設定によってですが、プロよりも強いやつらですw

Re: 4M/3M - kuman

2017/06/07 (Wed) 20:17:38

>4M/3Mとは、Memoryの事ですか?3Mの物も有ると言う事?

ESP8266の多くは(と思っているのですが)4MBのflashメモリを持っているようです。
そのうちプログラムに使えるのは1MBで、それ以外はデータメモリとして使えるようです。

が、4MB中、プログラムに1MBを使い残りの3MBをデータメモリに使う方法(4M/3M)と プログラムに1MB、データメモリに1MB使う方法(残りの2MBは何も使わない)があるようです。

少しのデータメモリのために3MBを指定すると無駄な書込み時間がかかると書いてあるところがありました。

Arduino-IDEのインストール - ラジオ少年

2017/06/07 (Wed) 19:08:24

今晩は。連投ごめんなさい。

Arduino IDEはデフォルトでCドライブのProgram Fileの下にインストールされます。

私の場合、Cは容量の少ないSSDですので、Iドライブ(HDD)にインストールして有ります。
しかし、Sketchや、IDE画面からの操作で、Cドライブに関連フォルダが作られ、その中にファイルが収納されることが多い(と云うか、普通はそうなる様です)為、操作上、煩わしく混乱することがあります。

デフォルトのCドライブに入れる方が、良いのではと感じています。面倒なのでこのままにしますが。
皆さんはどうしていますか?

Re: Arduino-IDEの便利さ - ラジオ少年

2017/06/07 (Wed) 09:06:36

お早う御座います。
Shuji009さんのご紹介URLのプログラムにkumanさんのプログラムの一部を使い、ちょっと、遊んで見ました。

Re: Arduino-IDEの便利さ - kawana

2017/06/07 (Wed) 03:36:54

4M/3Mとは、Memoryの事ですか?3Mの物も有ると言う事?
Program領域/data領域の区別と考えると大き過ぎ?

Re: Arduino-IDEの便利さ - kawana

2017/06/07 (Wed) 03:31:13

shuji009さん、情報ありがとうございます。
私のboardは、Rev4でした。

Rev.2で UpLoad OK, Rev.3 UpLoad Can NOT とは、?
ですね。

ESPr Developer (スイッチサイエンス製)のボード表面にRev.2という印刷があるものは4M/3M SPIFFS でUSBシリアルでアップロードできます。
無印やRev.3とあるものは4M/3M SPIFFSでシリアルUSBアップロードはできません。

Re: Arduino-IDEの便利さ - kawana

2017/06/07 (Wed) 03:13:16

誤りを発見しました。
プログラムを変えてみました。

判り易い記述感謝致します。一目瞭然です。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/06 (Tue) 21:46:45

使うかどうかは別にして、ややサイズの大きなフォント・ファイルをフラッシュに入れてみました。
https://www.mgo-tec.com/spiffs-filesystem-uploader01-html
を参考にしました。

kumanさんのSPIFFSのプログラムの最初の方に、フラッシュのルートに入っているファイル名等を表示させるプログラムを入れてみました。
http://esp8266.github.io/Arduino/versions/2.0.0/doc/filesystem.html

添付画像にある、/MSgoth16.fntと/tmp.txtが、ファイル名になります。


Re:ESP8266のメモリ - kuman

2017/06/06 (Tue) 20:35:41

誤りを発見しました。
プログラムを変えてみました。
http://kuman2600.web.fc2.com/esp/e06spiffs.html#1

Re: Arduino-IDEの便利さ - kawana

2017/06/06 (Tue) 18:23:56

WeMosD1 = AE-USM232R + AE-ESP-WOORM-02 と
考えて良いですか?

Re: Arduino-IDEの便利さ - きゅうる村

2017/06/06 (Tue) 16:51:30

>秋月のESP-WROOM-02を使う簡易基板のはんだ付けをしました。
おっ。秋月ブレッドボード風ユニバーサル基板の活用例を発見。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/06 (Tue) 15:01:40

WeMosD1だと、今後簡易気象センサーfor IoTを進めるのが困難なので、秋月のESP-WROOM-02を使う簡易基板のはんだ付けをしました。
センサーは、まだつけていません。
3V3は、006Pから3端子レギュレータで作っています。

先ほどの、kumanさんが作られたSPIFFSのテストプログラムで、プログラムの書き込み方と作成基板のテストを行い、プログラム書き込みとプログラム動作の確認までできました。

Re:ESP8266のメモリ - kuman

2017/06/06 (Tue) 12:09:10

ラジオ少年さん、Shuji009さん
追試していただいてありがとうございます。
kawanaさん、読んでいただいてありがとうございます。

見返してみればデバグ用のデータがそのまま残っていたり、ゴミ掃除ができていなかったりで申し訳ありません。気圧計を(湿度なしですが)2つ完成品を作りましたので気合が入りません。

応用を思いついたらバグやゴミを掃除しようと思っています。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/06 (Tue) 09:07:57

kumanさん、どうもです。

ラジオ少年さんに続いて、私も追試やってみました。
WeMosD1 R2で、です。

そろそろ、生に近いESP8266で実験をしてみようと思っています。

TESTdata Write&Read to Measure - kawana

2017/06/06 (Tue) 08:22:58

簡単な様で難しい、デ-タ-ロガ-?

テスト・デ-タのWrite,Read,表示、実測定とProgramを
分離して考えて行くと、すっきりと理解出来、バグの発見も効率的に行える気がします。
私も、このステップを踏んで行きたいと思います。
参考に成る研究有難うございます。

Re: ESP8266のメモリ - ラジオ少年

2017/06/05 (Mon) 23:51:52

今晩は。
kumanさんのプログラムを動かして見ました。
添付画像が結果です。

ESP8266のメモリ - kuman

2017/06/05 (Mon) 15:53:12

只今、別のことに関心があって皆様の話題に応えられなくてごめんなさい。

ESP8266の多くは4MBのメモリを持っていて、プログラムにはそのうち1MBしか使われないとのことです。

残りの3MBはデータメモリとして使える(多量だ)とのことでその方法をさぐっていました。

測定データの記録が目的なのですが、とりあえずインクリメントした数値を書き残すだけですがファイルのオープン、書込み、読出し、ができるようになりました。
http://kuman2600.web.fc2.com/esp/e06spiffs.html#1

Re: Arduino-IDEの便利さ - Shuji009

2017/06/04 (Sun) 11:27:06

>https://thingspeak.com/channels/281837

ですが、公開を停止しました。
異常データが多すぎのためで、センサーの交換も視野に作り直す予定です。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/04 (Sun) 08:59:51

ラジオ少年さん、おはようございます。

追試ありがとうございます。

>私のArduino環境は破壊されたような状況ですので、コンンパイルでエラーが出てちょっとつまずきました。

私も同じような状況でした(汗)。
ここを乗り越えれば、かなり前進するのですが、モチベーションが無かったら、中々乗り越えられないですね。
最近は、色々なことをいっぺんにするのはきついので、分割して1つづつやるようにしています。

Re: Arduino-IDEの便利さ - ラジオ少年

2017/06/03 (Sat) 23:59:01

今晩は。
私も刺激されNTPサーバーから時刻データを取り込んで見ました。
私のArduino環境は破壊されたような状況ですので、コンンパイルでエラーが出てちょっとつまずきました。
何とかコンパイルして取り合えず時刻表示が出来ました。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/03 (Sat) 19:50:22

現在の試験用のハードウェアの写真です。
ブレッドボードに(裏向きで)刺さっているのが、秋月のBME280です。

BME280は、I2Cで使っています。
deepSleepを使用しているので、D0(IO16)と/RSTをつないでいます(青いジャンパー線)。プログラムをWeMosに書き込むときは、青ジャンパー線を外して、書き込まないと、書き込みエラーがでます。

実際の運用(電池駆動の予定)では、省エネのため、BME280への電源供給用のFET等が必要だと思います(未実験)。

Re: Arduino-IDEの便利さ - kawana

2017/06/03 (Sat) 14:51:55

>thingspeakの操作に慣れるために作ったチャンネルなので、消す予定です。

thingspeakの操作には、自分とのチャンネルを作成して
操作が出来ると言う事ですか?良く理解は出来ていません、thingspeakについて勉強してみます。
ありがとうございました。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/03 (Sat) 07:21:36

>試験中なので上のProgramは消去しますとはどんな意味
ですか?

Programじゃなくて、チャンネルですね。チャンネルっていうのは、thingspeakサイトの概念です。今回のチャンネルは、
https://thingspeak.com/channels/281837
281837チャンネルの「簡易気象データ」ってことになります。
今は、センサーのBME280の傾向を見たり、thingspeakの操作に慣れるために作ったチャンネルなので、消す予定です。

Re: Arduino-IDEの便利さ - kawana

2017/06/03 (Sat) 02:15:19

Arduino-IDEの便利さ - Shuji0092017/06/02 (Fri) 22:55
見ました。素晴らしいProgramですね。

試験中なので上のProgramは消去しますとはどんな意味
ですか?

①今は、dataをgenerateしているので
 実測定が出来たらの意味?
②時々異常デ-タが表示される、未修正のため?

Re: Arduino-IDEの便利さ - Shuji009

2017/06/02 (Fri) 22:58:25

> https://thingspeak.com/channels/281837

とりあえず、一度初期データは消しました。
1分単位でグラフが事変化していく予定です。
ただし、試験中なので、しばらくしたら、上のチャンネルは消す予定です。

Re: Arduino-IDEの便利さ - Shuji009

2017/06/02 (Fri) 22:35:18

ハードウェアも完成していないし(設計もしていない)、ソフトもまだなんですが、thingspeakで、試験しています。試験なので1分おき。
BME280が時々変な値を返しますが、いまのところ原因不明。そのため変なグラフになっています(気圧500hPaとかorz)。

https://thingspeak.com/channels/281837

WeMos D1 R2を使用しています。
プログラム等は、
https://macsbug.wordpress.com/2015/11/02/esp-ae-bme280-thingspeak/
を参考にしています・・・というかほぼそのまま(ビルドエラーになるところの修正とか使用しているESP8266がWeMosと違うので端子の修正程度)。
ピンの情報は、本家ardinoサイト
https://forum.arduino.cc/index.php?topic=446563.0
を参考にしています。


Re: Arduino-IDEの便利さ - Shuji009

2017/06/01 (Thu) 15:17:48

流石に、登場から数年もたっていますので、既に同じことをやろうとしている人のページを発見しました(汗)。
「ESP8266の消費電流の徹底調査」
https://ambidata.io/examples/esp8266-current/

やはり問題は、電池をどうするか?問題になります。

実際に動くところまでやったのかなあ?

Re: Arduino-IDEの便利さ - Shuji009

2017/05/30 (Tue) 15:14:12

これまた自己レスで申し訳ないのですが、time関連は、標準のものでできるとのことです。

http://qiita.com/h_nari/items/d0374d1e1e36b9d988c0

Re: Arduino-IDEの便利さ - Shuji009

2017/05/30 (Tue) 11:26:42

自己レスですが、
>wifi/BME280/ADC とsleepさえあれば、とりあえず簡単な自宅用の簡易気象装置

これだけじゃだめですね(汗)。
測った時刻と場所データ位は必要です。
場所は固定にするので、自分勝手な場所IDを決めておけば、毎回クラウド(単なるサーバー)にポストする必要はないと思いますが、時刻はデータ毎に必要ですね。

今の案としてデータのインデックスは、

センサーID、日時、温度、湿度、気圧、予備を数個

という感じになりそうです。
センサーIDのインデックスは、
センサーID、住所の情報、GPSの情報、設置開始日時、終了日時、有効無効フラグ、予備

日時は、
http://qiita.com/exabugs/items/b1b7430d185b268a1abf
を参考にしました。

Re: Arduino-IDEの便利さ - kawana

2017/05/30 (Tue) 06:14:14

>電池駆動で、外で使う予定ですので、ADCは、電池のモニターで使用し、低くなったら知らせるようにするのに使う予定です。

何か面白そうですね。概略は理解出来たと思っているのですが概略の図は下記と想像しましたが、ズレていますか?
   外              家
BME280/ADC/wifi /////-->     wifi/Arduino
(soft: sleep)


Re: Arduino-IDEの便利さ - Shuji009

2017/05/29 (Mon) 19:47:07

アナログ値を読む実験をやってみました。
ADCは、0chの1つだけです。

単3電池1個と、ボリュームを使って、簡単な実験をしました。

プログラムは、BME280のプログラムに
int adcval = analogRead(0);
と、それをシリアル出力するようにしただけです。

wifi/BME280/ADC とsleepさえあれば、とりあえず簡単な自宅用の簡易気象装置のIoT版ができそうです。

電池駆動で、外で使う予定ですので、ADCは、電池のモニターで使用し、低くなったら知らせるようにするのに使う予定です。

Re: Arduino-IDEの便利さ - Shuji009

2017/05/29 (Mon) 14:00:09

WeMosD1のクローンは色々あるようですね。

ただ、uno互換とうたっているのに、A4/A5にI2CのSDA/SCLが無いのは、いかがなものかと、思いますね。安いから仕方ないってことなんでしょうが。

因みに、Digital側のSDA/SCLとは、同じポートから出ているので、テスターで調べると通通になっています。

Arduino-IDEの便利さ - Shuji009 2017/05/28 (Sun) 19:39:46 - kawana

2017/05/29 (Mon) 12:48:10

Shuji009さんのボ-ドは、Analog Connector側にも
SCL、SDAが出力されている様に思いましたが?
私のボ-ドは、DigitalConnector側に
D15/SCL
D14/SDA
が出ていました。Shuji009 2017/05/28さんの添付写真を
見ると、SCL,SDAに配線が見えます。もしかするとDigital側から配線を持って来ている様にも見えます。私のボ-ドは、powered by wemos.ccの下にSCL,SDAのシルクも裏パタ-ンも有りません。

Re: Arduino-IDEの便利さ - Shuji009

2017/05/29 (Mon) 11:22:09

kumanさん、どうもです。

>>LiquidCrystal_I2C lcd(0x27, 16, 2);
>の16と2は何でしょうか。

既に解答がでていますが、一応調べてみました。

LiquidCrystal_I2C.cppにある、

LiquidCrystal_I2C::LiquidCrystal_I2C(uint8_t lcd_Addr,uint8_t lcd_cols,uint8_t lcd_rows)
{
  _Addr = lcd_Addr;
  _cols = lcd_cols;
  _rows = lcd_rows;
  _backlightval = LCD_NOBACKLIGHT;
}
の、_colsと_rowsなので、1行の文字数(カラム数)と行数になります。1602そのままです。

Re: Arduino-IDEの便利さ - Shuji009

2017/05/29 (Mon) 10:50:53

いつ購入したのか不明なのですが、秋月版BME280を部品箱から発見したので、WeMos D1で試験してみました。

I2Cで動作するようにはんだ付けをして、IDを0x77(デフォルトでは0x76)にして試験しました。

ライブラリーは、
https://github.com/adafruit/Adafruit_BME280_Library
を使いましたが、動作ファイルを作成するためには、IDの変更と、持っていないことでエラーになるインクルードファイルはコメント化する必要がありました。

将来的には、技適合格しているESP8266とこのセンサーを組み合わせて、wifiでネットに測定データをアップしようと思っています。

Re: Arduino-IDEの便利さ - kawana

2017/05/29 (Mon) 10:39:30

>LiquidCrystal_I2C lcd(0x27, 16, 2); ?

16ch, 2line の意味では、同じようなLCDは、0x27(Address)で区分するのかな、

Re: SCL,SDA - kuman

2017/05/29 (Mon) 09:38:59

SCL,SDA はデフォルトで決まっているようですがわかりにくいですね。データシートpdfには書いてあるようです。

マスターの場合は、
wire.begin() ではなく
wire.begin(4,5) と書くとSDAはIO4、SCLはIO5となります。
IOポートはどれでも指定できるようです。
スレーブではまだ試していません。

ところで、
>LiquidCrystal_I2C lcd(0x27, 16, 2);
の16と2は何でしょうか。

Arduino-IDEの便利さ - Shuji009 - kawana

2017/05/29 (Mon) 08:47:31

私のboardには、SCL,SDAのシルクが無く、
パタ-ンも無い様だ。
WeMos D1の大きなシルクは有るのだが、
いろいろなパタ-ンのボ-ドが有るのか、サ-ドパ-テイ
・コピ-メ-カ-もいろいろか?

Re: Arduino-IDEの便利さ - Shuji009

2017/05/28 (Sun) 21:19:38

自己レス+です。

>Letitgo版のWeMos D1クローン

なんじゃ、そりゃー(Letitgoってディズニー?)ですね(汗)。技適関連の話もありますので、突っ込まないでください。

kumanさんの
>ArduinoシステムはインストールせずにC:ドライブの適当なところZIPを解凍して置いています

私も、そのように再構築しました。理由は、推測なので間違っている可能性が高いのですが、下のように考えました。
Arduino開発環境を、\Program Files (x86)\ にインストールしたら、ボード等の追加インストール等ができずに、思わぬエラーになるから、一般ユーザー権限でコピー等ができるところに入れておくのが良いのでは?

Re: Arduino-IDEの便利さ - Shuji009

2017/05/28 (Sun) 19:39:46

kumanさん、追試ありがとうございます。

先ほど、試したI2CのキャラクタLCDのサンプル(↓)にありましたので、試験しました。
https://github.com/fdebrabander/Arduino-LiquidCrystal-I2C-library/blob/master/examples/CustomChars/CustomChars.ino
コンパイルはできるのですが、見事に動きません。

プログラムを見ると、14行目
LiquidCrystal_I2C lcd(0x27, 16, 2);
と、なっています。0x27が該当するI2Cのアドレスとなっています。私の試験したものと違いますねw。
この0x27を先ほどのI2cScannerの結果0x3Fに書き換えてコンパイルと書き込みをしてみました。

動作しました。



I2cScanne - kuman

2017/05/28 (Sun) 16:54:27

面白いプログラムですね。

ESP-12E(master)で試してみました。slaveはmega8のLCDです。

Re: Arduino-IDEの便利さ - Shuji009

2017/05/28 (Sun) 15:38:53

少し前に、アマゾンでPICをi2cスレーブで使ったLCD(1602)を購入した時に、I2cScannerというソフトを使ってみました。その時のArduinoは、Mega328P使用したUNOの前の互換品です。

I2cScannerは、接続されているi2cのスレーブ素子のアドレスを表示するだけなんですが、便利です。

esp8266(WeMos D1)でも、そのままコンパイルして動作しました。

url:
https://playground.arduino.cc/Main/I2cScanner

Re: Arduino-IDEの便利さ - Shuji009

2017/05/28 (Sun) 14:06:16

USBマイクロBのケーブルの件ですが、今回の私のケースの場合は、以下の理由です。駄目だったのが2本(2種類)ありました。

1本目のケーブルの場合
・スマホ等の充電用のケーブルを使ってしまった
 → この場合は、接続しても電源は供給されますが、信号線が接続されていないので、シリアルとして認識されない。勿論、信号線のちゃんとした充電ケーブルもあるとは思いますが・・。

2本目のケーブル(GoogleのNexus10用)の場合
・これは盲点だったのですが、マイクロBの形状が微妙に異なり、ちゃんとささらず、手で固定する必要があった。
 → Nexus10だと問題ないのでそっちに特化する(汗)。

ということです。
ただ、マイクロBケーブルは、(安物で)規格外のものも結構出回っているようです。
それを使ってのプログラムの書き込みでは、デフォルトの921600bpsではエラーになることもあるようです。
http://qiita.com/kummn/items/157bc1bd3260c090dea3
の人は、ケーブルがNGで115200bpsでないと書き込みできなかったそうです。

とりあえず、今のケーブルは問題なく使用できています。

cableによるNG - kawana

2017/05/28 (Sun) 13:37:30

ESP8266の消費電力が問題ではないかと思います。

kumanさんが、電源容量の件は、言っておられましたね、
これが原因と考えると、
ケ-ブル長さ、
心線数、細さ等が微妙に効いて来ているかも?

USBのマイクロBのケーブル - kuman

2017/05/28 (Sun) 10:55:20

ESP8266の消費電力が問題ではないかと思います。
電波を送受信しないときは80mAぐらいだそうですが、起動時には800mA流れるという説もあるようです。

USBケーブルだけでなく、モジュールに乗っているUSBシリアルコンバーター(ft232rlやcp2102など)の3.3V供給能力が瞬間的には堪えられない場合もあるようです。

私は実験中は3.3Vを実験用電源から取ることにしておりUSBバスからは使っていません。
コンバーターを持っているモジュールが一つありますが負荷が少し大きくなるとUSBコンバーターが認識されなくなります。

Arduinoと接続するときはArduinoから3.3Vを取るのは厳禁だそうです。

3.3VのACアダプターを使うのがいいようです。私は5Vを3端子で落としています。

Re: Arduino-IDEの便利さ - kawana

2017/05/27 (Sat) 21:26:19

Shuji009さん、kumanさん 今晩は、

Letitgo版のWeMos D1クローンて何かと思いました。検索すると、Arduino or Wi-fiなのかと言う疑問に突き当たりますが、
私も、Letitgo版のWeMos D1クローン私も買って有りました。本当に安い500¥とは、

kumanさん、Shuji009さんの実験を見て勉強しようと
思います。

USBのマイクロBのケーブルによっては、うまく動きませんでしたので、注意が必要だと思います?

私が思う不良原因の可能性高い順は、
接触不良(CRCを噴霧してしまいます)
断線(あまり無いのでは)
ショ-ト(あまり無いのでは)
線間の容量性、抵抗(これも、あまり無いのでは)
ケ-ブルもコネクタ、線材、構造及び製作方法、価格等、いろいろ有り、選択の難しさを感じてしまいます。

Shuji009さん、お久しぶりです - kuman

2017/05/27 (Sat) 21:24:47

senshuさんの掲示板がなくなって、すんさんのサイトが連絡できなくなって、寂しい限りです。

ESR8266をいろいろ格闘していますが、何がどうなっているのかまったくわかっていません。

Arduino-IDEを使って、WiFiでない、普通のMCUのように扱えるのは少しずつ分かってきましたが、WiFi関係はカテゴリもわからないのでどうして良いかまったく不明です。

でもメモリが大きく面白そうなのでぼつぼつ調べていこうと思っています。

ArduinoシステムはインストールせずにC:ドライブの適当なところZIPを解凍して置いています。追加のボードなどどこへインストールされているのかもわかりません。

また、いろいろと教えて下さるようお願いします。

きゅうる村さん こんばんは - kuman

2017/05/27 (Sat) 21:03:23

ご無沙汰しています。

実は、時間の経過とともに我が身の反応が遅くなっているようです。 若いときには戻らないものですね。

慢性の腰痛で整形外科に通っていますが、「現状維持が最高のトレーニングです」と言われています。外出もままなりません。

きゅうる村さんは幅広い趣味をお持ちで楽しまれているように感じます。
多くに興味を感じるのは素晴らしいことですね。

また、面白いお話を聞かせてください。ブログを拝見しました。

Re: Arduino-IDEの便利さ - Shuji009

2017/05/27 (Sat) 13:04:49

ご無沙汰しています。
昨夜、時間があったので、アマゾンで購入していた、Letitgo版のWeMos D1クローンをArduino-IDEで試験してみました。

残念なことに、私の環境(windows10 、Arduino 1.8.1)だとボードの追加等のインストールでは、
\Program Files (x86)\Arduino\hardware\esp8266com\esp8266/tools/
直下に、esptool/esptool.exeがインストールされませんでした。
別の\Users\<<ユーザー名>>\AppData\Local\Arduino15\packages\esp8266\tools\esptool\<<バージョン>>\esptool.exeにはありましたが)。
esptoolフォルダーを作りexeファイルをコピーして書き込みができるようになりました。

Lチカ、wifiクライアント等のサンプルがあったので、いくつか試してみました。
簡単にwifi接続ができるのは、いいのですが、呼び出す関数の類が今のところブラックボックスですw。

もう一つ、USBのマイクロBのケーブルによっては、うまく動きませんでしたので、注意が必要だと思います。

Re: Arduino-IDEの便利さ - きゅうる村 URL

2017/05/26 (Fri) 21:29:44

ご無沙汰です。
最近は、arduinoにすら手を触れなくなってしまいました。kumanさんがマイペースで背伸びをせず、しかし新しさへの関心を失わずに、楽しまれているのを見ると、少しうらやましい感じがします。

名前
件名
メッセージ
画像
メールアドレス
URL
文字色
編集/削除キー (半角英数字のみで4~8文字)
プレビューする (投稿前に、内容をプレビューして確認できます)

Copyright © 1999- FC2, inc All Rights Reserved.