ともの技術メモ

趣味の電子工作などの記録。時にLinuxへ行ったり、ガジェットに浮気したりするので、なかなかまとまらない。
RSS icon
  • スマートフォン用タッチペン

    投稿日 2016年 1月 26日 コメントはありません

    とあるアプリケーションが指では操作しにくく困っていた時に、知り合いからタッチペンを借りたらなかなか良かったので購入してみようと思いました。

    ・・・が、電気屋さんで売っているタッチペンは1,500円〜4,000円くらいもするのでおいそれと手が出ません。そこでまず100円ショップのタッチペンを何本か購入して比較してみることにしました。

    比較対象は以下の4点。

    ダイソータッチペン4種

    いずれもダイソーで売っているものです。左から順に、

    • 「タッチペンボールペン付」
      細めのベールペンの後ろ側がタッチペンになっているものです。パッと見のデザインはなかなかいい感じ。ボールペンは黒一色でボール径1ミリ。
    • 「導電繊維使用タッチペン&2色ボールペン」
      1つ目より一回り大きい外観に2色ボールペンが入っています。1つ目同様に後ろ側がタッチペンになっていて、ここに導電繊維を使っているので「なめらかなペン滑り」というのが売りのようです。ペン本体もパール調の塗装が施されていてなかなかです。
    • 「タッチ&ボールペン」
      これは先端部分がタッチペンになっているのですが、穴が開いていて、ノック式のボールペンがそこから出てきます。これだけはダイソーの完全なプライベートブランド商品ではなくプラチナ万年筆株式会社の社名がパッケージに入っています。
    • 「スマートフォンストラップタッチペン」
      イヤホンジャックに挿して持ち運べるタイプのタッチペンです。見るからにチャちいです。

    タッチペンとしてのファーストインプレッションは、「導電繊維使用タッチペン&2色ボールペン」はタッチすると2点に認識されるケースがあるのか、かなりの頻度でズームしてしまいます。他の3点はタッチペンとしては基本的には使えそうです。もっとも、2台で試してみるとペン同士の差よりも2台での違いのほうが大きいかも?と感じます。もう少し使い込んでみて、感想を追加しようかと思います。また、外で手袋をした状態だとどうかというのも試してみたいと思います。


  • GPS動かず・・・

    投稿日 2016年 1月 24日 コメントはありません

    室内だったため測位できなかったと思われたGPSモジュールを外に連れだしてみました。

    IMG_3106s

    こんな感じで車のダッシュボード上に置いてみたのですが、結局測位できず・・・。アンテナが悪いのか、モジュールが悪いのかわかりませんが、ダメでした・・・。

    <追伸>

    よくみると、GPSのアンテナの裏側がシールドされています。パッシブアンテナでもシールドが要るもんなんだろうか?ひょっとして、アクティブアンテナなんじゃなかろうか?
    ・・・・ということで、3.3Vを47uHのマイクロインダクタを通してアンテナの芯線に供給してみました。結果、多少表示が変わりましたが、測位には至らず。外は寒いので手早くやってしまったので、もう少し放置すると変わるのかもしれません。


  • 中華タブレット用GPSを作ってみました

    投稿日 2016年 1月 24日 コメントはありません

    以前購入した中華Androidタブレットがあるのですがが、(WiFiタブレット全般に)GPSが付いていません。そこで、外付けのGPSユニットを作ってみました。

    IMG_3104s

    外付けGPSについて調べてみると、PL2303をUSB-UARTコンバータとして使用しているUSB接続GPS機器をAndroidで使うための「You Are Here GPS」というソフトがあることがわかりました。そこから察するにNMEA-0193フォーマットでUARTにデータを吐くGPSモジュールをPL-2303に接続すれば良さそうです。ただ、You Are Here GPSを動かしてみたところ、シリアルの速度は4800bpsか9600bpsしか選べません。ここはGPSモジュール選定の際の要注意事項です。

    実際の回路はGPSはaitendoでGM-242iというモジュールとGPSHMX-039というパッシブアンテナ、USB-TTL2303-5PというUSB-UART変換モジュールを購入して、小さな基板上に5VからGPSの電源の3.3Vを生成する三端子レギュレータとバックアップ用のコイン形リチウム電池を載せました。

    まずは、LinuxMintをインストールしたPCに接続してGM-242iのデフォルトの通信速度である38400bps、ビット長8、パリティなし、ストップビット1ビットで接続します。ソフトはmoserialを使用しました。

    $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30 
    $GPGSV,1,1,00*79 
    $GPGLL,,,,,,V,N*64 
    $GPRMC,,V,,,,,,,,,,N*53 
    $GPVTG,,,,,,,,,N*30 
    $GPGGA,,,,,,0,00,99.99,,,,,,*48 
    $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30 
    $GPGSV,1,1,00*79 $GPGLL,,,,,,V,N*64 
    $GPRMC,,V,,,,,,,,,,N*53 
    $GPVTG,,,,,,,,,N*30 
    $GPGGA,,,,,,0,00,99.99,,,,,,*48 
    $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30 
    $GPGSV,1,1,00*79 $GPGLL,,,,,,V,N*64 
    $GPRMC,,V,,,,,,,,,,N*53 
    $GPVTG,,,,,,,,,N*30 
    $GPGGA,,,,,,0,00,99.99,,,,,,*48 
    $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30 
    $GPGSV,1,1,00*79 $GPGLL,,,,,,V,N*64 
    $GPRMC,,V,,,,,,,,,,N*53 
    $GPVTG,,,,,,,,,N*30 
    $GPGGA,,,,,,0,00,99.99,,,,,,*48 
    $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30

    こんな感じのGPSメッセージが流れているのが確認できますので、以下のコマンドをASCIIで送信して速度を9600bpsに変更します。

    $PUBX,41,1,0007,0003,9600,0*10

    変更したら、moserial側も一旦切断して速度を9600bpsに変更して再接続します。引き続きHEXで以下のUBXコマンドを送って、コイン形リチウム電池でバックアップされるBBRAM領域に設定を保存します。

    B56206090D0000000000FFFF0000000000001731BF

    B5 62 06 09でCFG-CFGコマンド(コンフィギュレーションのクリア、保存、読み出し)を指定します。続く「0D 00」がリトルエンディアンなので0x000Dで長さ13を示しています。続く「00 00 00 00」=0x00000000でクリアするものはなし、「FF FF 00 00」=0x0000FFFFですべて保存、「00 00 00 00」=0x00000000でロードするものはなし、次の17で保存できるデバイスすべてを指定しています。

    参考まで、UBXコマンドのチェックサムを付加・算出するPythonスクリプトを置いておきます。

    #!/usr/bin/env python
    # coding: utf-8
    
    #              CLS  ID   LENGTH    clearMask           saveMask            loadMask            deviceMask
    CMDSAVE     = [0x06,0x09,0x0D,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x17]
    
    cmd = CMDSAVE
    CK_A = 0
    CK_B = 0
    STR = "B562"	# HEADER
    for x in cmd:
    	CK_A = CK_A + x
    	CK_B = CK_B + CK_A
    	STR = STR + format(x,'02X')
    STR = STR + format(CK_A & 0xff,'02X') + format(CK_B & 0xff,'02X')
    print STR

    これで電源をOFFしても電源投入時点から9600bpsで動作します。この状態で中華タブレットに接続し、 You Are Here GPSを動作させます。設定で通信速度を9600bpsにセットして「connect」を押すとNMEA-0193メッセージが1秒周期で表示されます。
    カタログスペックでは衛星捕捉-142dBm、トラッキング-159dBmの感度があることになっていますが、残念ながら鉄筋コンクリートの室内では測位できないようです(スマートフォンでは何とか衛星捕捉から可能なようなのですが・・・)。近いうちに外で測位させてみたいと思います。


  • Raspbianにmoserialをインストール

    投稿日 2016年 1月 19日 コメントはありません

    なんだかんだで忙しくて、気づけば11月末から更新してないですね。

    それはそうと、忘れないようにメモです。

    Linux環境でシリアル通信をするものに対するテスト・デバッグではmoserialが便利だと思っているのですが、ポータブルな環境で扱おうと思ってRaspberry Pi2で動かすべく、Raspbianにインストールしてみました。

    RaspbianのSynapticで検索してもmoserialは出てこないので、ソースからコンパイルするしかなさそうです。

    まず、環境整備として、Synapticで

    • gnome-common
    • libglib2.0-dev
    • yelp-tools
    • libgtk-3-dev
    • valac

    (とその依存ファイル)をインストールします。順に、

    • gnome-autogen.shがない
    • glib-gettext >= 2.2.0が要る
    • yelp.m4がない
    • ‘gtk+-3.0’パッケージがない
    • valacコマンドがない

    の対策になります。パッケージをインストールしたら、

    $ git clone git://git.gnome.org/moserial
    $ cd moserial
    $ ./autogen.sh --prefix=/usr
    $ make
    $ sudo make install
    $ moserial

    でgitでソースコードを引っ張ってきて、コンパイル、インストール、実行になります。(実際には引っかかりながら必要なパッケージをインストールしていったのですが)

    Raspbian環境ではUARTはUSBに接続したいわゆるUSBシリアルしかでてこないようです。(ハードウェアピンにはなかったっけ?)

    もしmoserialをインストールする方がいて、その参考になれば、ということで残しておきます。


  • Raspberry Pi Zeroが登場

    投稿日 2015年 11月 29日 コメントはありません

    すでにいろんなところで記事になっていますが、新しいRaspberry Piが登場しました。その名も「Raspberry Pi Zero」。

    Raspberry Pi Model Aを1GHzにクロックアップして小型化したようなものです。CPUはBCM2835なのでRaspberry Piと同じです。メモリは512MBでやはりRaspberry Pi(の後期型)と同じ。つまりRaspberry Piのエコシステムはそのままです。

    rsz_img_4054-500x349

    価格はなんと5ドル。今の為替だと600円くらいですね。ネットワークがついてないとはいえ、フルシステムのLinuxが動くワンボードマイコンが5ドルで手に入る時代になってしまいました。すごいものです。


  • 基板が届きました

    投稿日 2015年 11月 9日 コメントはありません

    やっと基板が届きました。10月11日発注で11月7日着なので、ほぼ4週間ですね。

    ENVELOPE

    前回は箱で届いたのですが、今回は封筒で届きました。よくよく見ると、差出人が「CHANGI AIRFREIGHT CENTRE」になっています。CHANGI=シンガポール・チャンギ国際空港です。たくさんの荷物(発送物)をシンガポールまでまとめて運んで、シンガポールから日本へ発送しているんでしょう。Tracking Numberが決まってからシンガポールを出るまでに10日かかっているので、梱包や送り状の貼付けは中国で行い、その後シンガポールまでは船便なのかもしれません。

    <次回の参考にすべくTracking情報を追加しました>

    日本郵便でのトラッキング:

    Tracking

    https://www.singpost.com/ でのトラッキング(トラッキングナンバーを入力して、表示されるステータスでトラッキングナンバーのところに張られたリンクを辿ると下記詳細が表示されます):

    singapost

    結局、「Information Recieved」というのは中国国内で受け付けした、という情報なのでしょうかね・・・。

    PACK

    こんな風にパッキングされて、プチプチ付きの封筒に入ってきました。

    BOARD

    右下の部分にCADにはない記号が入っています。以前は発注時に自分でオーダー番号をシルク面に入れないといけなかったのですが、今は勝手に空いているところに入れてくれるようです。(余計なものが勝手に入るのはけしからん、という考えもないでもないですが、オーダー番号が入るのは定尺サイズから安く基板を作るための方策でしょうし、自分で入れる手間を省いてくれるんだから歓迎ですね。)

    出来はホビーユースとしては十分なレベルですが、気づいたところはこんなところです。

    • C1の枠のシルクが切れかかってます。
      裏側も寸法ギリギリの枠のシルクが入ってなかったりします。もう少しマージンが要るのかもしれません。
    • スルーホールにかかったシルクは欠損してます。
      基本的には設計で重ねないようにすべきだと思って作業していたのですが、いくつか重なっちゃってます。勝手にその部分は抜いているのか、抜けてしまうのかわかりませんが、問題ありません。
    • 取り付け穴用の穴は内面がスルーホールメッキされていませんでした。前回は内面がスルーホールメッキされていました。でも、CAD上は区別がないはずなんだけど、どうなってるのか謎です。
    • 写真の1枚は左上に傷が入ってますが、実使用上は全然問題ない範囲です。
    • ヘッダピン用の穴が小さいのではないか?
      既存のライブラリがそのまま使えそうなので、そのまま使ったのですが、確認漏れです。やっぱりいくら綺麗にCADで表示されても実物が来ないと気づかない点ってありますね。
    • いまさら思い出したけど、I2C接続の液晶を載せられるようにするのを忘れてた・・・

    さて、次は部品実装です。


  • ESP32のβ版がもうすぐリリース!?

    投稿日 2015年 11月 7日 コメントはありません

    Twitterの情報(Espressifの中の人)によると、EspressifからもうすぐESP8266の次の製品が出るようです。

    ざっと書いてあることは、こんな感じ。(意訳です。英語力ないので違ってても責任持てませんw)

    我々は過去1年間ESP32と呼んでいる新しい製品の開発に全力を傾けてきた。皆さんのコメントを聞いて、細心の注意を払いながらそれらをリストアップし、最新のチップでは大部分を満足できるようベストを尽くした。皆さんの役に立てるよう、こんな機能をこのチップに搭載した。

    1. より速くなったWiFi。ビデオストリーミングができる144.4MBbps。また、新しいRFアーキテクチャを採用し、アプリケーションの回路がよりシンプルになるようにした。
    2. Bluetooth LE対応。レガシーも(もちろん)サポート。
    3. 160MHzで動作するデュアルコアのパワフルなTensilica L108プロセッサ。
    4. 低消費電力。Deep Sleep中でもADC変換などが可能。
    5. 周辺機能盛りだくさん。DMA付きのインタフェースで、タッチセンサ、ADC、DAC、I2C、UART、SPI、SDIO、I2S、RMII、PWM。申し訳ないがUSBはない。
    6. RAMたくさん。現時点で〜400kB。
    7. セキュリティ。AESとSSLのハードウェアアクセラレータ内蔵。
    8. 簡単になったAPI。

    我々は開発者のサポートに全力を尽くすことを約束する。その1つとして我々が求めているのは、どのようにしたらツールチェーンを改善できるか、ということだ。我々はどんな意見でも歓迎する。
    βテストはまもなく開始する。開発者向けのアプリケーションボードはこの先2週間以内に発送する予定だ。(ただ)限られた数しかチップがないので我慢して欲しい。合計200枚しか送れない。
    最後に1つ、我々は情熱と才能のある開発者を探している。Espressifには興奮するような開発がたくさんある(ハードもソフトも)・・・製品に搭載するしないに関わらず。我々は常に応用分野を広げようとしており、我々に加わってくれる才能(ある人)をもっと必要としている。もし興味があるなら連絡して欲しい。我々は世界中から才能ある人が上海の私達に加わってくれることや、世界のどこからでも貢献してくれることを歓迎する。
    我々の製品を気に入ってくれることを期待している。応援してくれる全ての人たちに感謝します。

    ・・・だそうです。

    いや、すごいですね。盛りだくさんです。RMIIがあるので、PHYをつければEthernetも付くということですね。(無線LANコンバータやアクセスポイントを構成できるってことですね)
    自分が気になるのは、

    1. 技適の取れたモジュールがいつ出てくるか?
    2. Arduino IDE対応はどうなるのだろうか?
      (やっぱりArduino IDEはお手軽ですからね〜)
    3. UbuntuやDebianでのクロスコンパイル環境構築が容易になるといいな。できれば Debパッケージで提供されたりapt-get/aptitude/synapticでインストールできたりすると嬉しいんだけどなぁ。
    4. ツールチェーンも重要ですが、サンプルプログラムもたくさん用意されるといいな。
    5. 電池でどこまで動くかなぁ?
    6. 高速なデータI/Fは何を使うんだろう?SDIOなのかなぁ?
    7. いくら位なんだろうか?

    というところでしょうかねぇ。用途はたくさんありそうです。まさしく、「WiFi Everywhere!」「IP Everywhere!」という感じになりそうです。


  • 日本に入ってきている?

    投稿日 2015年 11月 5日 コメントはありません

    Singapore Postでのトラッキングによると、

    singpost

    ということで、日本の郵便局まで届いているようです。この記述を信じるなら、最寄りの郵便局と読めないこともないのですが、単に日本に入ってきただけ、とも読めます。(どっちでしょう?)

    一方、日本郵便のサイトでは「国際交換局から発送」のままです。まあ、まだ来ないところを見ると、通関中なんですかね?


  • やっと日本で検索できるようになった

    投稿日 2015年 11月 1日 コメントはありません

    Singapore Postで検索できるようになっても、なかなか実際の荷物の動きが見えないんですが、やっとシンガポールを出たようです。

    Screenshot-17

    シンガポールから日本に向けて(かな〜?)発送されたようです。
    同じ情報は日本郵便のサイトでも確認できました。(Information Recievedの時には日本郵便のサイトでは確認できませんでした)

    Screenshot-18

    さて、いつ来るんでしょうか(^^;。


  • 部品を買ってきました

    投稿日 2015年 10月 27日 コメントはありません

    FusionPCBからTrackingできるようになったよ、という通知がとっくに来ているのですが、なかなか荷物状況の確認ができるようにならず・・・。で、ようやくSingapore Postのトップ画面左側にある「Track Item」で「Information Received」になりました。でも、物理的な荷物の引受とは関係ないんだそうで(^^;。

    まあ、焦ってもしょうがないですので、部品を買い集めました。

    PARTS

    基本的には秋月で手に入るものばかりで基板設計したので概ね揃いました。