2011年3月4日金曜日

BHT-100シリーズ用 COMポートケーブル自作

BHT-100シリーズ用のCOMポートケーブルを自作する

なぜ、自作したかといえばメーカー品を購入すると異常に高いうえに構造が単純で半田付けがちょっとでも経験があれば簡単に作成できるため。

 まず、構成部品を調達した。

パーツ購入先:共立エレショップ


品番
品名
数量
単価
646313 L型2.5φステレオプラグ付ケーブル/1.8m #12
1
150
398146 D-subコネクタ ソケット 9pin SC-09S
1
100
39814W  D-subカバー インチネジ 9pin 灰 PH-09G
1
157
*** 合計 ***
407


配線はBHTのマニュアルに従い次のように行なった。
BHT100Q COM CABLE

完成品はこんな感じです。
IMG_0450
IMG_0452

接続するとこんな感じ

コネクタ位置が悪いのでこのままCUにセットして充電することができない(泣)

2011年3月3日木曜日

NexusOne Gingerbreadで変わった物

昨日まではブックスと言うアイコンがありましたが、今日スクリーンショットを撮ろうと思ったら消えてました 残念

ただし、このブックスというアプリ アイコンはあるのですがクリックするとインストールされていませんと表示される謎のアイコンでした。

なので、他に気になるアイコンなど
まずは、ダウンロード
b2
なんでしょこれ?Gingerbreadで増えたと思いますがもしかしたら、それ以前にもあった?
クリックしてもたいしていい情報も表示されないし・・・

次に、ブラウザ
b1
これはアイコンの雰囲気が変わりましたね。起動するソフトは同じですが。

そして、いいなと思ったのが電源使用量の項目
sc3
設定→端末情報→電源仕様量でここまでくるのは今までどおり
しかし、ここで一番上の電池使用時間と書かれているところをクリックすると
sc2
と、グラフが表示されどんな使われ方をしているのかわかるようになっているのがいいです。

2011年3月2日水曜日

Nexus OneにGingerbread(version 2.3.3)がきた

今週からOTAされてくるという話だったGingerbreadがやっと私のNexusOneにも配信されてきました。
Floyoの時ほど待ち遠しさはなかったけれども、やっぱり新しいのが来るのはうれしいものです。

N1 233
アップデート後も日本語フォントはそのまま残ってくれたみたいでよかった。
標準のフォントはところどころ変で見づらいからイヤ!!


ちょっとつかったけど、あまり変わらないような

と思いつつマーケットを見ると!! おや???

これは!昔のインターフェイスに戻ってるし!!

いやぁーーー!!!


3/3追記
いつの間にかマーケットは普通に戻ってました。

BHT-100Qを卓上ハンディターミナルのように活用

 
すでに、サポート終了でリプレース対象になっているBHT-100Qが数台あまってきている。

状態は悪くないため、このまま捨ててしまうには少々もったいない。

そこで、卓上ハンディターミナル(GT10Qとか)の変わりにならないか検証を行なった。


必要な物
  • BHT-100QのCOMポートにつなぐケーブル
  • BHT-100Qのコントロールソフト
 
【ケーブル】
ケーブルはDENSO WAVEから購入すると高い(8000円ぐらい?)ので自作した
自作の内容については、次回まわしで・・・

【ソフト】
ハンディターミナル用のソフトは次のような単純なプログラムを作成した。
PCとHTとの通信条件は

通信パラメタ

伝送速度(bps) 9600
垂直パリティ なし
文字長 8 ビット
ストップビット長 1 ビット
とした。


'==================================================================
'
' BHT010 BHT100Q like GT10Q  for BHT100Q
'
'==================================================================
'
'2009.06.05 オリジナル
'2011.03.02 外部公開で問題になりそうな箇所を修正

    On Error Goto errorProg:


'+===========================================================================+
'|  変数の定義                                                               |
'+===========================================================================+
    const pgmno$ = "010"                    'プログラム管理番号
    const ver$ = "110302.0001"              'バージョン

    private tempkey$

    const BarFile = 1                       'バーコードファイル番号
    const CPORT = 3
    const CSET = "COM2:9600,N,8,1"


