So-net無料ブログ作成

秋月電子に発注した [電子工作]

(2017-10-31)
秋月電子に部品を注文しました。

<注文部品リスト>
【C-07607】 USBケーブル Aオス-マイクロBオス 1.5m A-microB
【I-11885】 PICマイコン PIC16F1788-I/SP
【M-11653】 Wi-Fiモジュール ESP-WROOM-02 (10個入)
【P-04053】 チップインダクター(フェライトビーズ) 330Ω[2012] ムラタBLM21P
【P-08669】 クリスタル(水晶発振子) 12MHz
【P-11626】 チップ積層セラミックコンデンサー 22pF50V[1608] (40個入)
【P-10497】 SSOP20ピン(0.65mm)・SOP20ピン(1.27mm)DIP変換基板

 一番欲しいのは『USBケーブル Aオス-マイクロBオス』@¥120です。今、抱えている不具合がケーブルの不良によるものかどうか確かめるためです。

実はFT231XSを使ったUSBシリアル変換回路が動いてくれません。SSOP20pinのデバイスで、半田付けがちょっとだけ厄介です。少し前に2個試作して2個とも動かず。気を取り直して昨日3個目を試作して、やはり同じ結果(コード10またはコード43エラー)になってUSBシリアルとして認識しません。orz

”FT231XS 接続できない”と検索しても、デバイス・ドライバーのアップ・デートくらいしか情報が見つからなかったのですが、その中に(一つだけ)、USBケーブルを交換したら直った(USBケーブル不良)というのがありました。試作した3個とも同じUSBケーブルで確認していたので、『USBケーブルの不具合』である可能性は否定できません。

と、ここまで書いてUSBシリアル変換モジュールも注文するべきだったと気づきました。『ケーブルの不良によるもの』であって欲しいという願望が冷静な不具合探索を妨げているようです。

確認その1
動くと期待される”USBシリアル変換モジュール”と今まで使っていたUSBケーブルの組み合わせで、エラーになる。
確認その2
購入した”USBケーブル”と”USBシリアル変換モジュール”の組み合わせでUSBシリアルとして認識する。
確認その3
購入した”USBケーブル”と試作したUSBシリアル変換回路の組み合わせで???

確認その2が無いと、購入した”USBケーブル”に不具合が無いとは言えないのです。

USBケーブルが届けば”USBシリアル変換モジュール”の要否もはっきりします。
全ては明日・・・

-------------------------
通販を利用するようになって以来、秋月電子の店舗を訪れる機会がめっきり減りました。
もし、”USBシリアル変換モジュール”が必要になったら久しぶりに出かけようか?
通販で”USBシリアル変換モジュール”一個だけ注文というのも気が引けるし・・・

nice!(2)  コメント(0) 
共通テーマ:日記・雑感

JAVAのMQTT接続で変なことが起きた

こちら(↓)や
https://qiita.com/shohei1913/items/b355ad7d1bb27141176b
こちら(↓)を参考にして、JAVAでMQTT接続してみました。
http://dotnsf.blog.jp/archives/1035416534.html

最初に試したのは昨日です。同じプログラムを(ブログを書くために)今日も動かしたのですが・・・
昨日と今日でpublishした後の動作が異なっているのです。orz

昨日はpublishする度にconnectionLost関数が呼ばれた(disconnectした)ので、reconnectする処理を追加して、動かしました。(そういう仕様だと思っていた)

それが、今日は(何故か)disconnectしなくなっています。

???

ここ(↓)にConnectionLost メソッドが呼び出される場合の要因が記されていました。
https://www.ibm.com/support/knowledgecenter/ja/SSFKSJ_7.5.0/com.ibm.mq.tro.doc/q039410_.htm

しかし該当するものは見つかりません。orz

原因不明のトラブルですが、良い(使いやすい)方向に変わったので不満はありません。
(ちょっと気持ちが悪いだけ)

こういうときの基本スタンスは『結果オーライ』なので、このまま先に進みます。

nice!(1)  コメント(0) 
共通テーマ:日記・雑感

esp8266_MQTTで嵌まった [電子工作]

