2024年06月15日

flashrom初期化エラー

SPI Flashを高速に読み書きするツールにflashromがあります。flashromは対応しているメモリやライタが豊富なため、非常に便利です。今回はflashromを久しぶりに使用する際に初期化エラーに遭遇したため、その対処方法について紹介したいと思います。

flashromは様々なライタに対応するため、USBインタフェースのライブラリとしてlibusbを使用しています。そのため、特にWindows版のflashromにおいて、ライタの標準ドライバそのままでは下記のようなエラーが出て、初期化に失敗します。ライタの標準ドライバからlibusbに対応したドライバに変更する必要があります。


■CH341Aのエラー例
flashrom -p ch341a_spi

libusb: info [init_device] 0x45b:0x82a0 found 1 configurations but device isn't configured, forcing current configuration to 1
Couldn't open device 1a86:5512.
Error: Programmer initialization failed.


■CP2102Nのエラー例
flashrom -p developerbox

Opening the USB device at address 1-25 failed (LIBUSB_ERROR_NOT_SUPPORTED)!
Could not find a Developerbox programmer on USB.
Error: Programmer initialization failed.

■FT232Hのエラー例
flashrom -p ft2232_spi:type=232H

Unable to open FTDI device: -4 (usb_open() failed)
Error: Programmer initialization failed.

■標準ドライバからlibusbにドライバに変更する方法

⓪今回はWindows版flashromとしてこちらのバイナリを使用しました。flashromのバイナリの他にドライバを変更するツールzadig-X.X.exeも同梱されています。

@デバイス検索
flashromのバイナリに同梱されているzadig-X.X.exeを起動させ、OptionからList All Devicesをクリックします。


driver_search.png

Aリストからライタとして使用するデバイスを選択後、置き換える対象として「WinUSB」を選択してReplace Driverをクリックします。
今回はUSB-EPP/I2C CH341Aを選択しました。なお、ドライバ変更を伴うため、ライタ以外のデバイスを選択しないように注意してください。

driver_install.png

上記で数分待つと自動的にドライバ変更が完了します。初期化エラーが解消し、flashromで使用できるようになります。ただし、これまで標準ドライバで動いていたソフトウェアが逆に動作しなくなるor認識できなくなるため、flashrom以外の用途で使用する場合はドライバを標準ドライバに戻す必要があります。特にCP2102やFT232等ではWinUSBドライバに変更するとWindows側からCOMポートとして認識されなくなるため、flashrom以外の用途で使用する場合は注意が必要です。

その場合は下記のようにライタとして使用するデバイスを選択後、置き換える対象として「USB Serial(CDC)」を選択してReplace Driverをクリックしてもとに戻すことで標準ドライバに戻すことが可能です。


driver_back.png



特にややこしい点として、使用するライタによってlibusbのエラー出力が異なるため、久しぶりにflashromを使用すると何が原因なのか調査に時間を要してしまいました。今後、flashromを活用した便利なコマンド例等を紹介したいと思います。
posted by Crescent at 00:00| Comment(0) | TrackBack(0) | ナレッジ | このブログの読者になる | 更新情報をチェックする

2024年05月25日

StepからSVGへの変換

メカ設計に限らず、電気設計でも部品やコネクタ等の3Dデータから2Dデータに変換してイメージ図を作成する機会があると思います。今回はStepファイルを2Dに落とし込む際にベクトルデータのままSVGファイルに変換する方法について紹介したいと思います。

今回はStepファイルからSVGファイルへの変換としてFreeCADを使用します。

@FreeCADを起動し、Stepファイルを開きます

freecad1.jpg


A必要に応じて2Dデータとして落とし込みたい向きにビューを変更します
数字の1~6を押すと向きを簡単に変更できます

freecad2.jpg

B続いて2Dデータに落とし込むために「TechDraw」をクリックします

freecad3.jpg

C「TechDraw」のデフォルトページ挿入のボタンを押します

