title0a.gif

Memorandumの小部屋

本ページは金銭授受を伴う行為を含むAuctionや商用Web Pageからの無断リンク・無断参照を禁じます。
無断リンク・無断参照が判明した時点で然るべき処置をとらさせて頂きます。


とことんGP−102!!! ちから技で サンプリング間隔を1秒に戻しましょ。

(おまけ:ロジアナのプロトコルアナライザを使ってみました。)

 

 「G−PORTER GP−102」を使い込んで経験した不具合などをまとめた 「とことんGP−102!!!」を2020年3月に整理・公開しましたが、その続報です。 今回は「とことんGP−102!!!」の「5.Log Rule 1秒間隔設定時に1秒間隔のロギング不可。 (対処方法不明、再現未確認)」の対処方法をまとめました。 その際に「LAP−C(16064) (M-04426)」のプロトコルアナライザ機能を使ってみました 。 多分、使い方を忘れるであろうと、忘備録として利用方法を書き留めました。

 なお、下記文中では「秒」表示を「秒」と「s」の2とおりの表記が混在しています。 「秒」に統一したかったのですが、「G−PORTER GP−102」表示で「s」を利用していることもあり、2とおりの表記を混在させたままとしました。 この点、ご了承願います。 

 


− 目 次  −

1.Log Rule 1秒間隔を1秒間隔にもどしましょ。

1.1 はじめに

1.2 FLASHメモリの入手

1.3 新品FLASHメモリ取付け

1.4 データ書込み済みFLASHメモリ取付け

1.5 FLASHメモリ交換前後のサンプリング間隔割合


2.ロジアナのプロトコルアナライザを使ってみました。

2.1 FLASHメモリ波形観測

2.2 プロトコルアナライザ機能の設定方法
 


1.Log Rule 1秒間隔を1秒間隔にもどしましょ。

1.1 はじめに

  「G−PORTER GP−102」を使っていると、いろいろ不具合が生じたり、「G−PORTER GP−102」をウエストポーチ に入れたまま思いっきり洗濯するなどして最終的に「G−PORTER GP−102」を4台も購入していました。 「とことんGP−102!!!」 公開時点では3台目まででしたが、3台目を使い込んでいると「5.Log Rule 1秒間隔設定時に1秒間隔のロギング不可。」の現象が発生したため4台目を追加購入しました。 その4台目もとうとう2秒から3秒間隔の サンプリングしかできなくなりました。 やはり、この現象は「G−PORTER GP−102」が潜在的に有している現象のようです。

 

G−PORTER GP−102」のサンプリング間隔として1s・5s・10s・30s・60sのいずれかを選択します。

【 サンプリング間隔設定 】

 

不具合現象発生時のサンプリング間隔は2秒間隔となっています。

【 CanWay CSVログデータ例(不具合現象発生時) 】

 

 今回の対策の効果を数値的に確認するために過去分のデータを探し出して経時的にどのように変化しているかデータ整理してみました。 「G−PORTER GP−102」は4台ありますが、1台目はUSB接続できなくなってデータ を抽出できなくなったため対象外としました。 2台目〜4台目をNo.2・No.3・No4と識別してデータ整理しました。

 経時変化の確認として、横軸に抽出したデータのログデータ累積個数としました。 ただし、保存していたデータのうち、電源をオフし忘れて電池電圧低下するまで サンプリングした無駄データを削除、軌跡位置がとんでもない位置にジャンプしている場合にデータを削除、、「とことんGP−102!!!」 の「2.ログデータの消失 」などの現象によりデータが保存されていないなどの場合はデータが残っていません。 このような要因により、 ログデータ累積個数は実際の個数より数%程度少なめの数値となっていると推測されます。

 縦軸は、サンプリング間隔時間を1s・2s・3s・4s・5s・6s・7s・8s・9s・10s以上の10区分に分けて、それぞれの区分に該当するデータ数の個数を求め、それぞれの 個数の100分率を求めて縦軸数値としました。 そのうち、1s・2s・3sの割合結果を下記に掲載します。

 