『ESP8266を使ったMQTT接続』で参考にしたのはこちら(↓)のサイトです。
電子工作界隈で話題のWi-Fiモジュール「ESP8266」でMQTTを使う方法 | 株式会社LIG

必要な作業がまとめて記されているので、初めての方でも取り組みやすいのではないか、と思います。(ただし、一点を除いて)

必要な準備は整っていたので、これ(↓)をコピペして実行する所から始めました。
esp8266-mqtt-quicktest/mqtt_esp8266_test.ino at master


ところが、実行してみるとException (3)を起こし、リスタートを繰り返してしまいます。orz

---------------------
Exception 3: LoadStoreError: Processor internal physical address or data error during load or store

Decoding 9 results
0x402301e0: sleep_reset_analog_rtcreg_8266
0x40202f76: Adafruit_MQTT::connect()
0x40203408: Print::println()
0x40201e08: MQTT_connect()
0x40201e3a: loop
0x40203768: loop_wrapper
0x40100718: cont_norm

---------------------

Adafruit_MQTT::connect()を呼び出したあと、LoadStore命令で不正アクセスを起こしたようです。


しかしWeb検索を掛けても、、Arduino IDEでMQTT_connect()から先の処理を調べる方法が見つかりません。sleep_reset_analog_rtcreg_8266が何なのか?それも分かりません。orz

半日近くあれこれ調べ、”MQTT Exception 3”で検索を掛けてようやくこれ(↓)を見つけました。
mqtt.connect() throws Exception (3) rst cause:2, boot mode:(1,6) · Issue #68 · adafruit/Adafruit_MQTT_Library · GitHub


どうやらコピペしたサンプル・コードに使われている”PROGMEM”が悪さをしていたようです。
”最新のexampleを調べろ”ということなので、スケッチ例-->Adafruit MQTT Library-->mqtt_esp8266を実行すると・・・


WiFi connected
IP address:
192.168.2.108
Connecting to MQTT... MQTT Connected!

Sending photocell val 0...OK!

Sending photocell val 1...OK!


動きました!

勿論、こちらのコードにはPROGMEMは使われていません。¥(^_^)

Arduino IDEを使っていると、ライブラリが頻繁にアップデートされます。ネット上のサンプル・コードではなく、ライブラリと一緒に提供される『スケッチ例』を最初に試すべきなのだと気づきました。

経験値がまた一つ上がりました。

それにしても・・・Arduino IDEでプログラムの動作を追いかけるには、どうしたら良いのでしょうか?

謎だ!
経験値がまだまだ不足しているようです。

nice!(1)  コメント(0) 
共通テーマ:日記・雑感

ESP-WROOM-02を動かして見た [電子工作]

(2017.10.25)
ESP-WROOM-02ピッチ変換用基板《シンプル版》(これ)にESP8266を半田付けしたのは2年くらい前です。適当な電源が見つからず、ず~っと放置していました。(^_^;)

秋月電子から3.3V 2AのACアダプタを購入して、ようやく準備が整いました。
ブレッドボードに取り付け、IO0,IO2,EN,RSTを10kΩでプルアップして、電源(3.3vとGND)を接続して、USBシリアルのTX,RX,GNDを接続して配線完了です。

こちら(↓)に記されていた回路接続を参考にしました。
ESP-WROOM-02動作確認 - <<梅>>備忘録

ATコマンド操作例は多くの方がアップしているので、迷うことなくWifi接続まで出来ました。
パチパチパチ~

Arduino IDEを使ったHello Worldプログラムもこちら(↓)を参考に環境を整え、コンソール表示出来ました。
keijirotanabe.github.io
パチパチパチ~

事件が起きたのは、この後です。

”Hello World”の文字列を変更して、コンパイル、書き込み、実行・・・
なにやらコア・ダンプのようなものを何度も繰り返し表示しています。orz

自動スクロールを止めて見ると”wdt reset"の文字が読み取れます。

ウォッチドッグタイマによるリセット?
書き込みに失敗してる?

もう一度、コンパイル、書き込み、実行すると、今度は動きました。