freecad4.jpg

DStepファイルのオブジェクトをクリックして、ビュー挿入をクリックします

freecad5.jpg

EPageをクリックし、SVGエクスポートボタンを押してSVGファイルを保存します

freecad6.jpg

なお、デフォルトでは図面の枠や背景もSVGファイルとして出力されてしまいます。もし、それらを除く場合は下記のようにtemplateをクリックし、templateを変更します。例えば、「A4_Landscape_blank.svg」に変更すると図面の枠や背景なしで出力することが可能です。

また、3Dプリンタ出力用のSTLファイル等のソリッドになっていないファイルの場合はそのまま「TechDraw」で2D平面に落とし込むことができません。ソリッド変換してから2D平面に落とし込む必要があります。最初にBで「TechDraw」をクリックする前に「Part」をクリックし、「パート」内の「メッシュから形状を作成」をクリックします。その後、生成された形状ファイルをクリックし、「パート」内の「ソリッドに変換」をソリッドに変換してからBの「TechDraw」で2D平面に落とし込んでください。


生成したSVGファイルはInkscape等で編集することが可能です。FreeCADを使った便利な機能等も今後、紹介していきたいと思います。

■追記
インストールが面倒な場合や変換ファイル数が多い場合はWebサービスを活用すると便利です。
posted by Crescent at 00:00| Comment(0) | TrackBack(0) | ナレッジ | このブログの読者になる | 更新情報をチェックする

2024年01月06日

LTspice NE555の場所

今年もよろしくお願いします。今回は覚書としてLTspiceでタイマIC、NE555のモデルの場所を紹介します。

Componentを選択後、「Misc」内にNE555があります。


NE555_1.png

Miscをクリックすると下記のリストに切り替わります。

NE555_2.png


以前からモデルが入っているはずなのに場所が分からず、活用できていませんでした。仕方なく、外部ファイルをインポートする方法で対応していましたが、Miscの中にあることが分かり、簡単にシミュレーションすることができました。横断的にモデルを検索、確認できるとより便利ですが・・・
posted by Crescent at 00:00| Comment(0) | TrackBack(0) | ナレッジ | このブログの読者になる | 更新情報をチェックする

2023年07月08日

Elecrow Partner Seller

今回は電子部品販売、PCBやPCBAサービス等を行っている深圳のElecrowの新しいサービス、Elecrow Partner Sellerについて少し紹介したいと思います。

Elecrow Partner Sellerでは自作基板等をElecrowのサイトで販売できるサービスで特にこれまでElecrowのPCBA等を利用している場合はPCBA後にそのままElecrowのサイトで自作の製品を販売することが可能です。日本ではお馴染みのスイッチサイエンスのマーケットプレイスやビットトレードワンのBTOマイプロダクトサービス等がありますが、すぐに海外前提で販売できるElecrow Partner Sellerは非常に魅力的です。

Elecrow Partner Sellerの特徴
・PCBAからそのまま販売できるため、製品を預けるための送料不要
・手数料は売上の5%
・月々の管理費や梱包費は無料
・グローバル前提で販売できる
・Paypal等で手数料を引いた売上を受け取り

他の委託販売同様に製品製造の初期投資は必要です。ただ、手数料が5%と非常に低く、輸送費用や梱包費用、管理費用が不要なのは非常に魅力的です。Elecrow Partner Sellerを始める前にElecrow側と契約書を交わす必要がありますが、そこまで煩雑なものではなく、契約後にElecrow Partner Sellerで売る製品のPCBA依頼、製品の説明や写真の登録等をElecrowのサイトから行います。


国内向けについては委託販売を複数製品で行っていますが、海外向けについては22年6月にスイッチサイエンスの海外販売が終了し、販売できない状況が続いていました。特にDigital MEMS Microphoneについては海外から購入したいという要望が多く、どのように提供するか検討していました。特にコロナ以降、海外郵送が混乱し、SAL便が利用できない等、以前よりも安く海外に電子部品を送ることが難しくなっています。

