いろいろ試す49

●OpenOCDでマルチコアデバッグするやり方
竹本様よりコメントでお題をいただいたのでトリプルコア搭載のLPC4370ボード、
LPC-Link2を使って実践してみました。


まずねむいさんのOpenOCDバイナリの/tcl/targetlpc4370_lpclink2_spifi.cfgを
編集します。デフォルトはm4コアしか有効にしていませんがm0subを有効にします。
,鉢△良分が編集した部分です。
m0appは電源投入直後は寝ているので今回は省きます。
なお順番が重要でm4コアを必ず先頭に持ってきておきましょう。


まずOpenOCDを起動したらm4コアにアタッチします。insightでつなぎます。
insightではTCPポート3333のm4コアがつながります。

openocd -s C:/Devz/ARM/OCD/tcl -f interface/ftdi/jtagkey2.cfg -f target/lpc4370_lpclink2_spifi.cfg -c "reset halt" -c"arm semihosting enable"
C:/Devz/ARM/insight/bin/arm-none-eabi-insight --eval-command="target remote localhost:3333" --eval-command="tbreak main" --nx main.elf
Open On-Chip Debugger 0.11.0+dev-00365-g9a9e9e2c6 (2021-08-31-11:31)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
Info : auto-selecting first available session transport "jtag". To override use 'transport select '.
Info : clock speed 2000 kHz
Info : JTAG tap: lpc4370.m4 tap/device found: 0x4ba00477 (mfg: 0x23b (ARM Ltd), part: 0xba00, ver: 0x4)
Info : JTAG tap: lpc4370.m0_APP tap/device found: 0x0ba01477 (mfg: 0x23b (ARM Ltd), part: 0xba01, ver: 0x0)
Info : JTAG tap: lpc4370.m0_SUB tap/device found: 0x0ba01477 (mfg: 0x23b (ARM Ltd), part: 0xba01, ver: 0x0)
Info : lpc4370.m4: hardware has 6 breakpoints, 4 watchpoints
Info : lpc4370.m0_SUB: hardware has 2 breakpoints, 1 watchpoints
Info : starting gdb server for lpc4370.m4 on 3333
Info : Listening on port 3333 for gdb connections
Info : starting gdb server for lpc4370.m0_SUB on 3334
Info : Listening on port 3334 for gdb connections
Info : JTAG tap: lpc4370.m4 tap/device found: 0x4ba00477 (mfg: 0x23b (ARM Ltd), part: 0xba00, ver: 0x4)
Info : JTAG tap: lpc4370.m0_APP tap/device found: 0x0ba01477 (mfg: 0x23b (ARM Ltd), part: 0xba01, ver: 0x0)
Info : JTAG tap: lpc4370.m0_SUB tap/device found: 0x0ba01477 (mfg: 0x23b (ARM Ltd), part: 0xba01, ver: 0x0)
Warn : Only resetting the Cortex-M core, use a reset-init event handler to reset any peripherals or configure hardware srst support.
Warn : VECTRESET is not supported on this Cortex-M core, using SYSRESETREQ instead.
Warn : Set 'cortex_m reset_config sysresetreq'.
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0xfffffffe msp: 0xfffffffc
target halted due to debug-request, current mode: Thread
xPSR: 0xc0000000 pc: 0x555d36cc msp: 0x675f04e0
Info : JTAG tap: lpc4370.m4 tap/device found: 0x4ba00477 (mfg: 0x23b (ARM Ltd), part: 0xba00, ver: 0x4)
Info : JTAG tap: lpc4370.m0_APP tap/device found: 0x0ba01477 (mfg: 0x23b (ARM Ltd), part: 0xba01, ver: 0x0)
Info : JTAG tap: lpc4370.m0_SUB tap/device found: 0x0ba01477 (mfg: 0x23b (ARM Ltd), part: 0xba01, ver: 0x0)
Warn : Only resetting the Cortex-M core, use a reset-init event handler to reset any peripherals or configure hardware srst support.
Warn : VECTRESET is not supported on this Cortex-M core, using SYSRESETREQ instead.
Warn : Set 'cortex_m reset_config sysresetreq'.
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0xfffffffe msp: 0xfffffffc
target halted due to debug-request, current mode: Thread
xPSR: 0xc0000000 pc: 0x555d36cc msp: 0x675f04e0
semihosting is enabled

Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : accepting 'gdb' connection on tcp/3333
Info : JTAG tap: lpc4370.m4 tap/device found: 0x4ba00477 (mfg: 0x23b (ARM Ltd), part: 0xba00, ver: 0x4)
Info : JTAG tap: lpc4370.m0_APP tap/device found: 0x0ba01477 (mfg: 0x23b (ARM Ltd), part: 0xba01, ver: 0x0)
Info : JTAG tap: lpc4370.m0_SUB tap/device found: 0x0ba01477 (mfg: 0x23b (ARM Ltd), part: 0xba01, ver: 0x0)
Warn : Only resetting the Cortex-M core, use a reset-init event handler to reset any peripherals or configure hardware srst support.
Warn : VECTRESET is not supported on this Cortex-M core, using SYSRESETREQ instead.
Warn : Set 'cortex_m reset_config sysresetreq'.
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0xfffffffe msp: 0xfffffffc
target halted due to debug-request, current mode: Thread
xPSR: 0xc0000000 pc: 0x555d36cc msp: 0x675f04e0, semihosting
Info : Found flash device 'win w25q80bv' (ID 0x001440ef)
Info : New GDB Connection: 1, Target lpc4370.m4, state: halted
Warn : Prefer GDB command "target extended-remote :3333" instead of "target remote :3333"
Error: JTAG-DP STICKY ERROR
Error: Failed to read memory at 0xfffff000

