チラシの裏の電子工作

電子工作、PC関係の備忘録というか、チラシの裏

ESP-WROOM-02のまとめメモ

基本的にhttps://www.arduino.cc/について。
orgの方は使ってないのでよく知らない。
arduino1.6.7使用。

Additional Boards Manager URLsは以下を指定。
http://arduino.esp8266.com/stable/package_esp8266com_index.json

ファームウエア

http://bbs.espressif.com/viewtopic.php?f=46&t=850
ここの記事が毎回最新版へのダウンロードリンクになるぽいので、ブックマークしとくといいかも。
更新頻度がかなり高い。

http://espressif.com/en/support/download/sdks-demos
今は多分こっち

ファームウエアダウンロードツール

http://bbs.espressif.com/viewtopic.php?f=57&t=433
こちらも同じく、この記事が最新版へのダウンロードリンクのかな。

こっちもいつの間にか整備されてた。
http://espressif.com/en/support/download/other-tools?keys=Flash+Download+Tools


ファームウエアの書き込みについては、ねむいさんの解説が非常に解りやすい。
http://nemuisan.blog.bai.ne.jp/?eid=215341

とりあえず、ファームウエアをどのアドレスに焼くのかだけ抜粋。
boot_v1.5.bin0x0
at\1024+1024\user1.2048.new.5.bin0x1000
blank.bin0xFE000
esp_init_data_default.bin0x3FC000
blank.bin0x3FE000
ファームのアーカイブ内のbin/at/readme.txtに記載あり。

esp_init_data_default.binをアップロードすると、MACアドレスなんかも変わってしまうとの事だったけど、最新のダウンロードツールでは
既存のMAC読み出し→アップロード→MAC書き戻し
を自動でやってくれるようだった。
けど、念のため開封してすぐに動作確認ついでにMACアドレスはメモして置いた方がイイと思う。

最低限必要なプルアップ/ダウンなど。
こばさんの回路図でまとまってて見やすい。
http://d.hatena.ne.jp/wakwak_koba/20150928
ただ、espressifが出してる資料でも、資料を作った時期によって微妙に回路が違うw
2017/04時点での公式の最小回路は↓こんな感じになってる。
esp-wroom-02最小回路
古い資料に記載されてたIO2のプルアップ抵抗が削除されてる気がする…


電源周りについて。
ねむいさんの解説がわかりやすい。
http://nemuisan.blog.bai.ne.jp/?eid=216185
ピーク350mA強だそうで…
あちこち読んでたら、起動中に貧血を起こして再起動を繰り返す現象が多いみたい。
自分は取り敢えず手元にあった2Aのレギュレータ(PQ3RD23/秋月で2個100円)を使ってます。


ハードウエアについて
無線:802.11b/g/n
電源電圧:3.0-3.6V
平均電流:80mA
保管温度:摂氏-40~125
L電圧:-0.3~0.25*VIO 大体0.8V以下?
H電圧:0.75*VIO~3.3 大体2.4V以上?
Maximum Driving Power:12mA これはI/Oピン1本あたりかしら?


ATコマンド
115200bps,送信改行コードはCRLF。

STA(子機)のMACアドレスを取得

AT+CIPSTAMAC?
+CIPSTAMAC:"18:xx:xx:xx:xx:xx"



AP(親機)のMACアドレス取得(最初の桁以外はSTA側と同じだった)

AT+CIPAPMAC?
+CIPAPMAC:"1a:xx:xx:xx:xx:xx"


バージョンチェック

AT+GMR
AT version:1.4.0.0(May 5 2017 16:10:59)
SDK version:2.1.0(116b762)
compile time:May 5 2017 16:37:51



起動メッセージ
74880bpsで読めるらしい。

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

load 0x40100000, len 2592, room 16
tail 0
chksum 0xf3
load 0x3ffe8000, len 764, room 8
tail 4
chksum 0x92
load 0x3ffe82fc, len 676, room 4
tail 0
chksum 0x22
csum 0x22

2nd boot version : 1.7(5d6f877)
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





以下個人的に非常に気に入ってる物。

arduinoのSPIFFSプラグイン

https://github.com/esp8266/arduino-esp8266fs-plugin/releases
なんか古いリリースへの直リンクとかが散見されるけど、ちゃんとリリース一覧から最新版をとってこようね。
esp8266のボード定義がstagingでないとFFSが使えないって記載を見かけたけど、2.0.0あたりからはstableで使えるんじゃないかな。
arduino1.6.7+esp8266-2.0.0、esp_iot_sdk1.5.2で使用可能だった。
但し、FlashSizeを『4M(1M SPIFFS)』に設定しないと書き込めない。

Timeライブラリ

https://github.com/PaulStoffregen/Time
時間を扱うなら必要。

NTPライブラリ

https://github.com/exabugs/sketchLibraryNTP
上記Timeライブラリと組み合わせて使用。場合によってはRTC不要に。
ドメイン名でNTPにアクセス、定期的に自動同期など至れり尽くせり。






スポンサーサイト

カテゴリ:備忘録

ONDA Vi10精英版 電源が入らなくなった&怪しいパケット送信を停止させる

