ESP-WROOM-02を昇圧電源回路で乾電池2本(2.4V)駆動
ESP-WROOM-02は、3.0V~3.6Vの電圧で動くとありますが(つまり3.3Vで使えってこったね)、どうやら瞬間的に350mAぐらい使うので、それを流しても電圧があまり落ちないぐらいのタフな電源でないとリセットがかかってしまうとのこと。
ねむいさんのぶろぐ | ESP-WROOM-02を使ってみる3 -そんな電源で大丈夫か-
ところで、こういうマイコンって乾電池2本ぐらいで動かしたいですよね?
定番の昇圧電源回路
いつも使っているHOLTEK HT7733Aの昇圧電源回路があるんですが、
akizukidenshi-ogp-injector.dtpwiki.jp
これはうまく設計すると200mAまで出せるというICで、ブレッドボードで雑に作ると200mAなんて出ないわけですけれども、Atmega328と7セグメントLEDの回路ぐらいならこれで動きます。しかし、ESP-WROOM-02は起動すらしない。
秋月電子の他の昇圧電源も3.3V/500mA付近は出ない
akizukidenshi-ogp-injector.dtpwiki.jp
akizukidenshi-ogp-injector.dtpwiki.jp
を手持ちで持っていますがやっぱり500mAは無理。
TPS63000でパワフル昇圧電源
そこで、TPS63000が組み込まれたストロベリーリナックスの昇圧回路を使ってみました。スペックを見ると、
- 出力電圧:3.3V(はんだジャンパで5Vに変更可)
- 最低起動電圧:1.8V
- 入力電圧:1.8V~5.5V
- 最大出力電流:0.8A(入力2.4Vのとき)
となむ。
TPS63000 昇降圧DC-DCコンバータモジュール(3.3V/5V) - TPS63000 - ネット販売
こんなかんじ
エネループ単四乾電池でも動く。ちなみに動かしているアプリケーションは10分ごとにHTTPでjson取得してマイコン内蔵RGB LEDをRGB値の通り光らせて、ESP-WROOM-02自身はdeep sleepに入るというもの。
停止した時点で負荷つなげたまま入力側(電池)の電圧を測ったら1.7V程度。
ニッケル水素蓄電池の終止電圧が1.0~0.9Vと設定されることが多いから、2本で2.0V~1.8Vから比べるとちょっと下がっているけれども、まだセーフかな?
postfixで不達メールキューをメールアドレス指定して一括削除
postsuper -d ALL
やると全部消えてしまうから怖い。かといって、postqueue -p
でキューリストを取得し消してもいいキュー番号を確認して、postsuper -d {Queue ID}
でキュー番号を指定して消せるが数が多すぎて残業代もでるわけもなく死ぬるとき使おう。
具体的には、絶対届かないメールアドレスをフォームにぶっこまれて何百通も送信されてしまうっていうやつ。もしかしたら、WordPress乗っ取りされてLinuxサーバがメール送信踏み台サーバになったときも使えるんじゃないかな(←さりげないサーチエンジン用検索ワードの付加)。
rootユーザで
# postqueue -p | tail -n +2 | head -n -1 | paste - - - - | \grep -e test@example.com | awk '{print $1}' | xargs -r -l postsuper -d
postqueue
コマンドの出力を流用するのだけれども、
- 1行目: カラム説明のヘッダ
- 2行目: Queue ID, Size, Arrival Time, Sender
- 3行目: メッセージ
- 4行目: Recipient
- 5行目: 空行、以降2行目~5行目を繰り返す
- 最終行: キュー数とキロバイト数を表示するフッタ
という複数行の形式なので、Recipientで行grepできず、先ずヘッダ行とフッタ行をtail -n +2 | head -n -1
で削り、paste - - - -
で4行分を1行にくっつける。それの1カラム目をawkで取り出して行リストができたのをxargsでぶった切ってpostsuperの引数に1つずつ入れて実行してあげます。
このあと、Webアプリ担当君に変なフォーム送信を防ぐような作りにしてもらおう。
paste
コマンドは、複数のファイルの行リストを横に連結するなどにも使える謎の使い勝手があります。使おうとしたときにpaste
コマンドなんて忘れているんだけど。
秋月電子AT-ESP-WROOM-02で試作環境を作る
秋月電子から話題のモジュールESP−WROOM−02が出ているのですがこれで実際にLチカできるぐらいに組み立てることをやります。
部品表
部品は通販に便利なように秋月電子でまとめています。
品名 | 価格 | コメント |
---|---|---|
Wi−Fiモジュール ESP−WROOM−02 DIP化キット | 650 | 爆安のWiFiモジュール。Arduinoにも化ける |
タクトスイッチ(黒) (10個入) | 120 | リード付タクトスイッチはブレッドボード工作に◎ |
カーボン抵抗 1/2W 10kΩ (100本入) | 100 | 多い日も安心プルアップ用10kΩ抵抗 |
ブレッドボード BB−801 | 200 | 日本名でまな板とか流行らなくてよかったね |
FT231X USBシリアル変換モジュール | 750 | USBの5V取れるものがありがたい |
三端子レギュレータ3.3V500mA TA48M033F(S Q) | 100 | 5Vから3.3Vを生成 2種類のコンデンサ同梱で便利 初出時5Vにする製品になっていました |
ブレッドボード・ジャンパーワイヤ | 400 | 色がバラバラになるのは勘弁な |
高輝度5mm白色LED OSW54K5B61A (10個入) | 250 | Lチカも白色LEDの時代 |
------------------------------------------ | ---- | ---------------------------------------------- |
合計 | 2570 | Arduino Unoより安いのではないかな |
akizukidenshi-ogp-injector.dtpwiki.jp
akizukidenshi-ogp-injector.dtpwiki.jp
akizukidenshi-ogp-injector.dtpwiki.jp
akizukidenshi-ogp-injector.dtpwiki.jp
akizukidenshi-ogp-injector.dtpwiki.jp
akizukidenshi-ogp-injector.dtpwiki.jp
akizukidenshi-ogp-injector.dtpwiki.jp
akizukidenshi-ogp-injector.dtpwiki.jp
配線
配線はこんな感じ、LEDとタクトスイッチは同等品(あとで気が向いたら清書する)
秋月電子AE-WROOM-02でのシリアル接続と配線はこんなもんかなリセットボタンとかUSBシリアルの手間がないスイッチサイエンスの製品が今だとオススメ pic.twitter.com/yZ8lFyr8jy
— CL (@CLCLCL) 2015, 10月 25
ポイントは、USBシリアル変換モジュールからLDO(三端子レギュレータ)を使って、ESP−WROOM−02の起動に耐えうる電流を流せる3.3V電源を作るところです。無線LAN部は消費電力が高いので3.3Vの電源が弱いと起動時に再起動してしまう。
2つあるボタンのうち一つ(SW2と呼ぼう)はRSTにつながっていて押して離すと文字通りリセット、もう一つ(SW1と呼ぼう)はIO0につながっていて起動時orリセット時に押し込まれていることでプログラム転送モードになるものです。
動作確認
いろんなところに説明があるので割愛するが、まずはATコマンド通るかどうか試すところからやろう
先にPCとUSBシリアルモジュールだけをmicroUSBケーブルでつなげて、COMポートに割り当てておく。そのあと、COMターミナル(Arduinoのでも可)で115200bpsでつなげて「AT」エンターしてみよう
他にもATコマンドであらかじめ入力して設定を紙に書き写しておいた方がいいものとかもあるのでやっておこう
Arduinoとして使う
いろんなところに説明があるので割愛
プログラム書き込みモード(UART Download Mode)にしないと書き込めないが、SW1を押しながらリセット(SW2を押して離す)をするとそれに移行するので、Arduino IDEから転送する前に操作する
なお別製品の方がよい
ちょうど2015/10/23にスイッチサイエンスから今回パーツを集めて作った試作環境(プロトタイピングとかいいますね)が一発で揃う奴が出ていた。ぎゃふん。
追記
懐かしのlivedoor Werther hacksからデータとって天気予報をマイコン内蔵RGB LEDで点灯、ESP-WROOM-02はdeep sleepに入る。黄色は曇り。TeNY電波塔お天気ライトアップみたいな感じ pic.twitter.com/or24D9m3t0
— CL (@CLCLCL) 2015, 10月 27
@CLCLCL 昼間に作ったESP-WROOM-02の天気を色で表現するやつ、ミニブレッドボードに組み直した 5V付けて玄関とかにおいておくと吉 pic.twitter.com/kO5iVRKvFr
— CL (@CLCLCL) 2015, 10月 27
セマフォ不足でApacheが起動できないときセマフォをまとめて削除する
まとめ
Apacheが起動できない状態で、解放されず残っているapache
ユーザのセマフォを消すには、rootユーザで
ipcs -s | awk '/apache/{print $2}' | xargs -r ipcrm sem
(/apache/
のところは、Apache実行ユーザに読み替えよう)
経緯
セマフォ不足でApacheが起動できなくなるっていうトラブルがありました。
前回は10か月前19時30分開始のGotanda.pm #3に参加するため19時退社して(うちは定時21時なんです)モバイルファクトリーの社内で参加中20時ぐらいに会社から電話かかってきて「Apacheが起動できませ~ん」というのでリモートで潜って対応。
今回は、アパートの立ち入り検査があるとかで有給休暇を取って全裸待機していたら朝10時位に電話がかかってきて(うちは始業は10時なんです)「Apacheが起動できませ~ん」というのでリモートで潜って対応。
セマフォ不足であることを示す直接のログは出てこず、Apacheのエラーログに
No space left on device: Cannot create SSLMutex
No space left on device: Couldn't create accept lock
No space left on device: mod_rewrite: could not create rewrite_log_lock
等のなんかのスペースが足りん的なエラーメッセージとして出てくるようです(監視システムなどに設定するのはこのエラーメッセージを設定することになる)。
初回のインシデントの時点で自動で復旧できるぐらい組んどけよっていう批判は甘んじて受けますがともかくセマフォ不足でApacheが起動できないというのをGoogle検索しますと、セマフォの消し方としてこういうのが出てきます。
ipcs -s | grep apache | perl -e 'while (>STDIN<) { @a=split(/\s+/); print `ipcrm sem $a[1]`}'
(ダイヤモンド演算子ってそういう書き方できるんだ)よく見るとPerlのワンライナーってwhileを書かなくても書いたことにできるスイッチあったよなーと思ったのでいじってみました。
改善
ipcs -s
で出てくるのは
# ipcs -s ------ セマフォ配列 -------- キー semid 所有者 権限 nsems 0x00000000 0 root 600 1 0x00000000 32769 root 600 1 0x00000000 6619138 apache 600 1 0x00000000 6651907 apache 600 1 0x00000000 6684676 apache 600 1 0x00000000 6717445 apache 600 1 0x00000000 6750214 apache 600 1 0x00000000 3670033 root 600 1
という文字列です。Apacheがセマフォ不足で立ち上がらないというのは、何らかの原因でApacheが作ったセマフォが百数十個残ったままになっているということ。何も考えずCentOS5/6をセットアップすればカーネルに設定されたデフォルト上限値として128個まで作れることになる(see: kernel.sem)。というわけで、セマフォ不足でApacheが起動できないという場合は、apacheの実行ユーザが所有者となっているセマフォをipcrm sem {semid}
を実行して120回ぐらい延々と消す必要がある。
要はipcs -s
をapacheユーザでgrepしたやつの2番目のカラムの{semid}
を引数にしたipcrm sem
を実行させればよいわけなんで、
基本形の
ipcs -s | grep apache | perl -e 'while (>STDIN<) { @a=split(/\s+/); print `ipcrm sem $a[1]`}'
から、
つうことで、
ipcs -s | grep apache | perl -nlE 'split(/\s+/); system "ipcrm sem $_[1]"'
としてみた。よく見ると、Perlのコマンドラインオプションの-a
をつけるとawk
モードになって@F
に自動的にカラムが入ってくれるからsplit
いらなくなるじゃないかと思って、
ipcs -s | grep apache | perl -a -nlE 'system "ipcrm sem $F[1]"'
としてみた。ところで、最近のLinuxディストリビューションだと最小構成インストールでPerlが入らないという大変なことになっていたりするので、Perl抜きで組み立てたほうがよくね?と思い、
ipcs -s | grep apache | awk '{print $2}' | xargs -l -r ipcrm sem
ここまで来ると、grepの作業ってawkでもできるよねってなって、
ipcs -s | awk '/apache/{print $2}' | xargs -l -r ipcrm sem
となる。そんで、よく考えると、ipcrm
のman
を見ていなかったことに気づき、参照したれば、
IPCRM(1) Linux Programmer’s Manual IPCRM(1)
NAME
ipcrm - remove a message queue, semaphore set or shared memory id
SYNOPSIS
ipcrm [ -M key | -m id | -Q key | -q id | -S key | -s id ] ...
deprecated usage
ipcrm {shm|msg|sem} id...
とありましたので、今まで安全のために入れておいたxargs
の-l
オプション(引数を1個だけにして、1回ずつ実行させる)を取っ払って、
ipcs -s | awk '/apache/{print $2}' | xargs -r ipcrm sem
あたりに落ち着きました。
アイキャッチ画像に使ったセマフォ写真は File:Udegishiki Tokushima.jpg - Wikimedia Commons
秋月電子通商の個別商品ページにOGPメタデータをつけてイケてるブログカード貼れるサイト作った
秋月電子通商、お盆で秋葉原の店舗がリニューアルしましたね。たまげた。
そんなことにはあまり関係ないが、秋月電子通商のオンライン販売ウェブサイト、まさに電子部品のデパートみたいで見ているとオラなんだかワクワクするのですが、「このイケてる商品のリンクをはてなブログに貼ろう」とすると、こんな感じでちょっと残念です。
せっかくの商品の魅力が台無しなので、見栄えがよくなるよう、具体的に言うとOGPのメタデータを埋め込むサイトを作りました。
使い方(はてなブログ)
秋月電子の個別商品ページのURLが
http://akizukidenshi.com/catalog/g/gM-07385
だとしまして、これをはてなブログに貼ると
となります、これがはてなブログの「はてなブログカード」+秋月電子の商品ページのメタデータでの表現です。
さて、秋月電子の個別ページのURLの前に、今回用意しました「http://akizukidenshi-ogp-injector.dtpwiki.jp/」を付けまして、
http://akizukidenshi-ogp-injector.dtpwiki.jp/http://akizukidenshi.com/catalog/g/gM-07385
とすることで、OGPに対応したメタデータが埋め込まれたページができるので、それをそのままはてなブログに貼ると、
akizukidenshi-ogp-injector.dtpwiki.jp
こうなります。商品の写真が表示され、商品の詳細説明が読めるので、「どらどら、サイトに行ってみようかな?」となりそうな雰囲気だと私は思います。
TwitterでもOGPでTwitter Card
Twitterにインジェクタを通したURLを貼ると、Twitter Card展開してくれて、商品画像が出てくれるのでうれしい。
Facebookはむずかしい
OGPといえばFacebookですが、FacebookのOGPパーサは割と厳格に解釈するので、今回のインジェクタのように本来のURLを指示したまま別のページを作るのはNGでした。og:urlのドメインを秋月電子通商からインジェクタのドメインに差し替えてしまえばいいのでしょうが、さすがにそれはいかんと思う。
インジェクタのウェブサイト
あまりユーザインタフェースいらない仕組みなんですが、とりあえず作ってあるので、ブックマークするならこちらをどうぞ。
akizukidenshi-ogp-injector.dtpwiki.jp
ギャラリー
使用前・使用後の比較画像です。
関係ないが
印刷関連の一般社団法人JaGraっていうところが印刷関連の動画を配信する「ジャグラBB」っていうサイトを持っていまして、新着動画がわかりにくいのでRSSを生成するやつを8年前作ったわけだけれども、
印刷展示会(IGAS)のときJaGraのブースがあったので名刺出して「せっかくの動画サイトなんで、RSSあったほうがいいですよ」とか言うたりしたが未だにジャグラBBにはRSSが付かないので、こういうのは外部の人間が便利だーとか言っても変化がないものである。
今回の秋月電子のサイトにOGPメタデータが付いていたらいいのにな、でも付いていないから野良で付けるのです、というのもこのままになりそうだなあと思いました。
そういえば、マルツもOGP出ていない
きりがない
インターネットが1Mbpsから8Mbpsになって夏'2015
わたし東京にkickり出されてから、インターネット回線をどうしようかっていうのがずうっと問題でして、金がないしせっかく都会にいるんだからWiMAXっていうものを使ってみよう、という考えで、今までの経緯としては
みたいな環境です。
それに加え、住んでいる物件が途中でCATV設備のリニューアルでCATVモデムを設置して0円インターネット(1Mbps)ができるようになっていたので、ヤマハのルータRTX1000を中古で買ってきて、WiMAXとCATVの両方でインターネットができるように設定しておりました。
外出するときにWiMAXルータを持ち出すと、RTX1000がWiMAXルータへのpingを9回失敗して、その後WANをCATVに切り替えるっていう奴。帰宅するとRTX1000のWiMAXルータへのpingが成功するので、WANがWiMAXルータに切り替わる。
(在宅時) ¦(外出時) ┌──────┐¦ ┌─────┐ ¦┌──────┐ ┌─────┐ │WiMAXルータ │¦ │CATVモデム│ ¦│WiMAXルータ │ │CATVモデム│ │(\3696/月) │¦ │(\0/月) │ ¦│は鞄の中 │ │(\0/月) │ └──┰───┘¦ └──┬──┘ ¦└──────┘ └──┰──┘ ………┃………… │ ¦ (接続なし) ┃ ┌──┸───┐ │ ¦┌──────┐ ┃ │MZK-RP150NA │ │ ¦│MZK-RP150NA │ ┃ │(コンバータ)│ │ ¦│(コンバータ)│ ┃ └──┰───┘ │ ¦└──┬───┘ ┃ ┃WAN1 6Mbps │WAN2 1Mbps¦ PING失敗 ┃WAN2 1Mbps ┌──┸─────────┴──┐ ¦┌──┴─────────┸──┐ │RTX1000(イオシスで1000円) │ ¦│RTX1000(イオシスで1000円) │ └───────┬───────┘ ¦└───────┬───────┘ │LAN 100Mbps ¦ │LAN 100Mbps ┌───────┴───────┐ ¦┌───────┴───────┐ │GS108E(NTT-Xで4800円) │ ¦│GS108E(NTT-Xで4800円) │ └──┬──────────┬─┘ ¦└──┬──────────┬─┘ │LAN GbE │ ¦ │LAN GbE │ ┌──┴───┐ │ ¦┌──┴───┐ │ │PA-WG1200HS │ │ ¦│PA-WG1200HS │ │ │(無線LAN AP)│ │ ¦│(無線LAN AP)│ │ └──┬───┘ │ ¦└──┬───┘ │ │Wi-Fi 11ac │LAN GbE ¦ │Wi-Fi 11ac │LAN GbE ┌──┴────┐┌────┴───┐¦┌──┴────┐┌────┴───┐ │PC/PSVita/3DS ││PC/Mac/Linux/PS3│¦│PC/PSVita/3DS ││PC/Mac/Linux/PS3│ │iPad/Android..││NAS/RasPi/XenVMs│¦│iPad/Android..││NAS/RasPi/XenVMs│ └───────┘└────────┘¦└───────┘└────────┘
【ここで突然機材紹介】
PLANEX ホテル用 無線LANモバイルWi-Fiルーター 11n/g/b 150Mbps ちびファイ MZK-RP150N PS4・AppleTV・iPhone・Android対応
- 出版社/メーカー: プラネックス
- 発売日: 2011/04/28
- メディア: Personal Computers
- 購入: 39人 クリック: 512回
- この商品を含むブログ (22件) を見る
無線モバイルルータを家庭用インターネット回線にする時のキーになる製品。無線モバイルルータに有線でつなげるようにするコンバータモードで利用します。製品が自動的に無線モバイルルータのWi-Fiとリコネクションするので、モバイルルータを持ったまま家に入ると自動的にモバイルルータへのルートができあがり、後段のルータの機能でWANとみなして家庭用インターネット回線として利用できます。現行モデルではないですが、同様の機能を持った製品がありますのでそちらで試されるとよろしいかと思います。
- 出版社/メーカー: NEC
- 発売日: 2015/05/14
- メディア: エレクトロニクス
- この商品を含むブログ (2件) を見る
先日書いたIEEE802.11ac 867MbpsのUSB無線LANアダプタ
でのベンチマークをしたくて買った。ほぼ同じスペックで屋内中継機能が付いた価格が高いPA-WG1200HP、有線LAN部が100MbpsのPA-WF1200HPが店頭にあるので注意。罠だろ。ビックカメラの渋谷店にはあんな狭い店舗なのにPA-WG1200HSも置いていたので良心的だと思います。
NETGEAR 【ライフタイム保証(無償永久保証)】ギガ8ポート アンマネージプラススイッチ/管理機能付 GS108E-300JPS
- 出版社/メーカー: ネットギア
- 発売日: 2014/11/01
- メディア: Personal Computers
- この商品を含むブログを見る
5000円ぐらいなのに閉ループ接続したら異常接続を検出してダウンを防ぐことができたり、VLANできたりするチョットカシコいスイッチングハブ。転職面接時に「最後に、何がご質問はございますか?」と面接官に言われたとき「御社の業務内で実際に苦労したことはありますか」と聞くと、社内エンジニア職だとスイッチングハブにユーザが勝手にLANケーブルを挿したせいで閉ループができてネットワークがダウンして困ったとかいうのを言われることがあるらしく、それを聞くと、〇ッ〇ァ〇ーの業務用とかよりこういうチョットカシコいスイッチングハブを島に置くと防げるのになーと思うのだけれども、いろいろ理由があるのだろうなあとも思う。
- 出版社/メーカー: ヤマハ
- 発売日: 2008/10/30
- メディア: Personal Computers
- 購入: 1人 クリック: 31回
- この商品を含むブログ (3件) を見る
図内ではRTX1000を使っているけれども、RTX1200があるといろいろできるので持っているとよい。後継機種RTX1210が出たことで、2015/8現在中古品が今アキバで2万~3万、ネット通販でもその位で売っている。
【機材紹介おわり】
ところが、WiMAX2+で2015/5に通信量に応じた速度規制が始まりまして(契約から2年は速度低下がないっていうあいまいな約束がルール変更の余地がある規約になっていて後出しルールで反故にされた)、こらつらいなーこいつらも商売人としてつらいなーって思っているところでした。
通信速度は、WiMAX1時は3Mbps、WiMAX2+時は6Mbpsぐらい、通信量は少ない月で大体70GBだったので、どの無線通信サービスにしてもつらいなーということで、困っていたんですけれども、CATVの無料サービスのやつを速度プラン上げて有料にすればよくね?と思い、ケーブルインターネット会社に電話したら即日でスピードが上がった。都会と特定の地方はCATV会社のインターネットがあってとても良いですね。
1Mbps⇒8Mbpsのセカイ
8Mbps切り替え後速度測定では7Mbpsが出ているので、WiMAX2+とかのMax110Mbpsとか言うて15Mbps出ていると上出来という世界とは違ってとても良い。これでCentOSのDVDイメージとかnohupかけてダウンロードしなくても済む(2015年に書く話題ではない)。
あとWiMAXだとTCPセッション張っていてもお構いなしに切断が起きていたけれども、CATV回線だと起きない。あたりまえだ。でもありがたい。CentOSのDVDイメージをVPSサーバに入ってnohupでダウンロードしておいたやつを家にダウンロードするときに安全にダウンロードできる(2015年に書く話題ではない)。
あとエッチなサイトのエッチ広告アグリゲータの一部の広告が表示されないのはこれなんかIPブラックリストとかあるわけ? DMMとかはくっそ出る(2015年とか関係なく書く話題ではない)。
ところで、低速インターネットの世界に慣れると、転職面接で「注目しているウェブサービスについて挙げてください」とかいう質問にわりと答えられなくなるので注意。はなやかなりし高速回線前提のサービスは選択しなくなったというのはこのブログの過去エントリが電子工作寄りになったことを見ても明らか、貧すれば鈍するとはこれのことだ。だがしかし電子工作も面白いよ。
ピカリ館の単色LEDパネルとRaspberry Piで文字バナーを流す
夏休みの自由工作のつもりなのだが夏休み最後の日の8月24日はとうの昔に過ぎてしまっていたわけであり、そんなの気にせずできたところまで出す。
前にやったところ:
プログラムなんですけど、JavaScriptってこれでいいかどうかわからないんですよね。詳しい人に指導してもらいたいなあ。
動画