いろいろ試す27

ああ・・・2016年が終わってしまう・・・
今年は年始から本業副業合わせてやばい系のばっかリに絡まれまくりましたよぅ
(※本業は虹裏メイド)

●OpenOCDがビルドできなくなる
これホントはOpenOCD小ネタ扱いですけど小過ぎてここでやります。
12月上旬の更新で"Convert to non-recursive make"という更新が掛かりそれに伴って
Automakeのバージョンもあげる必要性が出てきました。
しかしmsysのビルド済みバイナリは数年前に更新停止ししていて結局全部一からビルド
するハメに!!ねむいさんの環境では結局以下の3点の最新化が必要でした。
・automake-1.15
・pkg-config-0.29.1
・libtool-2.4.6


これでOpenOCDをはじめ他のライブラリやライタプログラムにも悪影響がないを確認
しましたので当面は大丈夫だと思います☆
・・・また数年したらこう言う相違の問題出てくるんだろうなと考えると気が重いです。


●DropBoxがPublicフォルダを廃止し強制的にプライベート化する
ねむいさんのぶろぐの画像保管庫として機能しているDropboxからメールがあり、来年
3月15日でPublicフォルダ(有料ユーザーも7月15日で)強制廃止するよ!というふざけた
内容の文章が来やがりました#########

Publicフォルダというのは直リンクが可能なDropboxの特殊フォルダで、ぶろぐで画像
サーバとして使うのにはうってつけだったのですが・・・便利ゆえに児童ポルノなどの
やり取りに頻繁に使われまくったせいか規制されてしまったようですクソァ!!!
公式の掲示板でも異を唱えたまっとうな使い方をしている人たち(有料ユーザー含む)が
いましたが粛々と無言で粛清されていくさまを目の当たりにしねむいさんは今後の
画像置き場とにかくどうするかしらと悩んでおりました。
と、そこにとある方のツイートによって一手間掛かりますけど直リンが可能な方法が
あるのが分かり今後はそちらの方法でDropboxを使い続けることにしました。
(やはり真姫ちゃんは有能・・・)

ねむいさん的な使い方はCarotDAVと連動して使う方法で行きます。

まずCarotDAVを使って前もってDropBoxの非共有の個人フォルダにアップロードします。
ここで共有化したいファイルをドラッグして選択し右クリックで"Create Shared Link"
を選びます。確認ダイヤログでOKを押して少し待つと共有リンクのURLがずらずらっ
と出てきます。

あとは末尾の"?dl=0"の部分を"?raw=1"に変えれば以前と同じ感覚でぶろぐに画像
として表示が出来るようになります。CarotDAVではこのように一括で共有リングが
作成できるのでねむいさん的使い方する方にとってもオススメです!

ただ方法は純粋な直リンではなく一旦エンコードを噛ましています。そのせいで今度は
FaceBookに自分のぶろぐを紹介する時にOGPがエラーとなって弾かれてしまいました。
こちらですが現在はぶろぐのヘッダに以下のメタタグを埋め込み固定の画像を拾わ
せるようにして対処してます。↓こんな奴です。




FaceBookからはこう言う風に見えます。


とりあえずこれでPublicフォルダ廃止後の新規ぶろぐエントリの画像問題は解消され
ましたが・・・問題は過去5年間、数千枚に及ぶ大量の画像のURLの変更だ・・・
orz


●Naverまとめの所業に憤慨す
現在Naverをはじめ、「キュレーション」なる単語で言葉を濁し実際は無断転載でコンテ
ンツをパクり広告収入で儲けるという企業の行為が社会的な問題となっております。

猫にコ・ン・バ・ン・ワ」の管理者のたま吉さんが自身の記事をNaverまとめに無断
転載されていたことで大変怒っておられ、その顛末を記事にされております
私もそれを受けてパクられてないか調べてみると私もやっぱりパクられてました。
しかも直接関係ない別の人の記事に私の画像が添付されてます!!!!!!!


パク

ラレ
パクられた箇所の一部をトレパクスレ風にやってみました★

超めどいですが年の瀬も迫る中早速Naverに攻勢を仕掛けました。南朝鮮企業のNaverが
普通の言伝で簡単に削除対応するわけが無いのは分かりきっていたので、逃れられない
証拠を突きつけた上で期限内に対応しない場合は内容証明郵便を送りつけ、それでも
応じない場合は簡易訴訟を起こす手立てで親父と相談し作戦を実行しました!1!!

・・・が、ねむいさんの徹底抗戦の意思とは裏腹にNaverがあっさりぱくったことを認め
パクったと指摘した箇所を秒速全削除。一週間も掛からぬうちに勝負はついた。

SDカードの一件でみなさんご存知とは思いますがねむいさんのぶろぐでも各ライセン
シーについてはもっっっっっっっのすごく気を使うようになっており、自身が取り扱う
ぶろぐ記事や写真につきましても当ぶろぐ立ち上げ時からCreative Commonsの非商用
掲げております。そういった姿勢が相手に「こいつはやばい奴だ」と思われてすぐさま
パージする方向に傾いたのでしょう。

しかしながらNaverはその一方で冒頭のたま吉さんに対しては著作権侵害を認めておら
ず(たま吉さんはねむいさんとは比べ物にならない量をパクられているのに係わらず)
態度に一貫性がまったく見られず極めて不信感が感じられます。
「こいつらはいつもこんなもの(だからこれ以上追求するな見過ごせ)」で済ませるとたとえ
Naverまとめが今回の問題で閉鎖したとしても暖簾替えて同じことやるのは1000%確実
なので今のウチに根治しないといけませんね・・・(使命感)

というわけでこの件に関する公の発言はここで一旦〆ます・・・が、以後は裏で暗躍して
みようと思います
。これから先、もし事態が良い方向に向かったらねむいさんや他の
有志の方ががんばったおかげかもしれませんよ★




あと気になる事ですが今年に入ってから不自然な内容の質問もどきを多く伺うように
なっています。名前も「ななし」とか「匿名希望」とか適当で、なおかつ質問内容は異口
同音に「オマエが持ってる(ぶろぐに書いてない)情報あるだけゼンブヨコセ」。
で、ねむいさんも相手の質問内容や文体の癖を注意深く調べぐぐるとアマゾンアフィや
グーグルアドセンス等のアフィ大盛りのはてなorFC2orライブドア系の広告収入特化型で
技術的価値が殆ど無い内容の薄い質問者と思われるブログに行き着いたりします。

ねむいさんとしましてはねむいさんのぶろぐ上で公表した事はいくらでも"参考(←転
載じゃないよ)"してもらってもかまわないというスタンスですが直接応対する案件は
内容の如何によっては対価を頂くようにしてます(それ言ったとたんに相手の反応が
いつもゼEROになっちゃうんですけど)

んでもってねむいさんもだいぶ痛い目にあってきましたので聞いてくる人の素性は必ず
調べてから対応するようにしています。それでもねむいさんを利用してやろうと考えて
らっしゃる傾き者は伊達にしてお帰ししますので覚悟するでござる(若先生風に)


●Launchpad ARM-GCCの各種バイナリがARM本家預かりになる!
今期のアップデートからLaunchpadで公開されていたARM向けGCCツールチェイン各種が
なんとARM本家から装いも新たに堂々と公開される運びになりました
ARMを買収した禿がこんな粋な計らいするわけないのでARM内の別の人たちの発案でし
ょうけど。