'+---------------------------------------------------------------------------+
'|                                                                           |
'|  【関数名】  inpbar$(f.no%, bar$, keylist$)[255]                          |
'|  【機能】    バーコード読み取りを待つ                                     |
'|                デバイス番号      f.no%                                  |
'|                    バーコードタイプ  bar$                                 |
'|                    終了キーリスト    keylist$                             |
'|               読み込んだバーコード                                        |
'|                                                                           |
'|  【処理内容】                                                             |
'|    ・バーコード入力を待ち、そのバーコードデータを戻り値とします。         |
'|    ・指定されたキーが押された場合、そのキーデータを戻り値として終了       |
'|      します。                                                             |
'|                                                                           |
'+---------------------------------------------------------------------------+

    Function inpbar$(f.no%, bar$, keylist$)[255]
        private barlen%
        private wk$[255]
        if bar$="QM" Then
            open "BAR:f" as #f.no% code "Q","M"
        else
            open "BAR:f" as #f.no% code bar$
        end if
        while 1
            wait 0,&h03
            If (Inp(0) And &h02) = &h02 Then    '// CODE39あり(Eof(#portBar%) = 0)
'                Print "24=";loc(#f.no%),eof(#f.no%)
                wk$ = Input$(loc(#f.no%), #f.no%)    '// 全データ
                beep
                inpbar$ = wk$
                close #f.no%
                exit Function
            endif
            If (Inp(0) And &h01) = &h01 Then    '// KeyBoard
                wk$ = inkey$
                if instr(1,keylist$,wk$) > 0 then
                    inpbar$ = wk$
                    close #f.no%
                    exit Function
                endif
            endif
        wend
    end Function



'+---------------------------------------------------------------------------+
'|  タイトルバーの表示                                                       |
'+---------------------------------------------------------------------------+
    Sub DispTitle(msg$)
        private strTemp$[100]
        '                1234567890123456789012
        strTemp$=msg$ + "                      "
        strTemp$=left$(strTemp$,22)
        screen 1,1 : locate 1,1 : print strTemp$;
        screen 1,0
    end Sub


'+===========================================================================+
'|  初期設定                                                                 |
'+===========================================================================+
    
    screen 1,0

    Print "system cold start"



    Print "BHT-CTL";pgmno$;" ";ver$ : Print
    Print "ComPort設定:";
    Print CSET : print

    Print "complite!!"

    beep 3
    Print
    Print "Press any buttom."
    wait 0,&h01
    tempkey$ = inkey$


'+===========================================================================+
'|  メインメニュー                                                           |
'+===========================================================================+
    private ibar$[255]
main:
    beep 1,1,1,1
   '【画面表示】
    cls
    DispTitle(" バーコード読み込み") : print
    
    while 1
       ibar$ = inpbar$(BarFile,"QM","0123456789")    'QRバーコードor[0123456789]キーを待つ
        if len(ibar$) = 1 then '読み取りが1文字の場合はキーと判断する
            beep 1,1,1,1
        else
            open CSET AS #CPORT
            print #CPORT,ibar$
            close #CPORT
            print len(ibar$);",[";ibar$;"]"
        end if
    wend



'==========================================================
'   エラー処理
'==========================================================
errorProg:
    screen 0,0
    Print
    Print "BHT";pgmno$;" ";ver$ : Print
    Print    "Err="; Hex$(Err);" "
    Print    "Erl="; Hex$(Erl);" "
    tempKey$    = Input$(1)
    Resume Next

結果は、良好!!
ただ、少しだけ問題はあり。

  • 行末が0x0Dではなく 0x0D 0x0A なので、PC側の受信ソフトも多少の変更で対応
  • 充電のためにCU7001へ置くときにCOMポートケーブルが邪魔

2011年3月1日火曜日

3DS 3月6日入荷分 Amazonで復活したが・・・ 

10分ほど前に見たときには3月6日入荷分が復活して購入可能でしたが、すでに完売。


Amazonは定期的に復活するので、こまめにチェックしたいところ

また、ウワサでは毎週結構な数が量販店にも入るとか


まぁ~~ はっきり言えば、マリオとかゼルダとかキラーソフトがないのです。3DSには!


デル株式会社

最近人気の投稿