???
何が起きたのか分かりませんが、『こういうこともある』という経験を一つ積み重ねて先に進みました。

後は、ESP8266のスケッチ例を使ってWifiWebServerまで動かすことが出来ました。
2017_1024_5.JPGWifiWebServerのシリアル出力

ところがこの後、MQTTの接続で大嵌まりします。

nice!(1)  コメント(0) 
共通テーマ:日記・雑感

基板が届いた [電子工作]

ELECROWに注文した基板が届きました。発注から5日で発送、それから7日(Air Mail便)で手元に届きました。(パチパチパチ~)

そして、日曜の夜に発注した部品も今日届きました。(パチパチパチ~)

2017_1024_2.JPG基板と部品が同時に届いた

世間の動きは、とってもスピーディです。それに比べて、自分の作業のなんと『とろい』こと・・・
orz

まぁ、そんなことで気落ちしてもしょうがないので、ボチボチ作業を進めます。
先ずは、中断していたESP-WROOM-02の動作確認です。


nice!(1)  コメント(0) 
共通テーマ:日記・雑感

どうしても分からない謎 [電子工作]

(2017.10.20)
例えばこれ(↓)
https://www.amazon.co.jp/gp/product/B072KKCMC1/ref=pe_1629532_282900032_em_1p_0_ti

関東への送料無料で¥100だそうです。
何故、こんなことが出来るのか?
どうしても分かりません。

不良品が含まれていたりすることもあるけれど、最近はだいぶ良くなってきたように感じます。
これと張り合うのは無理。
これを生かす方法を考えるしか無い。
----------------------------------------------------------------------------------
(2017.10.21)
同じ業者がこんな出品(↓)をしているのを見つけました。
https://www.amazon.co.jp/gp/product/B01KZ9IR3M/ref=s9_dcacsd_dcoop_bw_c_x_2_w

こんな無茶苦茶な値付けで商売になるのでしょうか?

nice!(0)  コメント(0) 
共通テーマ:日記・雑感

基板が出荷された [電子工作]

 Elecrowに発注した基板がようやく出荷されました。

 注文したのが10/13ですから、製造に5日ほど掛かった計算です。Fusion PCBが1日で製造をうたっているのと比べるとちょっと時間が掛かりすぎではないかと思ったりします。しかし、基板10枚で$4.9の格安価格ですから、そんなことで文句を付けるのは罰当たりかもしれません。:-p

DHL等の配送を選べば2,3日で手元に届きますが、コストを優先してAir Mail($4.7)にしたので配送期間は7-25日という見積もりです。今月中に届くかどうか?

1週間ほど待ってから部品の手配を始めます。以前は秋葉原まで買いに出かけましたが、最近はもっぱら秋月電子の通販を利用しています。昼頃に注文して翌日には届くので重宝しています。

ついつい余計な物まで注文してしまいがちなところが、ちょっと困りものなのですが・・・

今、購入しようか迷っているのがこれ(↓)です。
http://akizukidenshi.com/catalog/g/gM-07742/

PIC32MX795F512Lを使ったArduino MEGA互換の基板なのですが、価格がちょっと・・・
中華製のArduino互換機の値段を知ってしまうと、なかなか手がでません。
例えばこれ(↓)とか
https://www.amazon.co.jp/Kuman-Arduino%E3%81%AB%E5%AF%BE%E7%AD%96-MEGA2560-Arduino-USB%E3%82%B1%E3%83%BC%E3%83%96%E3%83%AB%E4%BB%98%E5%B1%9E/dp/B01AXQX81I/ref=sr_1_1_sspa?ie=UTF8&qid=1508310952&sr=8-1-spons&keywords=arduino+mega+%E4%BA%92%E6%8F%9B&psc=1

nice!(1)  コメント(0) 
共通テーマ:日記・雑感

chipKIT Import プラグインを試してみた [MPLABXとXC8]

電子工作の世界で大流行しているArduinoですが、親族SNS管理人は(何となく)敬遠していました。

