nns779/px4_drv

WindowsではDriverHost_PX4.exeでfirmwareエラーのいくつかはMessageBoxで表示すべき。

nuanuaSHiThunderYO2 opened this issue · 0 comments

ただのit930x-firmware.bin置き忘れうっかりミスなのですが特定はなかなか困難でした、
・TVTest.exe →置いた
・EpgDataCap_Bon.exe →置き忘れた

こんな状況でPC再起動直後、スタートアップ&予約でEpgDataCap_Bon.exeが先に起動した場合、
BonDriver_PX4.dllは当然BonDriver::OpenTuner: no receivers available.になります。
TVTest.exeを起動した後はロードされるのでエラーがなくなります。

CreateProcessWされたDriverHost_PX4.exeのエラーなので
TVTest.exe、EpgDataCap_Bon.exeらのログからではわかりません。

DriverHost_PX4.exeのDebugビルドのコンソールログで特定しました。
[ERR] px4_winusb 1: it930x_load_firmware: request_firmware() failed. (ret: -2)
→(misc_win.c) ret = -ENOENT;
ただのit930x-firmware.binファイル有無CreateFileAで開けなかっただけでした。

px4_drv WinUSB版の
導入&安定稼働の難度を下げるために
it930x_load_firmware()内の
dev_err, dev_warnを毎回MessageBoxで表示すべきだと思います。
特に置き忘れとファイルサイズやCRCのチェック等あたりは、
DriverHost::Run()のように早い段階に在るといいように思えます。
(CreateMutexWの後あたり?)