TWE-Strongにファームウェアを書き込む方法(てこずった)
TWE-Strongはピン配置が違って最初は難しい
2015/04/15 追記(TWE-Lite-Rを使った書き込み方法、一番下に記載)
TWE-liteを使って無線通信を行っています
今回は、TWE-liteのシリーズであるTWE-Strongを使って見てるのですが
ZigBeeモジュール TWE?Strong 外付けアンテナ版 ※外付けアンテナ別売り
- 出版社/メーカー: TOCOS
- メディア: エレクトロニクス
- この商品を含むブログを見る
まず、TWE-Lite DIPなどと違いピンの大きさが違います(ピンが0.4mm幅) そのため、簡単に書き込むには2.54mmピッチ変換基板が必要になります
TWE-Strongに使うピッチ変換基板
- メディア:
- この商品を含むブログを見る
これ、ファームウェアなどを書き込みたい時(プログラムを書き換えたい時)に、コスモス電機さんのホームページには 「DIPと同じピン配置で、同じように書き込むことが出来ます」
みたいに書いてあるのですがどうみても難しいです・・・・ 電子工作初心者には厳しいものがあるかなと (電子工作歴長い方に聞いてみても「・・・これはわかりにくいよ」とおっしゃってました(^_^;))
とにかく、便利なツールではあるので苦労してなんとか使えるようにしました
とりあえず、配線を行う
ファームウェアの書き込みに使ったのが ・UART-USBケーブル or アダプター (シリアルピンを、パソコンのUSBと繋げるのに必要な部品) 今回はSWITCHSCIENCEさんのFTDI USBシリアル変換アダプター(5V/3.3V切り替え機能付き)を用いました↓
FTDI USBシリアル変換アダプター(5V/3.3V切り替え機能付き)
- 出版社/メーカー: スイッチサイエンス
- メディア: エレクトロニクス
- この商品を含むブログを見る
・Windowsパソコン(windows8を使いましたがwindowsであればなんでも良いと思います, コマンドラインを叩くのでもしかしたらMacでもいけるかもしれません(未確認)) ・ジャンパーピン ・ブレッドボード ・ブレッドボード用スイッチ(2.54mmピッチ変換基板があれば無くてもいけると思います) スイッチは例えばこんなのです↓
- 出版社/メーカー: ELPA
- メディア: その他
- クリック: 1回
- この商品を含むブログ (1件) を見る
(ちなみに、最初はTWE-Liteのプログラム書き込み用の通信ケーブル接続可能なTWE-Lite Rで試してましたけど、うまくいかなかったのでアダプターを用いましたがたぶんTWE-Lite Rでもできます。 試してみたら追記しよう)
公式ページを参考に、配線してみたけど初心者にはわかりずらいです(笑)
UART-USBケーブルでの書き込み - TOCOS-WIRELESS.COM
そもそもピン配置が違うからな・・・
2.54mmピッチ変換基板にピンソケットをはんだ付して TWE-Strongを2.54mmピッチ変換基板に載せた状態にします こんな感じ↓
次にブレッドボードと繋ぎます、配線は、行ったやつを書くと(5iとか20hとか書いてあったらブレッドボードのアルファベットと数字のことです) ピッチ変換基板のピン配置と名前は以下を参照
2.54mmピッチ変換基板 - TOCOS-WIRELESS.COM
シリアル変換アダプターとブレッドボードの接続
・ブレッドボードの+列(電源)とFTDI USBシリアル変換アダプターのVCCをジャンパーピンで接続 ・ブレッドボードの-列(グランド)とFTDI USBシリアル変換アダプターのGNDをジャンパーピンで接続
シリアル変換アダプターとピッチ変換基板の接続
・シリアル変換アダプターのTXとピッチ変換基板の8ピン(DIO7, UART Receive Data(input), RXピンのこと)を接続 ・シリアル変換アダプターのRXとピッチ変換基板の7ピン(DIO6, UART Transmit Data(output), TXピンのこと)を接続
ピッチ変換基板とブレッドボードの接続
・ピッチ変換基板の39ピン(VCC)を電源に接続(+列に直接でも、5iとかに橋渡しでもどちらでも。僕は5iにジャンパーピンを挿して、5jと+列をさらにジャンパーピンで繋ぎました。以下同様にしました) ・ピッチ変換基板の40ピン(GND)をグランドに接続(-列でも橋渡しでもどちらでも可) ・ピッチ変換基板の27ピン(RESETN, Active Low Reset, リセットボタン(RST)のこと)をブレッドボードの28iに接続(後でスイッチと接続します) ・ピッチ変換基板の23ピン(MISO, SPI Master In / Slave Out, これがプログラム書き込み用のピン(PMG)の代わりになります、ここが最初わからなかったので苦労した・・・)
ブレッドボードにスイッチを接続
スイッチには足が4つあります。スイッチは2つ使います(RST(リセット)用とPGM(プログラムモード)用)
・スイッチの一つは、足4つをそれぞれブレッドボードの20f, 22f, 20e, 22eに接続しました(PGM用) ・スイッチのもう一つは、足4つをそれぞれブレッドボードの28f, 30f, 28e, 30eに接続しました(RST用) ・ブレッドボードの22aとマイナス列(グランド)を橋渡し ・ブレッドボードの30aとマイナス列(グランド)を橋渡し
これを行うと、↓の写真のようになると思います(わかりにくいですが・・・)
ここまで出来たら、次に電源をいれてプログラムを書き換えていきます!
プログラムの書き込みはjenprogで行わないとできなかった
ToCoStickとか、TWE-Lite DIPなどはTWE programmerってアプリを使えばドラッグアンドドロップで書き込みが出来て便利なのですが
TWE-Lite専用プログラマ - TOCOS-WIRELESS.COM
おそらくこの書き込みソフトではStrongに書き込みできません、なんかCOMポートを認識しないってエラーが出ます ↓
(このエラーのせいでよくわからなかったのでTWE-Lite Rは使ってませんが、たぶんTWE-Lite Rでも書き込めるので 後日やってみます)
パソコンにUSBケーブルを挿し、シリアル変換アダプターとつなぐ
書き込みするのに参考にしたサイト↓
TWE-Lite RでTWE-LiteにFWの書き込み。 - Qiita
USBケーブルと接続するとパソコンを電源として電流が流れます(ちなみにシリアル変換アダプターは3.3Vとなるようにしておいてください。購入した時点では、ジャンパーピンが3.3Vになるように接続されてました)
FTDI USBシリアル変換アダプター(5V/3.3V切り替え機能付き) - スイッチサイエンス
次に、PMGスイッチを押しながらRSTスイッチを押して、RSTスイッチから指を離してからPMGスイッチから指を離すと TWE-Strongがプログラム書き込みモードで立ち上がります (これでTWE programmerでも書き込めるのかなと思っていたのでハマってしまいました・・・) (ちなみに、ピッチ変換基板にもPGMボタンとRSTボタンがついてるので、こちらでも可能だと思います)
次に、jenprogを立ち上げます UART-USBケーブルでの書き込み - TOCOS-WIRELESS.COMのページからjenprog単体をダウンロードしてもよいですし、ToCoNet SDK - TOCOS-WIRELESS.COMのページからToCoNetのSDK全部入りをダウンロードしてやっても良いです。僕はパソコンにSDK全部入りをダウンロードしていたのでそちらを用いました
SDK全部入りのフォルダを開いて、ディレクトリ(フォルダ)の階層で TWESDK/Tools/jenprog/bin と開いていって、binフォルダのなにもない所でshiftキーを押しながら右クリックすると 「コマンドウィンドウでここを開く」が出てくるので開きます 参考
TWE-Lite RでTWE-LiteにFWの書き込み。 - Qiita
(コマンドライン(黒い画面)が出てくるけど怖くないです大丈夫です)
コマンドラインが出てきたら
jenprog
とうつと、接続されているポートの名前(USBの接続ポート)が出てきます
例えば、TWE-Lite RでTWE-LiteにFWの書き込み。 - Qiitaのサイトだと COM3 に接続されているので
jenprog -t COM3
と打つと、状態が表示されます
プログラムを書き込んでみる
プログラムを書き込むためには、書き込みたいプログラムが同じフォルダ内にある必要があります(そのほうが簡単)
なので、先ほどのbinフォルダ内(TWESDK/Tools/jenprog/bin)に書き込みたいプログラムやファームウェアを置いて 書き込みます。 例えば公式サイトから、標準アプリをダウンロードしてきて アプリ・ダウンロード - TOCOS-WIRELESS.COM
TWE-Strong用のファームウェアをbinフォルダに移します。 今回僕はApp_TweLite_Master_JN5148_1_6_7.binというのを用いました(JN5148はTWE-Regular/Strong用、JN5164はTWE-Lite DIPなど用のプログラムみたいです)
App_TweLite_Master_JN5148_1_6_7.bin をbinフォルダ内にコピーしたら、またコマンドラインから入力を行います
jenprog -t COM3 App_TweLite_Master_JN5148_1_6_7.bin
と入力してみましょう。そしたら参考サイトのように
writing...
と出てきて書き込みが始まるはずです
ここでerrorなど出てくる場合は、配線が間違えているか プログラム書き込みモードになっていないので、PMGスイッチとRSTスイッチを用いてモードを切り替えて下さい。
出来てしまえば簡単なことなんですが、なんの説明もないのでここまで辿り着くのに時間かかりました・・・
なんにせよ、これでTWE-Strongが使えるようになったので色々実験できます!
わからないこととかあったらコメント欄などにどうぞ
追記 TWE-Lite-Rを使った書き込み方法
TWE-Lite-RとTWE-Strongを接続して、jenprogを使うことで書き込みすることが出来ました。
配線は下記のようにつなぎます TWE-Lite-Rのピン配置はTWE-Lite DIPのピン配置の名前を参考にしてください (数字はピン配置) (リンク先PDF注意)
TWE-Strong(ピッチ変換基板) - TWE-Lite-R
VCC(39) - VCC(28)
RX(8) - RX(3)
TX(7) - TX(10)
RESETEN(Active Low Reset)(27) - RST(21)
MISO(SPI Master In / Slave Out)(23) - PE
TWE-Lite-RのPEは、下記リンクの使用例Cで用いている、先端の5Pピンヘッダの真ん中になります USBアダプター TWE-Lite R(トワイ・ライター) - TOCOS-WIRELESS.COM
つないだ写真
あとは↑に記載しているように、jenprogでの書き込みが行えるようになります RSTボタンとPRGボタンはTWE-Lite-Rについてるボタンを押すことで出来ますので TWE-Lite-Rを持っている場合はこっちのほうが楽ですね