接続時のログになりますがTCPポート3333に加えてインクリメントされた値の3334が追加
されます。この3334がm0subのコア用のポートとなります。

お次はgdbを別口で起動します。 target extended-remote localhost:3334とします。


m0用のプログラム走らせてないのでsticky-errorは出てますがm0コアには
しっかりアタッチできております!

こんな感じでマルチコア当たり前になった昨今ですがOpenOCDを駆使してバンバン
デバッグしていきましょう!


●KYF39でSBIネット銀行のアプリ"スマート認証NEO"をインストールする
ねむいさんは元来よりSBIネット銀行を利用しております。
利用状況に応じて振込手数料が無料になる回数が増えるスマートプログラムなるものが
あるのですが今年の4月に大改悪しやがりましてスマホでSBIのアプリを入れてスマート
認証NEO
なるものを導入しないと自動的に最低ランクになってしまう事態となりました!!

まぁ素直にスマホにインストールすればと思いでしょうが、ねむいさんが持っている通信
端末KYF39は旧世代の人間向けのガラホでこれは普通の方法ではSBIアプリをインストール
できません!!FUCK!!

というわけでこいつに無理やりSBIアプリをインストールしてスマート認証NEOを設定する
方法を紹介します。windows10環境下で行います。
ここから先は自己責任でお願いします!
(注:私も手探りで行いましたので内容は適宜増強していきます)

1.APKをダウンロードする
まずはAPKをダウンロードしないと話になりません。
KYF39はgoogleplayが使えないのでapkcomboというサイトからapkをダウンロードします。
https://apkcombo.com/ja/zhu-xinsbinetto-yin-xing/jp.co.netbk/

それとSMS認証突破するためにSMSforwarderが必要なのでこれも落とします。
https://apkcombo.com/ja/sms-forwarder-auto-forward-sms-to-pc-or-phone/enstone.smsfw.app/

2.APKインストールまで
すみません超手抜きですがとりあえずこちらの方のわかりやすい手順に倣います
KYF35をお使いですがandroidなのでやってることは一緒です。

SBIアプリとSMSforwarderのインストール順は特に気にしなくてもよいですが
設定は必ずSMSforwarderから行います。

3.SMSforwarderの設定を先に行う
SMS認証のメッセージを自分のPCのメールアドレスから出すようにフォワードさせます。
メールの送付先は送信に使ったメールアドレスにしておきましょう。

なんでこんなめんどくさいことするかというとKYF39デフォルトの+messgaeで見ようとするとなんと今までやったSBIスマート認証NEOの設定がキャンセルされたことに
なってしまい、先に進めなくなるからです!!!!

4.SBIスマート認証の設定を行う
ログイン名とパスワード、認証用PINコードの設定を行います。
SMSforwarderがちゃんと機能していればPCのメールアドレスにsms認証の内容が
来ますのでそれを打ち込み認証完了です!!!



SBIの管理画面からもちゃんとスマート認証NEOが登録されています。
できた…長い戦いだった…


なお、残念ながらKYF39からは残高確認ができずエラー画面となりますが
肝心の振込操作の時の認証操作については何も問題はないのでご安心ください。


そんなわけで時代から取り残されるとこんな不便な目に遭遇するというほとんどの
方にとってはどうでもいい旧世代型レプリロイドのぼやきでした。かしこ。

Go to top of page