【 「G−PORTER GP−102」(No,2)のサンプリング間隔割合 】

 

【 「G−PORTER GP−102」(No,3)のサンプリング間隔割合 】

 

【 「G−PORTER GP−102」(No,4)のサンプリング間隔割合 】

 

 上記グラフにおいて、1sデータが0%に急変してる場合があります。 これは「G−PORTER GP−102」をFactory Resetしたり、動作の安定化を試みるためにファームウエアを書替えた後に、 サンプリング間隔をデフォルトの5sから1sに再設定するのを忘れた場合のデータです。 また、1sの割合が低下後に90%以上に回復している現象が見つかりました。 これは今回の データ整理で初めて認識した現象です。 回復した原因は不明です。 少なくともFactory Resetやファームウエア書替えでは回復できないことは確認しています。

 上記結果のように(何故か)1s間隔に回復する可能性はあるのかもしれませんが、「G−PORTER GP−102」を 確実に(意図的に)回復させるためにFLASHメモリの交換を試みることにしました。

 

1.2 FLASHメモリの入手

 「G−PORTER GP−102」に実装されているデバイスは表面の印刷は削 られておらずく読み取りが可能です。 FLASHメモリはMACRONIX INTERNATIONAL CO., LTD.(MXIC社)のMX25L3206Eでした。 このデバイスはDigiKeyなどのプロ向けECサイトを使わなくても一般向けのECでも購入できるようです。 今回はAmazon.co.jpを利用して入手しました。

 

現在はこのWebページは見つかりません。

【 購入当時の商品ページ 】

 

【 商品送付封筒外観 】

 

1袋10個入りで届きました。

【 FLASHメモリ(MX25L3206E)単品外観 】

 

1.3 新品FLASHメモリ取付け

 FLASHメモリ(MX25L3206E)は早めに入手していたものの実際に交換作業を開始する機会に恵まれず、今回やっと作業を開始しました。 交換作業は現在利用を中止している「G−PORTER GP−102」(No,2)で試すことにしました。

 まず、「G−PORTER GP−102」基板からFLASHメモリを取り外しました。 試しに、この状態で通電してみるとLCDバックライトは点灯するもののLCD表示はしませんでした。

【 FLASHメモリ取り外し時外観 】

 

【 FLASHメモリ取り外し時 バッテリ通電時LCD状態 】

 

 その後、新品のFLASHメモリを取付けました。

 

左:新品、右:取り外し品(向きが逆になっています。)

【 交換前後のFLASHメモリ 】

 

 取り付け後バッテリ通電で立ち上げました。 残念ながらLCD上に「No Resources」と表示をして正常に立ち上がりませんでした。、立ち上りはしませんでしたが、 意図的な表示をしていることからCPUは動作している(プログラムを実行している)と思われました。

 

【 FLASHメモリ取り付けた状態で電源オンした状態 】

 

 「No Resources」状態から抜け出すために一旦バッテリを取り外して再接続しました。 その後、USB接続をするとスイッチの間の青色LEDが点滅しました。 

 

【 USB接続状態(青色LED点滅) 】

 

 この状態で電源オンボタン(画像上側タクトスイッチ)を押すとUSB接続表示となりました。

 

【 USB接続状態 】

 

 この状態で「G−PORTER GP−102」の仮想ドライブを確認すると下記のように通常の正常初期状態となっていました。 またファイルの読み書きも可能でした。 さらには、ファームウエアのアップデートも可能でした。

 

WinTree Ver 1.8     

ファイル/フォルダ名                         バイト数 属性   更新日付 更新時刻
───────────────────────────────────────
:\ <  >
GP-102                                     < Dir > ----
Activities                              < Dir > ----
NewFiles                                < Dir > ----
POIs                                    < Dir > ----
Settings                                < Dir > ----
   │ └ Settings.dat                              15 ---A 1601/01/02 15:00:00