しかし、Microchip社がAtmel社を買収して以来AVRやArduinoにも興味を覚えるようになりました。そしてつい先日、Arduino UNO互換機(これ)とLCD-KeyPADシールド(これ)を購入し、Arduinoの世界にそろりと足を踏み入れたと言うわけです。

両方合わせて¥1200しないという価格に、まずビックリ。そして、Arduino IDEとスケッチを使った電子工作の手軽さにまたビックリ!世界中で受け入れられ、活発なCommunityがいくつも立ち上がった理由が良く分かります。

あれこれArduinoの世界を覗き込んでいて、こんな物(↓)を見つけてしまいました。
http://chipkit.net/wiki/index.php?title=MPLABX_Importer#Locate_the_Plugin_Menu

なんと、ArduinoのスケッチをMPLAB-Xのprojectに落とし込んで、MPLAB-Xでデバッグできるようにするプラグインです。

2017_1017_1.png早速、試してみた

ビルドしてHexファイルが生成される所まで確認できました。MPLAB-XのNavigate機能を使って、Arduinoのプログラム構造を自由に調べることが出来ます。

これは良いオモチャを手に入れました。

--------------------------------
しかし、ArduinoがここまでPICの世界に入り込んでいたなんて、全く気づいていませんでした。
chikPIT社、恐るべし!




nice!(1)  コメント(0) 
共通テーマ:日記・雑感

ELECROWに基板を発注した [電子工作]

久しぶりに基板を発注しました。こんなやつ(↓)です。
2017_1013_1.png発注した基板

『Pic-colo』って呼んでいます。ESP-WROOM-02やArduinoシールドを接続して、機能拡張出来るようにしました。PIC単体の試作は順調に進んだのですが、ESP-WROOM-02やArduinoシールドの接続が上手く行くかどうか?試作基板が届く前に確認作業を始めようと思います。

 先ずはこれ(↓)をPICで動かします。
https://www.amazon.co.jp/gp/product/B011IH02GA/ref=oh_aui_detailpage_o07_s00?ie=UTF8&psc=1
ArduinoのスケッチをPICに移植してみます。上手く行けば、Pic-coloでArduinoのシールドを利用する道が開けたことになります。

nice!(1)  コメント(0) 
共通テーマ:日記・雑感

PICのコード・プロテクションで混乱した [電子工作]

PICのコード プロテクション機能について調べてみました。

マニュアルには次のように記されています。
『10.2 コード プロテクション
コード プロテクションは、コンフィギュレーションワード 1 の CP ビットを使用して制御します。コード プロテクションが有効の場合、すべてのプログラム ロケーション (0000h ~ 7FFFh) の読み出しは「0」となり、その後のプログラム メモリ (0000h ~7FFFh) への書き込みは無効です。』

これとは別にフラッシュ・メモリのライト・プロテクション機能があって、そこには次のように記されています。

『コンフィギュレーション ワード 2  WRT<1,0>
16 kW のフラッシュ メモリの場合

11 = 書き込みプロテクションはオフ
10 = 000h - 1FFh は書き込み保護状態、200h - 3FFFh はEECON 制御によって変更可能
01 = 000h - 1FFFh は書き込み保護状態、2000h - 3FFFh はEECON 制御によって変更可能
00 = 000h - 3FFFh は書き込み保護状態、EECON 制御によって変更可能なアドレスはなし』

例えばCP ビットを1(コード プロテクションが有効)、WRTを11(書込みプロテクションは無効)にした場合、書き込めるのか?それとも書き込めないのか?

???

分かったのは、デバイス・プログラマ(PICkit3とか)に対してCPビットの設定は有効なのですが、実行中のプログラムに対しては効果がなく、実行中のプログラムによるコードの書き換えを防ぐには、WRTを11以外に設定しなければならないということです。

しかし、用意されたWRTの設定のうち、10ではプロテクションが小さ過ぎ、01では大き過ぎ、どうもピッタリしません。WRT設定は11(書き込みプロテクションはオフ)にして、プログラム実行中の書き込みプロテクションは、FLASH書き換えルーチンの中でソフト的に処置するしか無さそうです。




nice!(0)  コメント(0) 
共通テーマ:日記・雑感