長らく使ってたONDA Vi10 精英版。専らなめこ専用機
電源入れても充電警告っぽい表示が出て電源が入らなくなりました。
昨日まで普通に使えてたのに…遂にぶっ壊れたか?
分解しても手がかりがなかったので取り敢えずファームを入れ直してみたら復活
中身のデータは消えたけど、文鎮化よりマシでしょう。

ファーム入れ直しについては、アンドロイド少女隊さんの記事が大変役に立ちました。

http://androidgirlstablet.com/blog-entry-354.html
この手順で取り敢えず4.0.3を入れて初期状態に戻したら復活。
電源が入らないと言っても、ブートローダーにあたる部分は生きてるらしく、普通にファーム入れ替えできました。

更にこの記事を参考にして、公式4.1.1をroot化。
http://androidgirlstablet.com/blog-entry-574.html


更新が終わったら、Titanium Backup ★ rootで中華っぽいアプリを片っ端から削除。
これで中国にアクセスするアプリは居なくなった…はずだった

ところが、、、何者かが中国のIPに向かって通信してる
流石中華タブレット。
どうせそんなことだろうと思って、Vi10から中国に向かって送出されるパケをWindowsマシンでキャプチャして監視するツールを作って監視してました。
このツールはそのうち形にして配布したいな。

Vi10にNetworLogをインストールして調べてみると、
起動直後にrootがTCPで42.121.236.55:80の通信を行っている

無線LANのon/offではパケットが出てない事から、トリガは起動時と推測。
と言うわけで、/init.rc の中を覗いてみると

on property:sys.boot_completed=1
   start preinstall
   start systemc


systemcが怪しい
直前の定義で、pathは/system/bin/systemcだと言うことはすぐに判明。

端末エミュレータを入れて、/system/bin/systemcを叩いてみる
ビンゴ
42.121.236.55:80への通信を6回程度(恐らくリトライ)行うみたい。
このIPは現段階では応答しないので既に終了したサービスなのかも。
生かしておいても特に実害は無さそうだけど、気持ち悪いので停止させます。

on property:sys.boot_completed=1
   start preinstall
# start systemc



として保存。
再起動後にパケットの送出が無くなったのでOKでしょう。

/system/bin/systemc 自体も消しちゃって良いかも。


カテゴリ:備忘録 - テーマ:android - ジャンル:コンピュータ

ATmega168Pの動作条件

ATmega168Pの動作条件について、、調べた結果のメモ。
書いておかないと多分忘れちゃう。

データシートはここ
completeの方には細かいことまで載ってるけど、コレを読むのはなかなかしんどい。
当たり前だけど、全部英語だし…

けど、まあ、必要な部分だけcompleteから抜粋してみた。

  • 駆動電圧
33. Ordering Information
33.3 ATmega168P
秋月で手に入るATmega168P-20PUは2.7-5.5Vみたい。
低い電圧で駆動させる場合は、BOD-Levelに注意した方が良いのかな?
BOD-Levelはヒューズビットで変更できます。

  • 動作温度
上記と同じ章に記載。
摂氏-40~85度まで。

  • I/Oピンの最大電流
特に記載が見つからないけど、絶対最大定格に記述が。

  • 絶対最大定格
29. Electrical Characteristics
29.1 Absolute Maximum Ratings

Operating Temperature.
動作温度: -55°C to +125°C

Storage Temperature.
保管温度?:-65°C to +150°C

Voltage on any Pin except RESET
リセットピン以外の入力ピンにかけていい電圧:-0.5V~Vcc+0.5V

Voltage on RESET with respect to Ground
リセットピンにかけていい電圧:-0.5V~+13.0V

Maximum Operating Voltage
最大動作電圧:6.0V

DC Current per I/O Pin
I/Oピンから流していい電流:40.0mA

DC Current VCC and GND Pins
全体で流していい電流:200.0mA

NOTICE:
最大定格越えたら壊れてもしらんよ。
最大定格で長期間使い続けたら、信頼性が劣化するかもね!



大体こんな感じかな?

英語をすらすら読めるようになりたいです^o^;

カテゴリ:備忘録

AVRマイコンでよく使うヒューズ設定

個人的によくつかうヒューズ設定のメモ。
細かい設定はここを使うと便利。


ATmega168P-20PU
LOHIEX備考
default62DF011Mhz(CKDIV8)
外部発振(BOD2.7V)FFDDF8Arduino
外部発振(BOD disable)FFDF
内蔵発振(BOD2.7V)E2DD
内蔵発振(BOD1.7V)E2DE
内蔵発振(BOD disable)E2DF小物によく使う
内蔵発振(BOD 4.3V)E2DC

ATtiny2313-20PU
LOHIEX
default64DFFF1Mhz(CKDIV8)
外部発振(BOD1.8V)FFCDFFCDC232等
内蔵発振(BOD disable)E4DF小物によく使う
HIDaspxFFDBFF作り方

ATmega328P-PU
LOHIEX
default62D9FF1Mhz(CKDIV8)
外部発振(BOD2.7V)FFDAFDArduino
内蔵発振(BOD disable)E2DAFF
内蔵発振(BOD 2.7V)E2DAFD


カテゴリ:備忘録 - テーマ:ハードウェア - ジャンル:コンピュータ

FC2Ad