Trips                                   < Dir > ----
Device.xml                                1,117 ---A 1601/01/02 15:00:00
───────────────────────────────────────
6 個のフォルダと 2 個 1,132 Byte のファイルがあります。
ディスク空き容量は 3,082,240 Byte (99.7 %) あります。 

タイムスタンプがとんでもない日付となっていますが、この原因は不明です。

【 仮想ドライブ ファイル構造 】

 

 この状態からUSB接続を中止してバッテリ給電状態で「G−PORTER GP−102」を立ち上げましたが、残念ながらLCD上に「No Resources」を表示する現象は変わりませんでした。

【 USB接続中止後の状態 】

 

 正常に立上げはできないものの、少なくともプログラムは動作しているようです。  推測ですがFLASHメモリに書き込まれている「とあるデータ」を読込み。正しく読んでいるかを判定しているようです。 そうなると新品のFLASHメモリを取付けただけではダメなようです。  どのデータを探し出すのは今回の目的ではないため、それならばと「取り外したFLASHメモリ」のデータを「新品のFLASHメモリ」に書き込んで、この書き込みFLASHメモリを取付けることにしました。

 

1.4 データ書込み済みFLASHメモリ取付け

 FLASHメモリのデータの読み出しと書き込みできるFLASHメモリレータ/ライタが必要となります。 当初は自作を覚悟していましたが、安価で容易に入手できる「CH341A MiniProgrammer」が使えることがわかり早速入手しました。

 

【 「CH341A MiniProgrammer」利用例 】

 

 当初、上記画像のようにFLASHメモリをクリップケーブルで挟んで読み書きしていました。 FLASHメモリを何度か交換するうちに、クリップ部分でFLSASHメモリを逆接続、ゼロプレッシャーICソケット部分で逆接続をすることでFLASHメモリを破損することがありました。 そのため、「IC変換ソケット【SOP→DIP8】SOP8(200mil)」を入手して 、これを用いました。 FLASHメモリの取付けに多少のコツは必要ですが、格段にFLASHメモリの交換・取付けが容易になりました。

 

【 「CH341A MiniProgrammer」+「IC変換ソケットSOP8(200mil)」 】

 

 このプログラマ―構成で「CH341A MiniProgrammer」用ソフト「CH341A.exe」を用いて読み書きしました。

 

【 「Detect」ボタン押した後のデバイス読み出し 】

 

 「CH341A.exe」にはデバイスを自動で検出すると思われる「Detect」ボタンがありました。 このボタンをクリックしてデバイスを選択して、取り外したFLASHメモリのデータを読込み、新品のFLASHメモリに書き込みをしました。 その後、書き込みをした新品FLASHメモリを基板に取付けて通電しました。

 

【 書き込みFLASHメモリ取付け後の動作状態 】

 

 「No Resources」は表示せずに起動したと思われましたが正常なLCD表示をしなくなりました。 もしかしてLCD表示器を破損したのかともて気になりました。 他の基板と比較しても目視上の問題点は見つかりません。 また、「No Resources」は正常に表示できていたこと、上記動作時の表示 内容が通電ごとに異なることからLCD表示器に原因があるとは思えませんでした。 そういえば「Detect」ボタンで選択されやデバイスのNameが「MX25L3205D」となっていました。 そこで、今度は「Chip Search」でマニュアル選択で正しい「MX25L3206E」を選択しました。 この状態で再度読み書きをして通電をすると、やっと正常に起動してくれました。

 

【 デバイス読み出し時画面例 】

 

【 「MX25L3206E」選択で書き込みをしたFHASHメモリ取付け状態 】

 

【 「First Use」LCD表示 (正常表示) 】

 

【 「衛星補足状態」LCD表示 (正常表示) 】

 

 しばらく衛星補足を続けてロギングしたデータを確認したところ1s間隔のサンプリングとなっていました。 これでFLASHメモリ交換及びサンプリング間隔1秒に回復することに成功しました。