このような状況下でElecrow Partner Sellerサービスは委託販売の手段の1つとして非常に魅力的だと思い、早速、先日からDigital MEMS Microphoneの販売を開始してみました。海外向けには当ブログ含めて積極的な宣伝をしていないため、まだ販売数は微々たるものですが、今後に期待したいと思います。既に国内で委託販売等をしている方で海外問い合わせが多い製品がある方はぜひ、Elecrow Partner Sellerを選択肢の1つとして検討してみてください。
posted by Crescent at 00:00| Comment(0) | TrackBack(0) | ナレッジ | このブログの読者になる | 更新情報をチェックする

2023年04月22日

Win10セットアップ途中のオフラインアカウント作成方法

今回はWindows10セットアップ時にLANやWi-Fiを接続してしまった場合でも、途中からオフラインアカウントに切り替えて作成する方法を紹介したいと思います。マイクロソフトとしてはMicrosoftアカウントでWindows10を利用して欲しいようで、初期設定でネットワークやWi-Fiを接続した場合、強制的にMicrosoftアカウントでユーザを作成する画面となり、戻ってオフラインアカウント作成画面に戻すことができません。

このような場合に再度、OSをクリーンインストールし直してセットアップし直すという方法がありますが、なかなか時間もかかり、面倒です。また、諦めて、一旦、Microsoftアカウントでユーザを作成して後からオフラインアカウントを作成する方法もありますが、Microsoftアカウントのゴミデータが残るため、避けたいものです。


今回はLANやWi-Fiを接続してしまった場合でも、途中からオフラインアカウントに切り替えて作成する方法を紹介します。

@セットアップ途中(Microsoftアカウント作成画面等)でShift + F10 キーを押します。

Aコマンドプロンプトが表示され、下記のコマンドを打って、接続されたネットワークインターフェース名を確認します。
netsh interface show interface

Admin State State Type Interface Name
-------------------------------------------------------------------------
有効     接続  専用 Wi-Fi
有効     未接続 専用 イーサネット

B接続済のインタフェースを無効化します

 a. Wi-Fiで接続してしまった場合は
   netsh interface set interface "Wi-Fi" disable

 b. LANで接続してしまった場合は
   LANを抜くか下記のコマンドで無効化します
   netsh interface set interface "イーサネット" disable

Cコマンドでシャットダウンさせます。
shutdown -s -t 0

D再度、電源を入れて起動させるとまた、最初のネットワーク確認画面になります。LANやWi-Fi接続を選択せずに「インターネットに接続していません」や「オフライン アカウント」、「制限された設定で続行する」等をクリックして、オフラインアカウント作成に進んでください。


Eセットアップ後には無効化したネットワークを有効化してください。スタートボタンを押して、「cmd」と入力し、コマンドプロンプトを起動させます。コマンドプロンプトで下記を入力することで再度、有効化してください。
netsh interface set interface "Wi-Fi" enable
もしくは
netsh interface set interface "イーサネット" enable


今回はWindows10セットアップ時にLANやWi-Fiを接続してしまった場合でも、途中からオフラインアカウントに切り替えて作成する方法を紹介しました。Windowsはセットアップ途中でスタートボタンやデスクトップが表示できない場合であっても「Shift + F10 キー」でコマンドプロンプトを表示させることが可能です。今回はネットワークの無効化とシャットダウンに利用しましたが、その他には事前にドライバ等のファイルをUSBメモリ等からCドライブにコピーして入れておくことや、Wi-FiやLANのMACアドレスをPCセットアップ前に事前に調べる用途にも使用できます。Windows10セットアップ時に「Shift + F10 キー」でコマンドプロンプト表示は覚えておいて損はないPCのライフハックです。
posted by Crescent at 00:00| Comment(0) | TrackBack(0) | ナレッジ | このブログの読者になる | 更新情報をチェックする