2019年12月07日

FTDI2232を用いたJTAG通信 Machxo2書き込み

Lattice社のFPGAの開発環境はインストールパッケージが1GB前後と軽いのが特徴です。それもあってLattice社を好んで使っています。また書き込みツールがFTDIの2232Dなどでそのまま純正書き込みソフトで書き込むことが可能なため、高価な書き込みツールが不要なのも特徴です。
※Machxoシリーズに対応した開発環境Diamond、iCE40に対応したiCECubeともにそれぞれ1GB前後です

今回はLattice社のFPGA、Machxo2(LCMXO2-256HC-4TG100C)の書き込みについて少し紹介します。

秋月のサイトにもMachxo2の書き込み方法(PDF)について紹介されていますが、安定した書き込みができず少し苦労しました。



Machxo2のJTAGポートは弱いプルアップやプルダウンがありますが、安定化のための十分でないため、外部に別途プルアップやプルダウンが必要です。

TDO、TDI、TMSはプルアップ、TCKはプルダウンですが、抵抗値もポイントです。すべて4.7kohmでは安定した書き込みができませんでした。

評価用ボードの回路を確認すると理由が分かりました。TDO、TDI、TMSはプルアップが4.7kohmというのは同じでしたが、TCKのプルダウン抵抗が違いました。純正の評価ボードのTCKは2.2kohmでプルダウンしていました。



jtag_pull.jpg


純正の評価ボードに合わせてTCKを2.2kohmでプルダウンすると安定して書き込みできることが分かりました。
ただ、正直、Machxo2(LCMXO2-256HC-4TG100C)を書き込む際には2232DよりもTinyFPGAプログラマが簡単です。
TinyFPGAプログラマ専用のソフトウェアでの書き込みになりますが、書き込み速度も高速で便利です。
TinyFPGA AX2 Boardでなくても書き込みできました。
なお、Machxo3は識別コードが異なるため、TinyFPGAプログラマ専用のソフトウェアそのままでは書き込みできませんでした。
posted by Crescent at 00:00| Comment(0) | 電子部品 | このブログの読者になる | 更新情報をチェックする

2019年10月19日

電子ペーパーモジュールV2

Waveshare製1.54inch e-Paper Module電子ペーパーモジュールがアップデートされて、互換性がなくなったようです。

◼︎ハードウェア
概ね互換性があるようです。No.4がNCに変更、L1インダクタンスが若干変わっています。
他は同じため、部品実装を未実装、部品の変更のみで基板は今までと同じ基板を利用できそうです。

V1.jpgV2.jpg
データシートから抜粋

◼︎ソフトウェア
イニシャライズシーケンス、描画コマンドが大きく異なるようです。
残念ながらコードの互換性はなさそうです。実際にV1コードでV2のイニシャライズは出来ず、逆も出来ませんでした。それぞれで対応したコードを実行する必要があります。

V1、V2の最新のコードはこちらのgithub上からダウンロードして使用します。wiki上のサンプルコードはV1のみで19年10月時点ではV2コードがなく、メンテナンスがされていないようです。


◼︎e-Paper I2C モジュール
スイッチサイエンスで販売中のe-Paper I2C モジュールについても次のロット以降はV2のバージョンになる予定です。ソフトウェアについてはV1と互換性がなくなるため、モジュール本体にV2のシールを貼り付けて出荷する予定です。V2対応のサンプルコードについては準備中です。詳細やアップデートについては引き続きe-Paper I2C モジュールのgithubサイトでお伝えします。

posted by Crescent at 17:27| Comment(0) | 電子部品 | このブログの読者になる | 更新情報をチェックする

2019年10月05日

販売製品一覧

販売中のCrescent製品を紹介します。
※2019年10月更新

■ProjectionBall IoT (Version 5)
 ProjectionBallはベクター方式の簡易レーザープロジェクタで、
 簡単な図形や英数字などを描画できます。
 Running Electronics様で販売中です。

■ProjectionBall (Version 3)
 ProjectionBallはベクター方式の簡易レーザープロジェクタで、
 簡単な図形を描画できます。
 クラウドファンディングサイト、
 きびだんごのショッピングサイトで販売中です。完売。
 ※WiFi通信、任意文字列や時計の描画機能に非対応

■磁気エンコーダモジュール
 AMS社製磁気エンコーダAS5048Aを2.54 mmピッチへ変換する基板です。
 専用の磁石を同梱。

■磁気エンコーダピッチ変換基板
 AMS社製磁気エンコーダAS5048AやAS5047Dなどを
 2.54 mmピッチへ変換する基板です。
 基板のみでエンコーダIC、磁石は同梱されていません。