そしてGCCのバージョンは6.2.1にアップしております!
地味にオプション表もアップデートしていますので見逃さないように!


まずは同一条件でビルドした時のバイナリサイズ比較
新:2016q4版(GCC6.2.1)
arm-none-eabi-gcc (GNU Tools for ARM Embedded Processors) 6.2.1 20161205 (release) [ARM/embedded-6-branch revision 243739]
Copyright (C) 2016 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Built Informations:
USING_SYSTEM = BARE_METAL
USING_DISPLAY = USE_RK043FN48H_RGB_TFT
USING_DEVBOARD = USE_STM32746G_DISCOVERY

Built Object Informations:
=== Total Binary Size ===
text data bss dec hex filename
0 721292 0 721292 b018c main.hex
=== Verbose ELF Size ===
text data bss dec hex filename
718700 2592 822180 1543472 178d30 main.elf

旧:2016q3版(GCC5.4.1)
arm-none-eabi-gcc (GNU Tools for ARM Embedded Processors) 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Built Informations:
USING_SYSTEM = BARE_METAL
USING_DISPLAY = USE_RK043FN48H_RGB_TFT
USING_DEVBOARD = USE_STM32746G_DISCOVERY

Built Object Informations:
=== Total Binary Size ===
text data bss dec hex filename
0 726736 0 726736 b16d0 main.hex
=== Verbose ELF Size ===
text data bss dec hex filename
724148 2588 822188 1548924 17a27c main.elf

GCC6.2.1版のほうが5kByte近く小さくなってますね〜



お次はjpegファイルのデコード速度比較!!
ぁ・・・ちょっとだけ遅くなってる・・・
・・・
・・・
まっいっか!


ついでにProgrammers Notepad2も4年ぶりくらいにアップデートしております。
ねむいさんの環境構築手順ではほぼ影響は無いのでそのまま差し替えてお使いいた
だけますのでまだの方はアップデートしておきましょう!

20170108追:
ちゃんと新規追加されたオプションつけろよバカヤロコノヤロと突っ込みもらいましたので
付けた奴で再比較します!
1.「-mslow-flash-data」を付与
このオプションはフラッシュメモリのアクセスが遅いMCUにおいてリテラルプールを極力
行わないようにするものです。Cortes-M3/M4のみ有効でldr系の命令がmovw+movtに
なるべく置き換えられます。
arm-none-eabi-gcc (GNU Tools for ARM Embedded Processors) 6.2.1 20161205 (release) [ARM/embedded-6-branch revision 243739]
Copyright (C) 2016 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Built Informations:
USING_SYSTEM = BARE_METAL
USING_DISPLAY = USE_RK043FN48H_RGB_TFT
USING_DEVBOARD = USE_STM32746G_DISCOVERY

Built Object Informations:
=== Total Binary Size ===
text data bss dec hex filename
0 727908 0 727908 b1b64 main.hex
=== Verbose ELF Size ===
text data bss dec hex filename
725316 2592 822180 1550088 17a708 main.elf
コードサイズはかなり増えてしまいました。

遅くなってるー!?ダメじゃん!
このオプションはSTM32F1/F2/F4系だと有用だったのですけどアーキが一新され、
キャッシュが追加されたM7系では相性が悪いようです。

2.「-mpure-code」を付与
前回のGCC5.4.1から追加されておりますがGCC6系から真価を発揮するそうです。
このオプションは定数値をコードセクションに置かないようにするものでリテラルプールは
当然ながら全排除、ジャンプテーブルもldrを使用しないよう徹底されます。
arm-none-eabi-gcc (GNU Tools for ARM Embedded Processors) 6.2.1 20161205 (release) [ARM/embedded-6-branch revision 243739]
Copyright (C) 2016 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Built Informations:
USING_SYSTEM = BARE_METAL
USING_DISPLAY = USE_RK043FN48H_RGB_TFT
USING_DEVBOARD = USE_STM32746G_DISCOVERY

Built Object Informations:
=== Total Binary Size ===
text data bss dec hex filename
0 726884 0 726884 b1764 main.hex
=== Verbose ELF Size ===
text data bss dec hex filename
724292 2592 822180 1549064 17a308 main.elf
GCC5.4.1のオプション追加無しと比べると少しコードサイズが減りました。

おおっ!結構早くなってる!!!
これはイケてますね〜♥
とりあえず後方互換性の事も考えてmakefileでは"-mpure-code"はまだ無効のまま
としておきますが2017年中旬以降は積極的に有効にしていきたいと思います!
ちなみに-mslow-flash-dataと-mpure-codeを同時に有効にすると-mpure-codeが
優先的に働き-mslow-flash-dataは実質上無意味になります。



●複数スレッドでmakeのスピードアップ!
STM32F4STM32F7いつものはさまざまなライブラリが混在していてビルドしあがる
のにやたら時間がかかります。現在は複数スレッドでmakeを走らせるのでが当たり前に
なっているので私もちゃれんぢしてみました。

複数スレッドのmakeはそれに適応したmakefileの書き方をしなければならずねむい
さんのmakefileでは普通に-j2オプションつけたら最後のリンク段階でこけますorz

仕方が無いのでmakeを入れ子にしてオブジェクトが出来上がる段階まではj2でビルド
するようにしました。入れ子にする場合は「XXディレクトリから入ります出ます」のメッ
セージが鬱陶しすぎるので"--no-print-directory"オプションも付与しております。


おおっ!同時にビルドが走ってる!!



-j1と-j2の速度比較です。-j2はめっちゃ早くなってますね!
スレッド数はCPUコアの数と同じが丁度効率が良いそうですがうっかり数字をつけずに
-jとしてしまうと大変な事になってしまうので皆様試してみたください



うっかりやってしまったorz




●年末恒例ねむいさんFAQ
今年はやばいのしか来ないと言ってましたがぶろぐでも公開できないマジで
やばいのは個別に処理しましたので例年通り虹裏における活動時や当ぶろぐに
きた中から当たり障りの無い方のやばい系の質問について公開回答いたします。


Q:mbedを使っているのですが!?シリアル通信が上手く出来ないのですか!?
 これはどういうことでしょうか!?ちょうさをおねがいます(←原文ママ)!
 それと液晶プログラムを動かしたいのですがどのファイルをさしているのか!
 初心者がわかる文章で希望します!
A:無理して日本語使わなくていいから人間の言葉しゃべってください!
 mbedって!対象が増えすぎてどのmbedかわからないんですけど!
 ねむいさんに分かる文章で希望します!
 ぁれれ・・・文体が感染してしまった・・・

 まじれすしますがねむいさんArduinoとかmbedとか難しすぎてまったく
 分かりません><

 それと液晶のライブラリに関してはこちらのエントリをちょっとだけ
 補修しましたのでとりあえずお目当ての初期化の呪文にはたどり着けると
 おもいます。章仁さんにも紹介していただきました

Q:(GNUARMECLIPSEのOpenOCDバイナリを使った上で)ねむいさんのバイナリを
 使うとOpenOCDが正しく動きません。これはどういうことでしょうか?