FLASHメモリ交換後のサンプリング間隔が1秒間隔に回復しています。

【 CanWay CSVログデータ例(FLASHメモリ交換後) 】

 

 この結果を踏まえて「G−PORTER GP−102」No.3、「G−PORTER GP−102」No.4もFLASHメモリ交換作業をしました。 以下に「G−PORTER GP−102」No.4の交換作業状態を掲載します。

 

【 「G−PORTER GP−102」(No, 4) FLASHメモリ交換前(基板外観) 】

 

【 「G−PORTER GP−102」(No, 4) FLASHメモリ交換前(FLASHメモリ部) 】

 

【 「G−PORTER GP−102」(No,4) FLASHメモリ取り外し 】

 

【 「G−PORTER GP−102」(No, 4) FLASHメモリ交換後(FLASHメモリ部) 】

 

【 「G−PORTER GP−102」(No, 4) FLASHメモリ交換後(基板外観) 】

 

1.5 FLASHメモリ交換前後のサンプリング間隔割合

 FLASHメモリ交換後にログデータを収集して、FLASHメモリ交換前後のサンプリング間隔割合を調べました。 その結果を下記に掲載します。  なお、横軸のログデータ累積個数はFLASHメモリ交換時点を中心にして拡大表示しています。

 

横軸5920付近はサンプリング間隔5s、10sでロギングをしています。

【 「G−PORTER GP−102」(No,2)のサンプリング間隔割合 】

 

【 「G−PORTER GP−102」(No,3)のサンプリング間隔割合 】

 

【 「G−PORTER GP−102」(No,4)のサンプリング間隔割合 】

 

 上記結果より、FLASHメモリを交換することでサンプリング間隔が1秒に回復したことを確認できました。 思い立って(FLASHメモリを購入して)から回復手段を確認するまで年単位の時間を要しました。  とはいえ、今回の結果より、今後ともFLASHメモリの交換は継続的に必要なようです。

 

 目次に戻る   Memorandumの小部屋 へ戻る   ホームページへ戻る

 


2.ロジアナのプロトコルアナライザを使ってみました。

2.1 FLASHメモリ波形観測

 今回はFLASHメモリの寿命に関わる現象と推測します。 そのため、「G−PORTER GP−102」 ではFLASHメモリにどの程度の頻度でアクセスしているのか気になりました。 そこでロジックアナライザ「LAP−C(16064)」を使って波形観測をしました。 その際、専用プログラム「ZEROPLUS−LAP−C」のプロトコルアナライザの機能を利用することで読み書きの動作を抽出・把握することができました。 残念ながらプロトコルアナライザのコマンドをトリガにして波形観測する機能を無料で利用できないため基本的な動作しか確認・記録できませんでしたが、アクセスの概要は観測することができました。

 動作中に「G−PORTER GP−102」 のFLASHメモリの信号観測をする際に当初はクリップケーブルを利用することを 考えていましたが、クリップケーブルにちょっとした外力が加わると、簡単にFLASJメモリからクリップが外れるようでした。 測定に際して「G−PORTER GP−102」 のタクトスイッチ操作が必要となるためクリップケーブルに外力は必ず加わります。 せっかくクリップケーブルを入手したものの、結局はFLASHメモリのリードに電線を直接ハンダ付けして、この電線にロジックアナライザのプローブを接続することにしました。

 

右側の灰色がロジックアナライザ用のクリップです。

【 FLASHメモリ 信号取出し状態(部品面外観) 】

 

【 FLASHメモリ 信号取出し状態(FLASHメモリ部外観) 】

 

【 FLASHメモリ 信号取出し状態(LCD表示側外観) 】

 

 上記の方法で波形観測した結果を下記に掲載します。 最初にサンプリング間隔として1s・5s・10sとしたときのFLASHメモリのアクセス状態を確認しました。

 