■STM32F303CC搭載DIP変換基板
 Nucleo等の評価ボードが発売されていない48ピンIC STM32F303CC
 LQFP48を2.54 mmピッチへ変換した基板です。

■STM32F373CC搭載DIP変換基板
 Nucleo等の評価ボードが発売されていない48ピンIC STM32F303CC
 LQFP48を2.54 mmピッチへ変換した基板です。
 スイッチサイエンスで販売中

■アナログ出力MEMSマイク変換基板
 搭載した、ピッチ変換モジュールです。ピン間隔は2.54 mm。
 可聴音から超音波まで(100 Hz〜80 kHz)の幅広い帯域を
 高感度にセンシングすることが可能です。
 超音波センサや超音波通信などに使用可能です。


■アンプ内蔵アナログ出力MEMSマイク変換基板
 50倍のアンプを搭載した、ピッチ変換モジュールです。
 ピン間隔は2.54 mm。
 可聴音から超音波まで(100 Hz〜80 kHz)の幅広い帯域を
 高感度にセンシングすることが可能です。
 超音波センサや超音波通信などに使用可能です。

■デジタル出力MEMSマイク変換基板
 搭載した、ピッチ変換モジュールです。ピン間隔は2.54 mm。
 可聴音から超音波まで(100 Hz〜80 kHz)の幅広い帯域を
 高感度にセンシングすることが可能です。
 超音波センサや超音波通信などに使用可能です。

■LattepandaArduino変換基板
 LattepandaのLeonardoポートをArduino Leonardoピッチへ
 変換する基板です。Arduinoのシールドが使えるようになります。
 表面実装部品のみ実装済みです。
 ピンヘッダ、ソケット、リセット用のタクトスイッチは別売です。

■PS/2 USB逆変換アダプタ
 USBキーボードをPS/2化する変換アダプタです。
 標準ドライバで動作可能なUSBキーボードをPS/2キーボードとして
 使用できるように変換します。
 プログラミング専用こどもパソコンIchigoJamやサーバマシンなど、
 PS/2キーボードのみをサポートしている場合に本製品を使用して、
 USBキーボードをPS/2化します。

■e-Paper I2Cモジュール
 e-Paper I2CモジュールはWAVESHARE製200x200, 1.54inch
 E-Inkディスプレイを搭載したモジュールです。WAVESHARE製200x200,
 1.54inch E-InkディスプレイはSPI接続ですが、配線の容易性を実現するために
 SPI I2CプロトコルブリッジIC SC18IS602Bを搭載してI2C化しています。

■nanopi neo/neo2 拡張ボード
 FriendlyElec製NanoPi Neo/Neo2の拡張ボードです。
 ピンヘッダ上にあるUSB2ポート、I2Cポート(Grove)のコネクタを
 搭載しています。標準USBの1ポートで足りないという場合やGrove
 で拡張したいという場合に最適です。
 また、I2Cポートには純正NASキットと同じRTC DS1307が搭載しています。

■Digital Video Shield
 SPIからDVI出力(HDMIコネクタ)するArduinoシールドです。
 FTDI製ビデオエンジンBT816とDVIトランスミッタTFP410を搭載しています。

■ロードスイッチ変換基板
  Vishay製超低漏洩電流ロードスイッチSiP32431を搭載した変換基板です。
 1.5 V~5.5 V、最⼤1.4 Aまでの負荷の電源管理が可能です。
 FETを使⽤する場合に⽐べ、漏れ電流が10 pAと非常に⼩さいことが特徴です。

■ISO 14443 Type A RFID付きEEPROMモジュール
 デュアルインタフェースEEPROM M24SR64とアンテナを搭載したI2C Groveモジュールです。
 64k bit EEPROMにI2CとRFIDの2つの通信で内部のデータにアクセスできます。
 EEPROM M24SR64はISO 14443 NFC/RFID tag NFC forum Type 4 に対応しています。

■BLE5モジュール変換基板
 SiliconLabs製BLE5モジュールBGX13Pを搭載した変換基板です。
 BLE5の制御ソフトウェアが予め書き込まれているため、容易にBluetooth通信を使⽤できます。
 3.3 Vシリアル通信(UART,初期115200 bps)で外部機器からパラメータを設定できます。
 TELEC(技適)認証済 工事設計認証番号 209-J00282

■WiFiモジュール変換基板
 SiliconLabs製WiFiモジュールAMW037を搭載した変換基板です。
 WiFi制御ソフトウェアが予め書き込まれているため、容易にWiFi通信を使⽤することができます。
 3.3 Vシリアル通信(UART,初期115200 bps)で外部機器からパラメータを設定することが可能です。
 TELEC(技適)認証済 工事設計認証番号 201-180092