A:・・・ろすぞ!!!
 ゲフンゲフフンすみません物騒な物言いになりましたがねむいさんがあずかり
 知らない他所ビルドのOpenOCDバイナリを使ってエラーがでてもねむいさんは
 一切対処いたしませんし助け舟も出しません。嘘言ってねむいさんと同じの
 使ってる!って言ってもすぐにバレますよ!

Q:(中華製ぱちもんJ-Link使った上で)ねむいさんのバイナリを使うとOpenOCDが
 正しく動きません。しかも弄ってるうちにJLinkが動作しなくなりました
 しっかりしてくださいよ(めっちゃえらそうな口調で)
A:・・・ろすぞ!!!!!!!!!!
 もうね、昨年からずっとだけどJ-Linkとkinetis関連は対人トラブルの元だから
 ご意見無用にしたいと思います###今はぱちもん使ってると突如brickedする
 トラップがSegger側からされてるんですけど詳細はねむいさんも言いま
 せんから!!あと詳細は言いませんけどOpenOCDでもぱちもんだと動かない
 やつあるからバレますよぅ!

Q:小生は(極めて性的な内容なので略)
 少ない年金ですがねむいさんにお小遣いくらいはあげられるとおもいます
 それではよろしく。
A:・・・(やべぇぞこれマジでやばい)
 というわけでねむいさん気持ち悪すぎて答えたくないのでこの件に関して
 年齢が近そうなねむいさんの親父からのスペシャルコメントです
 「俺の歳で再婚するなら20代の元気な女の子がいいなぁ〜」
 ねむいさんよりコメント:お母ちゃんに呪われてしまえ!!!1!!!!

Q:手軽に高収入!アフェリエイトを始めてみませんか!?
A:帰れや!!11!!!!
 この手の変な情報商材詐欺勧誘が今年に入って爆発的に増加しています!!!
 
 ・・・しまった真面目に答えてしまった。

Q:ラブライブ!の東條希さんを描いて下さい
A:ねむいさんがあんまり知らんキャラ(2016年1月上旬当時)の話を
 分かっていながらあえて無茶振りする子は
 オ シ オ キ ヤ カ ラ ♥
↑良く分からなかったのでゼERO見ながら描いた

Q:ラブライブ!サンシャイン!!の黒澤ダイヤ様を描いて下さい
A:・・・ダイ煮よ♡♡♡♡
↑なんか知らないけど別の方に私の手描きをブラッシュアップされて
  しまいました。ハートマークが敷き詰められてこれは・・・♡

  ・・・・おかわりがほしいですって!?まったく・・・貴女は本当にしかたのない娘ね♡♡♡♡

Q:ねむいさんこんにちはいつもブログを拝見させております。
 今回のねむいさんのエントリにてラブライブメチャシコ画像集なる
 とても興味を引く動画が紹介されており期待に胸と股間を膨らませて
 再生ボタンを押したのですが再生が始まったとたんに突然青色の
 ロボットが現れて尻をこっちに向けイチジク浣腸を自ら刺してで
 てきたカレーライスを何度も食しては不味いだのふざけるなだの一々
 偉そうに注文をつけて助けに来た仲間のロボットにも浣腸を刺して
 でてきたカレーライスに今度はうまいと言って満足したのが勝手に
 自爆して動画が終了してしまったのですが多分ねむいさんが想定
 していたものと違う動画でしょうか?僕は一体どうしたらいいので
 しょうか???今回は桁違いにやばいのでとか動画の中で警告
 されても今更どうしようもないじゃないですか!
A:お前は・・・イレギュラーだ・・・処分する!!

Q:オマパンとか言う気が狂った異常な概念がmayで流行ってますけど
 ああいうの喜んでワーオ!とか言ってる連中って絶対頭おかしいと思います。
A:ワーォ!





来年は本当のホントに真面目にがむばります!!!!
それでは皆様良いお年を〜

近畿自然歩道を往く(伊勢志摩めぐりその2)

昨年のダイトレ全走破に勢いをつけて今年はロングトレイルの生駒山脈縦走六甲
全山縦走
に果敢に挑んできました。
それでちょっとがんばりすぎたせいかダメージが積み重なり冷え性になってしまったので
今年の〆は昨年と同じく暖かい空気と海がある伊勢志摩に繰り出す事にしました。
私のヤマレコとか見てた方は「すでに伊勢志摩めぐりその5くらいまで逝ってるん
じゃね?」とお思いでしょうけどもこのぶろぐ上ではまだ2つめです!ややこしいですけど。

とはいえ知らない方もいるかもしれませんので一応紹介しておきます♥

近畿自然歩道(松阪〜栃原)
「城下町松阪の文化にふれるみち」(近鉄松阪駅〜松尾小学校前バス停)
「山あいの古寺と両郡橋をたずねるみち」(松尾小学校前バス停〜丹生大師前バス停)
「丹生の歴史をめぐるみち」(丹生大師前バス停〜JR栃原駅)

近畿自然歩道(伊勢市〜松下(〜鳥羽))
「お伊勢さんを感じるみち」(近鉄伊勢市駅〜近鉄朝熊駅)
「御塩づくりにふれるみち」(近鉄朝熊駅〜JR松下駅)

近畿自然歩道(安乗〜志島〜船越浜)
「安乗灯台と文楽のみち」(安乗バス停〜志島バス停)
「大王埼灯台をたずねるみち」(島茶屋バス停〜船越浜バス停)


それではスタート!

●近畿自然歩道(船越浜バス停〜浜島港(〜浜島海浜公園〜桧山路バス停))
 


虹裏メイドの朝は早い。
近鉄特急で2時間以上ゆられてさらにバスで40分くらいゆられます・・・



船越浜バス停からスタートです。
今年の夏は少し進んだところのトイレのある場所で離脱したので
ホントのスタート地点はそこですけど。



ありゃりゃ・・・いきなり路に迷った・・・
確か船越大池をこっち側から見てはいけないはずだけど・・・



なんとこの布団が干してある階段の裏の壁の死角になる部分に
道標が!!!!!F**K!


でもそんな気分を一気に押し流すほど綺麗な海がお出迎えです♥


ルートを外れてちょっと寄り道して名も無き岬に向かいました。



・・・
美しい・・・♥



ルート上はこの小山を乗り越えるのですがどこにもルートが無い・・・
探しまくって日蓮宗の海難供養碑がある場所の藪の中に正式な
ルートを見っけました・・・これ夏だと絶対わかりませんてば!



!!!!!!!
確かに堕ちたら即死亡の超危険な崖でした・・・


それを乗り越えると退治岬の見に灯台があります。



冬なのに草ぼうぼうのトレイルを抜け、引っ付き虫だらけになった格好で
深谷水道を越えて車道をひた走ります。


片田稲荷神社を見送ります。



大野浜に出ました。
ずっと見ていても飽きないくらい太陽と海が綺麗ですね・・・♥


そしてルートは墓場を抜けますが・・・
そのルートには鎖から解き放たれた猛獣が・・・
そういえば地獄には番犬がいたっけ(byイレギュラーハンターSEエックス)


両者にらみ合いが続く中、飼い主が墓参りが終ったことにより戦いが
急激に終結しました。
ねむいさん霊長類猫科だから犬と仲が悪いのですよぅ〜


でも猫ちゃんも普通に逃げるよ!
orz




