jenprog フラッシュプログラマ

Linux, macOS, Windows で動作する Python プログラム言語で記述されたコマンドラインインタフェースのフラッシュプログラマです。シリアルポートのアクセスには pyserial を使用しています。

注意事項

本ページの記載物はオープンソースコミュニティーの成果物に基づいています。成果物のすべての著作権者、ならびに当社は、サポートや保証を行いません。コード記載のライセンス条件なども参照してください。ただし、問題報告、修正情報などは歓迎いたします。

構成

本 SDK の構成を解説します。

環境

現時点で確認している動作環境をお知らせします。

Python インタプリター (v2.7)
  ※ Windows 版は 32bit 用のみ、Active Python にて確認。
pyserial v2.6 (Windows は v2.5)

ダウンロード

jenprog ユーティリティは、TWELITE SDK の Tools/jenprog に含まれます。

Pyserial (Python シリアルポートサポート) が必要であれば、以下のダウンロードが利用できます。詳細は一時配布元を参照ください。

MONOSTICK/TWE-LITE-R 用 リセット、プログラムモードユーティリティ

MONOSTICK/TWELITE Rを使用した場合は、プログラム上からモジュールのリセット、プログラムモードの設定が可能です。

MONOSTICKでは、プログラムモードに設定するボタンが省略されているため、jenprog を使用するためには、本ユーティリティで予め MONOSTICK をプログラムモードに設定しておく必要があります。

TWELITE SDK には、Windows用のTools/TWE_PRG_MODE ユーティリティと、Linux、macOS用の Tools/jenprog/tweusb ユーティリティを用意しています。詳細は、SDK ディレクトリ内の readme ファイルを参照してください。

使用方法

インストール

1. Python をセットアップします。
※ Windows 版の場合は python の実行パスに注意してください。(bash などを実行する場合は、cygwin 付属の python が実行される場合があります)

2. pyserial をセットアップします。

■ Linux, macOS の場合は、管理者権限で以下のコマンドを実行します。
# python setup.py install

■ Windows は、ダウンロードした exe ファイルを実行します。     

弊社提供の SDK の Tools/jenprog に格納済みです。改めてのインストールは不要ですが、SDKを導入しない機材へのインストール時には参考にしてください。

3. jenprog を適当なフォルダに展開します。
※ 現時点ではインストール用の調整をしておりません。

4. 展開したフォルダ中の jenprog を実行可能にし、実行パスを設定してください。
※ Windows でも bash 上で同様の作業を行えます。ただし、そのままでは、SDKのcygwin bashにはpython が含まれており、こちらが実行されるため動作しません。

$ cd {展開フォルダ}
$ tar xvfz {アーカイブ名}.tar.gz
$ cd {展開フォルダ}/jenprogxxx/
$ chmod +x jenprog
$ PATH=`pwd`:$PATH

Windows の Jennic BASH Shell を使う場合は、以下の内容のスクリプトを /usr/bin に格納するとよい。
PATH に /usr/bin が含まれていれば、このスクリプトが実行される。
#!/bin/sh
/cygdrive/c/Python27/python 'c:\Jennic\Tools\jenprog\jenprog' $*

FLASH 書き込み (jenprog)

1. USB-UART ケーブル (FTDI製チップ) をPCに差し込みます。必要ならドライバ(http://www.ftdichip.com/Drivers/VCP.htm) を組み込みます。

3. 差し込んだデバイス名を確認しておきます。以下の例では /dev/ttyUSB0 となります。
※ 通常のシリアルポートは /dev/ttyS0 といった割り当てになります。VMWare, VBox などのバーチャルマシンを利用する場合、USBが不安定な場合など設定によりホストマシンのシリアルポートが通常のシリアルポートとして割り当てることが可能です。

■ Linux の場合
 # dmesg |grep tty
 ...
 usb 2-2.1: FTDI USB Serial Device converter now attached to ttyUSB0
■ macOS の場合
 # ls /dev//dev/tty.usbserial*
 /dev/tty.usb.serial-FTXXXXXX
■ Windows の場合は、デバイスマネージャで対応の COM ポートを探してください。
 

4. 動作例です。

  # jenprog -h
... 利用法の表示 ...

  # jenprog -t /dev/ttyUSB0 -s
    flash: ST M25P40
    mac: 0x001bc501207008ec license: 0xffffffffffffffffffffffffffffffff
... MAC アドレスの表示 ...

  # jenprog -t /dev/ttyUSB0 -m 11223344AABBCCDD
  erasing sect #0 ...
  MAC/Lic was updated as below...
    flash: ST M25P40
    mac: 0x11223344aabbccdd license: 0xffffffffffffffffffffffffffffffff

  # jenprog -t /dev/ttyUSB0 SmplTag_Coord_JN5148_200_0.bin
  writing...
    0%..10%..20%..30%..40%..50%..60%..70%..80%..90%..done - 5.79 kb/s
  writing mac address and key...done

  OK: firmware is successfully programmed.
... ファームウェアの書き込み ...

  # jenprog -t /dev/ttyUSB0 -y SmplTag_Coord_JN5148_200_0.bin
  erasing sect #0 ...
  writing...
    0%..10%..20%..30%..40%..50%..60%..70%..80%..90%..done - 5.78 kb/s
  writing mac address and key...done
  verifying...
    0%..10%..20%..30%..40%..50%..60%..70%..80%..90%..done - 9.69 kb/s

  OK: firmware is successfully programmed.
... ファームウェアの書き込み+べリファイ ...

コンペア

一度書き込んだファームウェアが正しく書き込まれたかを検証する機能です。

  # jenprog -t /dev/ttyUSB0 -z firmware.bin
... firmware.bin との比較 ...
  

 

TWELITE
TWELITE
DIP
DIP
UART
UART
CUE
CUE
ARIA
ARIA
PAL
PAL
STICK
STICK
spot
SPOT
R3
R3
STARTER KIT
STARTER KIT
アンテナ
アンテナ
製品一覧
製品一覧

モノをつなぐ無線

モノをつなぐ無線
モノの無線
導入事例
導入事例
選び方
選び方
小型
小型
省電力
省電力
多数接続
多数接続
コントロール
コントロール
モニタリング
モニタリング
ソフトウエア
ソフトウエア
親機
親機
中継機
中継機
子機
子機
始め方
始め方

評価開発環境

STAGE
STAGE
STAGE APP
STAGE APP
interactive
アプリ設定
アプリ書換
アプリ書換
プログラミング
プログラミング