posted by Crescent at 00:00| Comment(2) | 電子部品 | このブログの読者になる | 更新情報をチェックする

2019年09月21日

電子メモパッド

数年前に購入した電子メモパッドが電池交換しても消えなくなってしまったため、リプレースしました。壊れたボードを折角なのでばらしみました。

構造は思った以上にシンプルで導電性のフィルムの間に特殊な液体を挟んだ構造でした。片側は透明な電極でもう片側は黒色のシート電極となっていました。液晶ディスプレイ同様の構造です。

一度、シートを上がすと気泡等が入ってしまい、復元は困難でした。破棄目的以外では分解厳禁です。また、液体は手で触れないように注意。液晶ディスプレイの多くはガラスで挟まれたモジュールとして組み込まれているため、モジュールとして取り外し可能です。一方、電子メモパッドは粘着テープで2枚のフィルムを挟んで止めているだけの構造のため、シートを剥がすと気泡が簡単に入ってしまいました。

IMG_0068.JPG

端に金網状のリボンケーブルで基板と接続されていました。

IMG_0069.JPG

薄っすら緑色に見えるのがフィルム間の特殊な液体です。液体自体に色はなく、シートが偏光板として機能することで発色しているようにみえると思われます。


ペンの加圧で特殊な液体の分子の並びが崩れて、緑色として見えます。電極に電圧をかけることで特殊な液体の分子を整列させ、緑色が削除されます。

IMG_0075.JPG



昇圧回路はIC型式が記載されておらず、詳細不明ですがオシロスコープで削除時の波形を観察すると±50Vで300msecの周期で2.5回繰り返し処理しているようです。昇圧回路はHブリッジのような構成のようです。非動作時はHブリッジ負荷のインピーダンスが高く、GNDの取り方が悪いため、非動作時のノイズが大きくなったと思われます。

wave2.jpg

一般的な液晶ディスプレイに比べてバックライトや画素の処理回路、カラーフィルタなどがないため非常にシンプルです。昨今の電子メモパッドの安さに納得です。
posted by Crescent at 00:00| Comment(0) | 電子部品 | このブログの読者になる | 更新情報をチェックする

2019年09月14日

Sipeed MAix Bit Suit ドライバ設定

巷で話題のAIモジュール、K210を搭載したエッジデバイス開発ボード、Sipeed MAix Bit Suit を購入してみました。CPUにRISC-Vを採用したAIモジュールです。Suitという名前の通り、開発ボードだけでなく、カメラと2.4インチ液晶もセットで3000円前後と驚くほど格安です。カメラと液晶だけでも3000円くらいしそうな感じです。

公式サイトの情報通りに使ってみようとしましたが、USBシリアルデバイスとしてうまく認識できず、少し苦労したので覚書としてSipeed MAix Bit Suit ドライバ設定方法を紹介します。

IMG_0066-8.jpg

公式サイトの情報通りでは下記のようにCH552チップを搭載したモデルの場合はFT2232ドライバが必要とあります。すでにFTDI製のFT2232は使用したことがあり、ドライバはインストール済でした。
「For the boards with a CH552 chip, to get the USB serial port, FT2232 drivers need to be installed.」

Sipeed MAix Bit Suitに搭載したCH552のUSB挙動を調べるとUSBデバイスとして動作していないことが分かりました。CH552はUSB機能を持った汎用マイコンのため、CH552にUSBシリアルのファームが書き込まれていないようです。

出荷時に書かれているはずのファームはこちらからダウンロードできました。
ch552_dual_ser_new.bin
をダウンロードして、CH552の書き込みツール、WCHISPToolで書き込みます。

WCHISPToolをインストール、起動させ、先ほどのファームを書き込みます。

CH552.jpg

タブで「8bit CH55X series」を選択し、Chip Model「CH552」を選択します。
User Fileに先ほどのファームを選択します。デフォルトのファイル拡張子選択はHexになっているため、BINに変更してからファイルを選択します。その後、ダウンロードボタンを押して書き込みます。

書き込み後は自動的にFTDIのドライバが読み込まれて、シリアルCOMポートとして認識されました。FTDI製のチップでないのにFTDI製のシリアルとして認識させるところがチャイナクオリティーを感じます笑

CH552-2.jpg

Tera Termでボーレート115200に設定しました。

CH552-4.jpg

起動後、RESETボタンを押してMicroPythonの動作を確認することができました。

CH552-3.jpg


シリアルが認識されたので、時間を見つけて今度はK210自体のファームの書き換え等をしてみたいと思います。
posted by Crescent at 00:00| Comment(0) | 電子部品 | このブログの読者になる | 更新情報をチェックする