乙部浜です。
はるか遠くに夏に訪れた大王崎灯台が見えます。



麦崎灯台までやってきました。



絶景に次ぐ絶景です☆
この日にここに来てよかった〜♥
冬は天気が安定してるので晴れの日が多いから
穴場なのです!ホントは真夏のどピーカンな日がベストなのですけど。


灯台を抜け、片田港に進みます。



そこから先は新興住宅街で行き止まりばっかり!
しかも道標がこう言うときに限ってないのであちこち迷いました。


だがそれを乗り越えて得られた景色はプライスレス♥


たまに思い出したように近畿自然歩道の道標がありますが
あんまし役に立ちません。



志摩ふれあい公園の休憩所です。
上水道水やトイレがあります。


大きな丸い石かと思ったら
志摩半島を唄う歌の歌詞が刻まれた石碑でした・・・



ここから先、この海女さんの案内看板がたくさん目に入ってきます。


和具の港です。
ここから自然歩道的には中継地点となります。



城山休憩所です。
特に目立った特長は無いですが・・・
海の水が綺麗過ぎて水色に見える・・・(錯乱)


今回のようなアスファルト上の移動が殆どのコースではチェリオの
100円オゑイしスがとても助かります♥
熊野古道の攻略でも大活躍してると思います!!



あづり浜を横切ります。
目指すは金毘羅山!


オートキャンプ場の脇に突如現れる海女体験小屋・・・


そうこうしてるうちに金毘羅山登山口に到達です。


途中までは舗装された車道です。


近畿自然歩道は三角点が無い高いほうの金毘羅山を目指します。


トレイルに変わった道をどんどん登ると・・・
トイレがあった!?



さらにトレイルを駆け上がり・・・金毘羅山頂です!!
うわさどおり360度の展望ですね〜


さぁ後は御座浦に向かって駆け下りるだけです!



下っていくとルート上に存在する爪切り不動尊に落ち合いました



観光客が絶えずいますが荘厳な雰囲気です。



撫で石なるものもありました。
ねむいさんもなでなでしまくりです♥



国道260号を駆け下りて御座港に到着です。



今回のルートは船便があり、対岸の浜島港がゴールです。


少し早く来てしまったので結構まちましたが船は無事やってきました。
・・・っていうか搭乗口そこかい!


ドパンドパンと音を立てて船は進む・・・




十分ちょっとの船旅でしたが無事浜島港に到着です。


ここが本来のゴールですが実は次のルートの起点でもあり、
交通の便宜上ねむいさんは少し先に進みました。




やっぱり美しい浜島の海・・・
有志が作成した魚のタイルアートも見られます。


宇気比神社です・・・。




鼻かけ恵比寿さんです・・・
ここ(恵比須が丘)からみえる熊野灘は美しい・・・♥



そこから丘を降りて浜島海浜公園です。



ビン玉ロードの案内看板がある場所で
近畿自然歩道から離脱です。



浜島バス停です。
バスの来る時間がまだ先だったのととお金の関係でロードワーク追加!


桧山路というバス停でバスを待ち乗り込みました。。


鵜方駅に戻ってきました。
冬は日が堕ちるのが早いです・・・


ねむいさんがぜかましにのれるのはお金と時間に余裕が出来る時だけですね〜
と思い込んでしまいそうになりちょっとセンチになっちゃいます・・・


京都に帰るためには2段階乗換えで帰らないといけない・・・
大和八木で寝過ごすとアウチ!


そのまえに最初の鳥羽駅でお土産はしっかり買い込んでおきました!
お土産も含めてやっぱり家に帰るまでがトレランです!



というわけでこんな形で2016年の山行(?)を〆てしまいましたが・・・
来年は比良山系の縦走などのちょっと危険度の高い難しい場所に
どんどん挑戦していきたいと思います!


近畿自然歩道(船越浜バス停〜浜島港(〜浜島海浜公園〜桧山路バス停))
 GPSログ


追伸:
今回から登山系のレポートで使っているSNSをYAMAPへと完全に乗り換えます。
プラットフォームがかわっても内容は変わらずしっかりと充実させていきますので
よろしくお願いします!

いろいろ試す26

今回SDカード中心です。


●ついに発見!Transcendの4GBのSDカード

当初SDHCをつかまされてしまった私ですがSDコンパチブルな奴をついに見つけ出し
ました!!というかebayで新たに発売開始(???)されていました!


SDHC版と比較…ものすごく似てるけど色が微妙に違う…知らなかったこんなの…

一応SDカードの情報を抜き出してみました(あえてSDv1による初期化です)。

FatFs module test terminal for STM32F427IIT6
LFN Enabled, Code page: 932
AppVersion : W.I.P
Build Date : Nov 8 2016
>fg piano
rc=0 FR_OK
>fo 1 ftbt.mp3
rc=0 FR_OK
>fr 132949600
132949600 bytes read with 14597 kB/sec.
>ds 0
rc=0
Drive size: 7788544 sectors
Erase block size: 512 sectors
Default r/w block size: 2048 bytes
Card type: SDv1
SpeedMode: HighSpeedMode(51.43MHz)
DataBusWidth: 4bit