上図をクリックすると拡大図を閲覧できます。

【 サンプリング間隔1s時 】

 

上図をクリックすると拡大図を閲覧できます。

【 サンプリング間隔5s時 】

 

上図をクリックすると拡大図を閲覧できます。

【 サンプリング間隔10s時 】

 

 次に、FLASHメモリのRead時とWrite時の波形を下記に掲載します。 なお、Write動作をするタイミング・間隔を確認することができませんでしたので寿命の推定までは至りませんでした。 ちなみに1サンプル当たりの記録データは23バイトです。 FLASHメモリのデーターシートによればPage baseは256bytes、書き込み時消去回数はtypical値100,000回です。 

 

上図をクリックすると拡大図を閲覧できます。

【 FLASHメモリ Read時 】

 

上図をクリックすると拡大図を閲覧できます。

【 FLASHメモリ Write時 】

 

2.2 プロトコルアナライザ機能の設定方法

 今回の観測に利用したプロトコルアナライザの機能の設定方法を忘備録として下記に掲載します。(操作方法を忘れた際の対応用です。)

  1.  「LAP−C(16064)」のプローブのグループ化をします。 専用プログラム「ZEROPLUS−LAP−C」の左側に表示されている信号(A0〜B7)から6 個の信号を選択します。 なお、この段階では選択する順番は任意で構いません。

A0,A5、A4,A1,A6,A2の順番で選択しました。

【 グループ化する信号の選択 】

 

  1.  6個の信号選択した状態でマウス右クリックをしてプルダウンメニューを開き「Group into Bus」を選択します。 そうするとグループ化信号名称「Bus1」にまとめられました。  

 

【 「Group into Bus」選択 】

 

  1.  「Bus1」のエリアでマウス右クリックしてプルダウンメニューを開き「Bus Properties」を選択すると 「Bus Properties」ウィンドウが開きます。

 

【 「Bus1」エリアでマウス右クリックした状態 】

 

【 「Bus Properties」選択 】


 

  1.  下段のオプションボタン「Protocol Decoder」をクリックしてリストボックスのなかから「ZEROPLUS LA Quad SPI MODULE」を選択します。
      

【 「Bus Properties」ウィンドウ表示 】

 

  1.  オプションボタン「Protocol Decoder」の右側にある「Configuration...」ボタンをクリックします。 クリック後、 「PROTOCOL ANALIZER Quad SPI」ウィンドウが開きます。

【 「PROTOCOL ANALIZER Quad SPI」ウィンドウ 】
 

  1.  Pin Assignmentフレーム枠内でピン番号とSPI信号の割当を設定します。 この枠の表示はとても紛らわしくなっています。 コンボボックス部分で選択される信号名称がSPI信号の割当になります。  フレーム枠灰色背景部に表示された信号名称は、(1)で選択した順番で信号(A0〜B7)が割り当てられています。 なお、今回の測定ではフレーム枠灰色背景部に 表示された信号名称は「CS:」=「A0(1番ピン)」、「CLK:」=「A5(6番ピン)」、「SI/IO0:」=「A4(5番ピン)」、「SO:IO1:」=「A1(2番ピン)」、「WP/IO2:」=「A6(7番ピン)」、「Hold:」=「A2(3番ピン)」を意味します。 ここで選択した信号とSPI信号の割当を設定します。
      

  2.  Protocol Analyzer Propertyフレーム枠内のプルダウンメニューから「MMIC」と「MX25Lxx」を選択します。 主たる設定はこれで終わりです。

【 「Manufacturer:」選択 】

 

【 「Device Selection:]選択 】

  

  1.  参考までに残りのタブを選択した場合のウィンドウを掲載します。 必要に応じて設定します。

 

【 「Packet」タブ選択時 】

 

【 「Data Format」タブ選択時 】

 

【 「Register」タブ選択時 】

 

 目次に戻る   Memorandumの小部屋 へ戻る   ホームページへ戻る


End of This Page.