CSD:
00000000 00 0E 00 32 5B 5B 03 B6 9D B7 FF 80 0A C0 00 21 ...2[[.........!
CID:
00000000 74 4A 45 53 44 43 20 20 10 3C D5 6B 7B 00 08 AB tJESDC .<.k{...

Parsing SD CID Register
Manufacturer ID :0x74
OEM/Application ID :JE
Product Name :SDC
Product HwRev :1
Product SwRev :0
Serial Number :0x3CD56B7B
DateCode.Month :8
DateCode.Year :2000

OCR:
00000000 80 FF 80 00 ....
SD Status:
00000000 80 00 00 00 00 00 00 20 03 03 90 00 08 05 00 00 ....... ........
00000010 00 00 00 00 00 00 00 00 00 53 4D 49 00 00 00 00 .........SMI....
00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000030 00 00 0F 17 00 04 00 00 20 00 00 00 00 00 00 00 ........ .......
SCR:
00000000 02 25 80 00 00 00 00 00 .%......

Parsing SCR
SD Spec Version :2
SD Spec Version 3 :1
SD Spec Version 4 :0
SD Security :2
SD Bus Width :5

SD_Spec V3.0x!
Detected as SDSC Card!

製造年月が2000年とかなってますけど思い切り嘘ですね。2016年産でから。
一応製造元はTranscendの製造協力会社のものになっており真贋の方は分かりかね
ますが…一応PC上で容量チェックを行った所、4GB分正しく読み書きが可能でした。

SDHCだった方のカード情報はこんな感じです。

FatFs module test terminal for STM32F427IIT6
LFN Enabled, Code page: 932
AppVersion : W.I.P
Build Date : Nov 7 2016
>fg piano
rc=0 FR_OK
>fo 1 ftbt.mp3
rc=0 FR_OK
>fr 132949600
132949600 bytes read with 21688 kB/sec.
>ds 0
rc=0
Drive size: 7812096 sectors
Erase block size: 8192 sectors
Default r/w block size: 512 bytes
Card type: SDv2(Block)
SpeedMode: HighSpeedMode(51.43MHz)
DataBusWidth: 4bit

CSD:
00000000 40 0E 00 32 5F 59 00 00 1D CC 7F 80 0A 40 00 D5 @..2_Y.......@..
CID:
00000000 1C 53 56 53 44 43 20 20 10 01 D2 00 BC 00 82 DB .SVSDC ........

Parsing SD CID Register
Manufacturer ID :0x1C
OEM/Application ID :SV
Product Name :SDC
Product HwRev :1
Product SwRev :0
Serial Number :0x01D200BC
DateCode.Month :2
DateCode.Year :2008

OCR:
00000000 C0 FF 80 00 ....
SD Status:
00000000 80 00 00 00 02 00 00 00 03 03 90 00 08 05 00 00 ................
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
SCR:
00000000 02 35 00 00 00 00 00 00 .5......

Parsing SCR
SD Spec Version :2
SD Spec Version 3 :0
SD Spec Version 4 :0
SD Security :3
SD Bus Width :5

SD_Spec V2.00!
Detected as SDHC Card!

れっきとしたTranscendの奴ですね。

ちなみに読み出し速度は圧倒的にSDHC版の奴の方が上でしたorz


このSDコンパチブルなTranscendのはSDv1の初期化でバイトアクセスとなり、SDv2の
初期化ではブロックアクセスとなりました。この辺以前紹介した4GBカードたちと同じ
ですね。(ていうか同一の会社がガワだけ別で中身同じの作ってそうです・・・。)


そしてそのうちの前回紹介した4GBのドイツカードなのですが端子の埃をふき飛ば
そうとエアダスターを吹き込んだからカードのプラスティックの隙間に圧縮空気が
入り込み、内部から分解してしまいましたorz貴重な4GBカードがッ…!!!


とりあえず分解して荼毘に付しました。基板がこんなにペナッペナです。工業用の
堅牢な奴に比べて明らかに強度的に弱いですね。値段も安価なのでいたしかたなし
なのですけど。




●CMD1の初期化はどのカードまで可能なのか!?
12月頭にCMD1による初期化がSDカードのライセンスの影響を避けるために必要だ
えらそうに言ってしまいましたので今回は実際にCMD1のカードで初期化が通るん
かいな?という疑問を実際に動作させて検証していきたいと思います。


使用するカードは256MB〜4GB(SDHCじゃない奴)までの容量のSDカードです。
これは春先にひたすら読み込みまくった時の連中をセレクトです。


前回同様STM32F4-DiscoveryのSPI互換モードでSDにアクセスするほうのいつものを
使い、ChaN師謹製の初期化ルーチンからCMD1による初期化のみ残したプログラムを
動作させてファイラーが起動してディレクトリが見えたら初期化成功とします。

結果ですがATPProMAX 1GBのminiSDを除きすべてCMD1による初期化が成功しました!
もちろん成功したカードの中には冒頭で紹介したSDこんぱちなTranscendの4GBの
カードも含まれております。


もちろん2016年製造のPanasonicの工業用SDカードもCMD1の初期化が通ってます!
こいつはCMD8の初期化も通るんですよね〜。CMD8で通っても4GB以下なのでバイト
アクセスになります。

ちなみに私が持っているeMMCはSPIモードが既に削除されている品種のため、どう
がんばってもSPIモードに突入することができずだめでした。SDカードと同一の形状を
保って方のいるMMCplusなどのv4系カードなら問題無いです。


お次はネイティブモードでCMD1の初期化だけを残した奴を試してみましたが…。
・・・
結果は全滅orz

Argumentとか0にして見ましたが何してもどのカードでもタイムアウトで全滅ですorz
ネイティブモードだとCMD1は通らないのか!?

答えはSDIO Specificationに有りました。以下13ページ目のフローチャートを抜粋。


・・・
ネイティブモードが相手ならMMCの例外な実装によってSDカードがたまたま
偶然に動作せざるを得ない!11!!1(CV:リョウ・サカザキ)




♥ねむいさんのおまとめ♥
電子工作においては現在も入手可能な4GB以下のSDカードに対してSPI互換モードで
CMD1による初期化のみでカードを動作させることは十分可能であり、この方法ならば
SDAのライセンシーにも全く抵触しません。

CMD1が確実に通るカードの中でねむいさんの激押しは
TOPRAM製4GB
ドイツ製4GB
Transcend4GB
この3種の4GBカードです!値段も安いですし4GBもあれば十分でしょー

それ以外の方法(SDネイティブモードによるアクセス、もしくはSDHC/SDXCカードを
使う)をどうしても施行したい場合はソースコード中にMMCが実際に動作できるCMD1
による初期化を残しつつMMCまたは互換カードの例外的な実装によってたまたま動作
しているように見せかけてあげればよいと思います。よくない。




●SD Specfication Version5のカード

テレッテレッテーテッテー テレレレレッテー(テュィーーーン)

V!V!V!
もういいわ

2000円ちょっとで売っていたのでつい購入してしまいました。以前私はロゴだら
けや!って予言しましたが本当にロゴだらけですね
V30のビデオ規格のロゴが付与されたものがSDSpecV5のカードの証です。
これにA1ロゴとかもつく予定なのでさらにカオス状態になりそうです。

ねむいさんの予想では山盛りになってしまった性能表記のロゴのすべてを包括する
新たな統一ロゴが来年あたりに登場すると思います。

FatFs module test terminal for STM32F427IIT6
LFN Enabled, Code page: 932
AppVersion : W.I.P
Build Date : Dec 6 2016
>fg piano
rc=0 FR_OK
>fo 1 ftbt.mp3
rc=0 FR_OK
>fr 132949600
132949600 bytes read with 19787 kB/sec.
>ds 0
rc=0
Drive size: 62333952 sectors
Erase block size: 8192 sectors
Default r/w block size: 512 bytes
Card type: SDv2(Block)
SpeedMode: HighSpeedMode(51.43MHz)
DataBusWidth: 4bit

CSD:
00000000 40 0E 00 32 5B 59 00 00 ED C8 7F 80 0A 40 40 C3 @..2[Y.......@@.
CID:
00000000 03 53 44 53 45 33 32 47 80 A4 38 40 2C 01 07 C7 .SDSE32G..8@,...

Parsing SD CID Register
Manufacturer ID :0x3
OEM/Application ID :SD
Product Name :SE32G
Product HwRev :8
Product SwRev :0
Serial Number :0xA438402C
DateCode.Month :7
DateCode.Year :2016

OCR:
00000000 C1 FF 80 00 ....
SD Status:
00000000 80 00 00 00 05 00 00 00 04 00 90 00 0F 05 3A 1E ..............:.
00000010 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
SCR:
00000000 02 35 84 43 00 00 00 00 .5.C....

Parsing SCR
SD Spec Version :2
SD Spec Version 3 :1
SD Spec Version 4 :1
SD Spec Version X :1
SD Security :3
SD Bus Width :5

SD_Spec V5.xx!
Detected as SDHC Card!
Available UHS-I Mode.

おやくそくのSDカードの情報を抜き出してみました。
予想通り確かにSD_Specは"5"を示しておりますね★

ESP-WROOM-32を使ってみる4 -SPI-ROMの吸出し・最初にそれやれとか言われそう-

ESP-WROOM-32の目次に戻る


今回はやらかしてしまった時に初期状態に戻すために前もって工場出荷時のファームを
吸い出す手順を紹介します。なお、オシロの波形ばっかり見せられて辟易していた方の
中でねむいさんに突っ込み入れたい方は落ち着いて今回のサブタイトルを100回ほど
音読してください。
20170216追:
ESP-WROOM-32は暗号化してプログラムをフラッシュに書き込むそうで、
書き込み中に途中で電源を落とすなど異常な状態が起こるとプロテクトが
発動しESP-WROOM-02の時みたいには容易に回復とはいかないようです。
こちらの件は現在調査中ですのでしばらくお待ちください!!!


●工場出荷時のファームを吸い出す
さて、前回はIDF(IoT. Development Framework)をgitでダウンロードしてExampleを
ビルドする手順
を紹介しました。このIDFにはESP32に繋がっている外付けSPI-ROMを
書き込むためのフラッシュライタのプログラムも同梱されています。
普段はmake flashで呼び出されるものですがこれから単独で操作して逆にROMの中身を
吸い出しちゃいます!


まずは前回の手順の"4."まで完了しているものと想定して進めます。このときまだ
homeにいるのでこの場で以下の呪文を唱えます。

source ${IDF_PATH}/add_path.sh

このシェルスクリプトは"IDF_PATH"が設定されているときに発動して、pythonスクリプト
esptool.pyのあるディレクトリにパスを通します。

次にボードのENボタンBOOT(IO01相当の)ボタンを押しっぱなしに(Loに固定する)
して以下の呪文を唱えます。たったこれだけ!(VCOMのポートがCOM3の場合です)
↑間違いをずっと放置してましたorz 間違った情報でうなされたaisuke様申し訳ありません。
 ENをGNDに落としてたらそりゃうごかんがや
esptool.py --port COM3 --baud 921600 read_flash 0 0x400000 original_contents.bin


921600bps早い・・・4MBの読み出しもあっという間です・・・
これで工場出荷時のバイナリの読み出しはおしまいです。
書き戻す時はESPTOOLで0x0からoriginal_contents.binを書いてやれば復活します!


たったこれだけの手順でとても簡単にサルベージ出来ますので皆さんもESP-WROOM-32の
ボードを入手したら真っ先に吸い出しておきましょう!




●ついでなので公式のExample以外の作例も試してみる

尺が余ったのでもう少しだけESP-WROOM-32で遊んでみます。既に有志でちょっとだけ
有用なプログラムが公開されていますが簡単にwifiの機能を試すプログラムとして、
ねむいさんはこちらの方の"ESP32_WifiScan"に目をつけました。

もはやgitで落とすのすらめどいのでzipで纏めて落としてhomeに展開しました!

そしてビルドしているところです。
OpenOCDのビルド時もそうですがねむいさんなんでか無事にビルドが通るようビルド
画面見ながら応援する変な癖
があります・・・


無事にビルドが完了してmake flashで書き込みます。
921600bpsで圧縮だと400kByteが4Secですか・・・超早いすね・・・。


このプログラムは近場にあるwifiのAPをスキャンしてひたすら表示します。
テスト対象としてESP-WROOM-02を久々に稼動させてみます!夢の競演です♥


ESP-WROOM-02のAPが無事表示。やったぜ。
お隣さんのAPまで見えちゃったので自分の以外は隠しました。




というわけでねむいさんがESP-WROOM-32でやれることは全部やりきったつもりなので
今度こそホントの本当にSTM32に戻りますよぅ!

ESP-WROOM-32を使ってみる3 -基礎の基礎、Windows環境でMSYS2を用いてIDFをビルドしてLチカる-

ESP-WROOM-32の目次に戻る



金曜ロードショーのベイマックス面白かったわー!食わず嫌いは良くないですね〜

20170407追:
ESP-IDFのバージョンは時々刻々と変化していき、詳しい手順をせっせと
作ってもあっというまに陳腐化してすぐに使えないものとなってしまいます。
しかしなるべく最新の手順を紹介していくよう努めさせていただきます。
20170407追:




そんなわけでねむいさんも上位レベルアレルギーな食わず嫌いを克服するために
ESP-WROOM-32のSDKをビルドして動かしてみますよぅ!!
今回はBLEとかwifiは置いといて基本のLチカのプログラムを動かします。とにかく
ねむいさんのとおりにすればみなさんもLチカれます!!


基本的には公式のチュートリアルに従います。windows環境でもmsys2のxtensaの
ツールチェインが設定されたビルド環境がまるっと配布されているのでこれを
ありがたく利用しちゃいましょう!

espressif公式のgithubからesp32_win32_msys2_environment_and_toolchain-20170330.zip
をダウンロードします。479MBもありやがるのでがんばって落としましょう!

おとしたら中身の"msys32"をひとまず"C:¥"直下に解凍します。フォルダは
C:¥msys32¥と展開されていたらOKです。

そしてmsys2フォルダ内の"msys2_shell.cmd"で起動します。


コマンドプロンプトが現れますがまずはPATHを通す呪文を唱えます!

1.

cd /home

↑msys2の"home"フォルダに移動します。
 結構忘れやすいので注意!

2.
export IDF_PATH=/home/esp-idf

↑次にIDFのパスを通します。
 IDFとは、"IoT. Development Framework"を意味します。
3.
export PATH="$PATH:/usr/bin:/mingw32/bin:/opt/xtensa-esp32-elf/bin"

↑最後にツールチェインのパスを通します。

4.
git clone https://github.com/espressif/esp-idf.git esp-idf

↑gitのコマンドでespressifから最新のIDFをとってきます。
 "esp-idf"の部分は2.で設定した名前と同じにします。

ここまでは無事進むと思います・・・


5.
cd esp-idf/
git checkout v2.0
git submodule init
git submodule update

↑もうめどいので端折ります・・・
 現状のプログラムの最新化の反映を行っています。



なんか不安な文字列が見えたけど気にしない気にしない・・・

6.
cd examples
cd get-started/blink


↑examplesのさらに中にあるget-started/blinkフォルダに入ります。
 そしておもむろにmake!


ぁーなんかそれっぽいの走ってる〜!たのむ!通ってください!


ビルドを進めていると唐突にsdkconfigの設定画面になります。
ここは需要なのでしっかりと設定してください。




まずはDefault serial portがlinux系のデバイス表記になっているので
書き換えてあげましょう。私のESP-WROOM-32ボードのVCOMはCOM3と
なっていたのでCOM3に書き換えました。


ボーレートも同じように書き換えます。
230400bpsで十分です。



次はExample Configurationです。
デフォルトのままだとblinkするI/OポートはIO5になっているので2に
書き換えます!doit.amのESP32ボードは青LED点滅用ポートがIO2なので
そうします。


以上の設定を行った後saveを行い設定を保存します。


最初のconfig画面まで戻りexitを押すとsdkconfigの設定画面からぬけ、makeが
続行されます。おっ、無事にビルドが完了したようですね☆


次に"make flash"でビルドしたプログラムを書き込みます。pyserialもMSYS2セットに
コミコミなので従来のESPTOOLとかでせこせこアドレスを指定するは必要なくらくちんです☆
アドレス指定ミスによる書き間違いも無いですし。これからは積極的に"make flash"
で行こうと思います。
"make flash"がうまくいかない場合は自動で書き込みモードに入るシーケンスが
上手くいっていません。この場合はBOOTボタンをmake flash中押し続けるとうまく
いくようになるとおもいます。
CP2102のDTRとRTSがENとBOOTに繋がってるくせにこの自動操作が完全じゃないので
結局自分でボタン操作をする必要がありちょっと難有りです。
このBOOTボタンをおしっぱなしにする技ですが公式のForumでもこの技で切り抜けろ!
とコメントありました・・・・。



無事書き込み完了です。
ENを一度押してリセットを掛けます。


やったぜ。


このときUARTのターミナルを開いているとbootプログラムのメッセージが
流されます。




と言うわけでESP-WROOM-32開発の第一歩となるLチカが達成できました!
尤もESP3212自身がESP-WROOM-02と違って現状かなり水物でソースコードも
まだまだ整備中なので上位層の有用なプログラムが現れるまではねむいさん
としては様子見となると思います。


・・・もう飽きたから私STM32F7に戻っていいかしら・・・

ESP-WROOM-32を使ってみる2 -そんな電源で本当に大丈夫か-

ESP-WROOM-32の目次に戻る


別にねむいさんががんばらなくても意識が他界系の人たちが「IoTだウェーィwwww」
とかほざきながらNAVERまとめと変わらんレベルのqiitaとかのやたら検索で引っ掛かる割には糞の役にも立たない
チュートリアルもどきをマンボウの産卵みたいにボコボコ作リ出して情報ノイズを増加させやがるのは
ESP-WROOM-02で予習済みなんですけどまぁアプリレベルの話はそれでもいいんですけど問題はそれ
以前のハードウェアよりの話でねむいさんが散々警告したにもかかわらず電圧
ドロップの問題に今更引っかかったのか納期に間に合わないせいか捨て垢のフリー
メールで日本語になってない日本語で「これは何が悪いと思いますか!!1!!1!」とか
あわよくばねむいさんの発言の揚げ足とってこっちに全責任押し付けてやろうというような
性根が見据えた文面のハナクソ野朗が絡んできて虹裏メイドの中でも特に温厚で
優しい
ねむいさんもさすがにブチ切れて「お前みたいな奴が"ものづくり(←この単語
ねむいさん大嫌いですがあえて使います)"してんじゃねーですよぅこのハナクソ野郎
何が悪いっておまえの存在全てが悪だよバカヤロコノヤロ」と返信したいのをぐっっっっと
我慢してなるべく誠意ある対応を心がけてきましたがもうダメです限界です!もうでちゃいます1!!111
そういえばもう年末だね

ア"ア"ア"ア"ア"ア"ア"ア"ア"ア"ア"ア"ア"ア"ア"ア"ーーーーーーッ!!!11!
(CV:ストーム・イグッリード)

本日の記事これにて完結!!



































今回はwifiモジュールでありがちな消費電流の問題についてESP-WROOM-32の実測を
しながら検証していきたいとおもいます。

wifiモジュールは基本的に多飯喰らいで特にリセット直後の挙動は注意しなくては
いけません。wifiモジュールが使う3.3Vが大きく落ち込むとブラウンアウトリセット
が掛かり無限ループになる危険性もあります。

前回私が購入したモジュールは1117系のLDOが実装されたモジュールでしたが昨年の
私の測定結果
を見れば分かりますがLDO自身のドロップアウトが1V近くあります。
このdoit.am製のボードのUSBコネクタを抜き差ししたときの電圧/電流波形を測定して
本当に安全か確認していきます。


まずはこのボードに電流プローブをつける儀式・・
ここに乗ってる3.3Vを作る1117系LDOはNCP1117かな〜


LDOを一旦はずしました。
すぐさま測定用に"立てて"付け直します。


Voutを浮かして電流プローブを付けられるようにしました。


SDIOの時と違ってプロービングやっけつですが測定対象は比較的遅い変化の電源波形
だから問題ないです。その代わりオシロのピーク検出機能は有効にしておきます。

それではようやく実測にうつります。



電源投入直後っ!
うぉぉう・・・一瞬ですが1.4Aくらいガッツリ電流喰ってますね・・・
XbeeWifi並みですよぅ…。でもこれはResetごとではなくVccの立ち上がり限定
だけのようで安心です☆
なわけないですけど。ていうかこの突入電流て相手側PCにダメージいくんじゃない
と言いたいところですが先に進めませんので見なかったことにします


もう少し時間レンジを窄めました。リセット直後の電流消費は丸で囲った部分の
2発目の大きい電流波形です。BLEブロックがこんな数百mAオーダーで電流喰うわけ
無いのでwifiのブロックがメインとなって動いてますね。


その2発目の部分を拡大です。青色で示す電流波形に注目!
なんと瞬間的に最大600mAも喰ってますよぅ!!!
もちろんこの間+3.3Vラインがおもいくそドロップしてます。


2発目の部分を少し引いた画像です。リセット後の大きな電流消費が収まった後は
電流波形も落ち着きます。しかしながら常時180mA近く消費しています・・・。

ボード上のLEDとCP2102の電流消費をさっ引いても160mA以上消費してるのは確実で
しょう。尤もCP2102は5V->3.3Vの内部レギュレータがあるのでこいつはLDOの+3.3V
には何の影響もないです。つまりESP-WROOM-32自身がめっちゃ喰ってるって訳です。
こんだけ電流喰ってるってことは・・・まさか・・・まさか・・・+5Vラインも仲良く…


おぃいいいいーーーー!!!11!!!!!!
完全に去年と同じ展開ですね・・・しかも瞬間600mAだからドロップが悪化しますよぅ!!
…おや…どこからともなく声が聞こえる…

>ねむいさんねむいさん、ESP-WROOM-32の最低動作電圧2.2Vを全然割ってないから
>ひと時のおちこみくらい見逃してあげましょうよ気にしちゃだめですって!
>おちんこでる時も気にしない、それが皆が知ってるがんばりやさんのねむいさんですよ!

ぁぁ・・・そうですね・・・入力の+5Vラインさえぱわふりゃーな電圧源使えばなんの
問題もありませんたとえドロップアウトが1V以上の1117系のLDO使ったとしても・・・
・・・

そんな↓わ↑け↓あ↑るかー!!

今のままでは余裕度が0.4Vくらいしかないじゃないですかー!
測定の際に使ったUSB-MicroBケーブルは30cm程のごくごく一般的なものです。
コネクタ部の接触抵抗やケーブルそのものの抵抗成分による電圧ドロップを加味すると
一般的なPCのUSB2.0のコネクタよりVbus電源を取るとこのような状態に簡単に陥って
しまいます!!



てわけで早速+3.3Vラインのパワーアップ大作戦です!!
1117系LDOと同じピン配置をもつADP3338を使います。こいつは負荷の高速応答、
セラミックコンデンサ可、なによりドロップアウト電圧がMAX190mVと大変優れた
逸材です!!!
覚えてらっしゃる方もいると思いますがクリスタルが発振せず電源ラインが発振
したことで有名な某C級出版製のゴミ
にも搭載されてしまった不名誉なLDOですが
F特の1uFを出力に乗っけるような愚を犯さなければ何の問題もありません。

今回のESP-WROOM-32板にはもともとLDOの出力に100uFのチップタンタルが乗っていて
容量としては必要十分なのでコンデンサは変えず、単純に1117と置き換えだけ行って
測定してみました☆

ADP3338を一般使いする場合は入出力とも16V/10uFくらいでX7Rもしくは
B特以上の性能の積層セラミックコンデンサ(MLCC)を選びましょう。
秋月さんだとこれとかこれとかお勧めです☆
このLDOの出力に積層セラミックコンデンサ(MLCC)を使うのは意味があります。
MLCCはESRはとても低く一度に大量の電荷を吸い込み/掃出しが可能なので
wifiデバイスのようにいきなり大電流を消費するような回路のデカップリングに
必須なのです。もちろんLDO側も急峻な負荷変動に対応できる瞬発力が要求されます。

単に出力電流容量やコンデンサの容量だけで部品を決めてはなりません。
常日頃データシートとにらめっこして適切な箇所に適切なデバイスを適用
できるように心がけましょう。


+5Vラインが落ち込んでも出力の+3.3Vには全く影響は出ていません!これで電源の心配
無しに思う存分使うことができます♥やったぜ
とはいえ上半身(+3.3V)に比べて下半身(+5V)が貧弱だと他の+5Vデバイスも一緒に
動かしているときに不都合が生じるのでデジタルテスタで遅い変化を測るだけで
終わらずオシロでしっかり波形を確認しながら製作していく癖をつけましょうね。
昨年に引き続き大事なことなので累積で4回言いました!


一応注意点ですがADP3338の入力最大電圧は1117系の半分以下の8Vとなります。
専らUSBのVusbである+5VをLDOのVinとする時の補強を狙っております。
9V以上のACアダプターを主に使う人はADP3338に変えるメリットは何もないです。

まぁこんだけ電気喰うモジュールにLDOに9V以上の入力電圧加えたらLDO自身の発熱が
どういうことになるか皆さんご存知でやはりVusbの+5V程度を入力電圧とすべきなの
は自明と思いますがねむいさん的には30USDくらいになってもいいからDCDCくらいは
組んでほしかったなぁ〜なんて思いましたっ!

ちなみにこのボードの「Vin端子」とVbusはショットキバリアで切られておらず何も
考えずに電圧同時印加すると当たり前にぶっ壊れるステキ設計となっております♥
尤もねむいさんのぶろぐの読者にそんなことやらかす頭がぶっ壊れた奴がいるとは
思えませんから杞憂でしょうけども(カメラ目線で



そいえばDCDCで思い出したけど以前コメントでHX1001進められたけどあれって結局
どうしたの?とお思いの方がいると思います。
実はEMSで配達指定したESP-WROOM-32の方が先に届いてしまったので評価はもう少し
先になると思います。その前にSDカードネタももう一つやりたいのでもうHX1001は
もすこしお待ちください。

20170227追:
ねむいさん+5Vや+3.3Vの事ばかり言ってますがGNDについても帰還電流の流路を意識し
なるべく広いグランドプレーンを確保するのはもはや常識と思っております。
側面から出ているGNDのピンとは電気的には繋がっておりますがESP-WROOM-32の背面の
GNDパッドの接続もぜったいに省略してはいけません!このようなパタンが設けられている
のはちゃんと意味があるのです。特にブレッドボードで工作される方はこの重要性を理解せず
動作させようとされる方がものすごく多いのですが「動いているようです」で済ませるとこの先
必ずトラブルが起こります。
面倒くさがらずに土台はしっかりと固めておきましょう!



20170220追:
mgo-tecさんが当ブログエントリの内容を追実験してくれました。
ねむいさんと同じADP3338を用いてよい結果を出されています
また、電源投入時->リセット時の電流の変化もシャント抵抗を用いた測定法に
よりねむいさんと同じ測定結果を記録しております


第三者による検証の再現性もばっちりとれているのでねむいさんのやったことは
間違ってなかったとまたひとつ確信させていただきましたっ☆
ちなみにねむいさんのdoit.amの出来合いボードのパタンが1117系でちょうど
ADP3338で楽に置き換えできたからこれを選んだわけで、ねむいさんとしましては
秋月で安価に購入できて各種保護回路も万全に備わっていてドロップアウト電圧も
1.5Aでたったの0.34Vと最強に強まっているLT1963Aを強く推させていただきます。

20171115追:
ADP3338、ついに秋月に光臨す!!!

技適マーク付きESP32モジュールESP-WROOM-32を使ってみる

20170218追:
♥併せて読みたいESP-WROOM-32の記事♥
その2(たのしいたのしい電源編)
その3(IDFを使ったビルド・書き込み指南編)
その4(SPI-ROM吸出し救出編)
その5(ウンチーコング編)
20170218追:







macsbugさんの記事を見てねむいさんも速攻発注して手に入れました!!!!1!!
(12月13日に到着してたんですが忙しすぎて触れたの今日ですが・・・)


これがッ!

技適マークつきのっ!

wi-fiとBLEが使えるESP3212モジュール
ESP-WROOM-32だぁあぁああぁあっ1!!!11


はぁはぁ・・・
ねむいさんはこちらの店から19USDで購入しましたが今見たら3ドル上がって
ました。今はクーポン効くからねむいさんのときと同じ値段で替えますけど。




実際にはこんな感じのNodeMCUを意識した出来合いボードに実装されています。
20161220現在は製造元のdoit.amのサイトにはこのボードの詳細は乗っていませんが
回路はいたって単純なのでラクに追えます。



また、このボードにはUSB-VCOMチップのCP2102と、


1117系のLDOが実装されています。
1117系ってなんかやばい予感がしますけど多分気のせいですね気のせいハハ



何はともあれ早速動かしてみました!!!
MicroBコネクタにケーブルを挿して電源投入すると
電源を示す赤LEDのほかに青LEDが点滅しました。



・・・ターミナルを開いてみたはいいのですがESP-WROOM-02と違ってATコマンドの
ファームが存在しないようで自由度が高すぎて何やってよいか分かりません><
↑micropythonのスクリプト言語が走っているようです。


しかたが無いので取っ掛かりとなるUARTの文字列を吐くアプリケーションを
MSYS2でビルドしていきます。これについての詳しい解説は次回以降に行いますので
皆様首を長くしてお待ちください♥
使い方よりも先に電源を見ます



Flash書き込みも"make flash"で一発です☆
コマンドラインビルドが出来るとこの環境でも移植しやすいので要検討ですね〜


やったぜ
小さな文字列ですが大きな一歩を歩みだしました!もはやこっちのもんです!
とりあえずビルド環境を立ち上げるのがESP-WROOM-32を使いこなす鍵となりそう
です。また、OpenOCDとかいう単語もちらちら見えるのでねむいさんにも嬉しい
32bitマイコンになってくれるかもしれません♥


というわけで今回はほんの触りですがESP-WROOM-32をご紹介しました。
公式を見る限りでは現在急ピッチで簡単に開発できる環境作りが進められている
ようです。ESP8266と違ってBLEも扱えてCPUパワーもRAMも圧倒的になりましたので
使用できる用途がさらに広がりますね!

昨年はESP-WROOM-02の到来をもって「新しい時代が来た」と言いましたがこの度の
ESP-WROOM-32の登場により加熱したIoTシーンはさらに過激な領域へと突入
していくと言うことができるでしょう!

Go to top of page