susutex’s blog

自転車、電子工作、プログラミングとかについて書くかもしれないブログ

Maker Pi RP2040のモーター用電源をUSBから取りたくない

久々に秋葉原に寄った際にM5Stackと、RP2040の使用されたMaker Pi RP2040というボードを買った。
Maker Pi RP2040はモータードライバや1cell LiPo用の回路がついていて簡単なロボットを動かすのにすぐ使えそうと思っていた。

www.cytron.io
ボードの使い方をいろいろ調べていたが、電源が3つ(USB/LiPo/VIN)ありどれをどうつないでよいのかよくわからない。


上記webサイト内資料から持ってきた電源の回路図。
上半分が3つの電源を選択する部分で、3つのうち電圧の高い電源がダイオードORで自動で選択されるようになっている。
またVBUS以外は逆流防止にFETを使用しているのでFETをONにできれば順方向電圧が小さくなる。ただし二つ以上の電源が供給された場合は二つの電源の電圧差によってはFETがONにならない場合がありそう。

問題は、LiPo(VBAT)とUSB電源(VBUS)を同時につなぐとVBUSからすべての電源が供給される。モーター回すと多分PCのUSBポートの電源供給が止まる。
ファーム書き換えなどはSWDでも行えそうだがPythonコンソールの操作はUSBで行う必要があるので絶対にUSBをつながないという選択肢は難しく、USB接続中に何かの拍子にこれが発生して嫌な挙動をする可能性がある。ボード上にUSBからの給電を遮断する機能はない。

解決策としては以下のようにいくつか検討したが最後のが一番良さそうなのでこれで運用することに。
最後の方法をとってもモーターを回すとノイズのためか仮想シリアルが不安定になる。ターミナルSW側を接続しなおすと直る。

・VINに5V以上を供給する
電圧上限は6Vらしいので供給電圧範囲が5~6Vとやや狭い。
Q4のFETをONにしようとするともっと厳しくなる。

VMに直接5V以上を供給する
電源供給範囲は相変わらず狭いが、VBUSとの電位差が小さくてもQ4をONできるかどうかを気にしなくてよくなる。
電源スイッチで電源をOFFにできなくなる問題と、VMにつないだ電源供給回路に逆接保護がない場合はそちらが何かの理由で電圧低下した際にVBUSから電源が流れ込んで破壊する問題がある。

・D3を外してVBUSを切断する
この方法を取ろうかと思ったが、実はVBUSからVBATに充電回路経由で出力されているためあまりこれもよくなさそう。Q1/Q4がONにできなくなる可能性も残る

・供給側でVBUSを遮断する
VBUSを切断したケーブルを用意するか、USBコネクタの足上げorパターンカットをする必要がある。
手持ちの電源供給スイッチ付きのUSBハブが本当に電源供給のみを遮断するタイプで、スイッチを切っても通信は問題なくできたので工作なくこれができた。
回路的にUSBハブへの電源逆流の心配もなさそう。

GoPro Maxを使う(3)撮影中の充電への対応

susutex.hatenablog.com
続き

アクションカムの撮影時間は一般的に2時間程度と自転車で使うには貧弱で、ましてGoPro Maxのバッテリは1時間ちょっとしか持たない。
そのためモバイルバッテリの接続が必須だと思っている。

だがいざ届いて開封したGoProの充電ポートは防水のための堅牢な蓋の下に隠れていた。下調べ不足。

防水がそこまでいらなければ蓋は外すこともでき、そうすれば充電しながらの撮影も可能。
だが、バッテリを固定するのは貧弱なばねだけになるので振動でバッテリが発射される可能性が高い。
昔はGM-2という名前の充電ポートに穴の開いた蓋が売っていたらしいが、今は売っていない。
レビューを見ると脱落したとか書いてあるので弱すぎて売るのをやめたのだろう。


バッテリが発射されさえしなければいいので3Dプリンタで簡単な抑えを作り、余ってるサイコン固定用のシリコンバンドで固定するようにした。

充電ケーブルは接触による故障を防ぐためにマグネット式のケーブルを使用している。


HDR-AS300で嫌というほど充電ケーブルの接触不良を経験した末にたどり着いたケーブル。通信もできる。

当たり外れがあるかはわからないが、私の買ったものは半年強使用して今のところ接触不良など起きていない。
首振りタイプと固定タイプが2本ずつセットで入っているが、首振りタイプは首が弱そうなのでGoProでは固定タイプを使用している。
HDR-AS300では配置の都合上コネクタ部をL字にしたかったため首の角度を固定して首振りタイプを使っていた。

充電中にケーブルが光るのも便利。
今のところ接触不良は起きていないが、接触不良で充電が止まったりしてないことを確認できて安心。
モバイルバッテリが空になったこともケーブルを見ればわかる。

自転車で使う際は不意に外れて車輪に巻き込んだりしないように配置に気を使う必要がある。

GoPro Maxを使う(2)ジンバルなしでの夜間撮影

susutex.hatenablog.com

続き。

GoProを使って夜にサイクリングをしていたが、振動を受けると画面が許容できないほどにじむ。
寒くて夜にいい感じの場所まで動画を取りに行くのが面倒なので他人の動画だが、この動画の4:50あたりからを見ると、歩行にあわせて画面がにじむのが分かる。
www.youtube.com

これは歩きだからまだいいが、私の用途は自転車なので乗車中は常に振動によりモザイクがかかったようになる。
調べてみるとどうも夜に動画撮影が壊れるのはGoPro共通の問題らしい。下調べ不足。

解決手段としては外付けでジンバルを使うのが一般的なようだができれば自転車にジンバル追加したくはない。

画像がにじむのはシャッタースピードの問題のはずなのでシャッタースピードをいじろうとする。
しかしシャッタースピードを手動設定にするとEV compが設定不可能になる、つまり昼に使えない。
明るさ自体はシャッタースピードだけでなくISO感度でも変更可能なはずなのでそこの調整をさせてほしいができない。
ISO感度はmin./max.を設定できるのでmax.を落とせば昼でも使える設定にできる可能性があるが、それをやると当然夜は真っ暗で見えなくなる。
この時点で夜と昼の設定を共通にするのをあきらめた。

シャッタースピードを色々変えながら試してみたところ、1/60では許容しがたいにじみが現れる。1/120は注意して見ればわかるという程度。
シャッタースピードを固定するということは画面が暗くなるということなので、ISO感度max.をデフォルトの3200から最大値の6400に上げてみる。
止まっている状態だとデフォルトの設定に比べてやや暗くノイズが増えるが、振動による画面のにじみに比べれば全然許容範囲内と判断しこの設定で使用することにした。
どうしても我慢できなくなったらジンバルを導入するかもしれない。

f:id:susutex:20220213135345p:plain
GoProのスクリーンにはショートカットを設定できる。
画面左中央にあるボタンがシャッタースピード設定なので、日が落ちるころになったらここからシャッタースピードを固定に切り替えるようにした。

GoPro Maxを使う(1)日中の明るさ調整

昨年末にGoPro Maxを衝動買いした。

初めてのGoPro、初めての360度カメラだが、ほぼ何も考えずポンと載せて使えたHDR-AS300と比べてかなりいろいろと気難しいやつでなかなか使いこなせずにいた。
とりあえず使えるようになったつもりなのでメモも兼ねて記事にしていこうと思う。

なおGoPro Maxは2019年発売のカメラなので後発のほかのカメラだと私の挙げる難点が解消されているかもしれないし、そっちはそっちで別の難点があるかもしれない。
買う前に試したいという場合はレンタルをやっているところもあるようだが、360度カメラは視聴環境が重いようなのでのでレンタルの短い期間で確認しきれるかわからない。
いろんな人がレビューをあげているのでそれを見たり、持っている知り合いがいるならその人に借りたりするほうがいいかもしれない。

まず試しに何度か使って直面したのは画面明るすぎる問題。


とにかく画像が明るすぎる。画像は明るさ比較のために日陰を走っているときのものを出しているので標識が見えるが、

f:id:susutex:20220213102240p:plain
このように標識に日光が当たっていると夕方でも標識がほとんど見えなくなる。
カメラを胸にマウントしているせいで常に体の陰に隠れているせいかと思ったが、どこにつけても変わらない。
GoProの開発陣は曇り空やインドアでしか製品をテストしてないんじゃないだろうか。
HDR-AS300が名前通りHDR録画に対応しているのであればそれに助けられていただけかもしれないが、HDR-AS300がHDR録画対応という記述は見つからないのでわからない。

結論から言うとEV compを最低にするとHDR-AS300での撮影に近い明るさになった。
曇り空や屋内だと若干薄暗い感じになってしまうが、何も映らないより100倍マシなのでこれで運用している。

EV comp最低にしたら夜とか暗すぎるんじゃない?と思ったが、そもそも夜はシャッタースピードを固定しないとまともな動画が取れなくなるという致命的な問題がある。
そしてシャッタースピードを固定するとEV compが使えなくなり日中の使用に耐えなくなるので、日中と夜では設定を完全に分けて使用する必要があると判断した。
夜の設定については別でまとめる。

JC38-26LSWG-CS カーボンスポーク+セラミックベアリングホイール

去年のブラックフライデーセールでREACTOにつけるいい感じのリムブレーキカーボンクリンチャーホイールがないかなあと思って探していたが、エントリーグレードでも10万前後。
この金額出すなら以前メカニコで買ったチューブラーホイールと同シリーズのクリンチャーホイールを買ったほうが良さそうと思いメカニコのHPを見ていたら

f:id:susutex:20220116180446j:plain
買った。
予算を超えるが、手持ちのホイールにはセラミックベアリングもカーボンスポークもないので使ってみたくなった。


f:id:susutex:20220116180646p:plain
付属品はブレーキシュー、クイックリリースが箱に入っているものと、予備スポークが数本。
Lun Hyperにも同じようなものが付属するらしい。

年末から体調不良に悩まされてまだしっかり乗れてないが、家の近所を何度か走ったのと車で白石峠のふもとまで行ってTTをしたがなかなか良さそう。
まず駆動剛性は高いと感じる、踏むとスッと加速する。


f:id:susutex:20220116174103p:plain
平地同じ区間を走ったログの比較。上がホイール交換後、下がホイール交換前。
コースはほぼ東向きなので真横からの風の影響がどれほどあるかはわからないが、速度は上がっている。
白石峠の下りでもスピードの伸びが普段より良く感じたので、セラミックベアリングの恩恵はありそう。


f:id:susutex:20220116174122p:plain
白石峠TTは体力が落ちすぎてて250Wも出なかったし途中足が攣って止まったので過去の結果とうまく比較できない。
体力が戻ったら280Wぐらいをターゲットにして走って過去の結果と比較したい。

OpenSSLを使って証明書作成メモ

テスト用の証明書を作りたくなりopensslをいじっていたので方法のメモ。
なお、以下を調べ終わった後にどうやらCAを構築するなら証明書の生成にはopenssl x509コマンドを使うよりもopenssl caコマンドを使ったほうがよさそうなことに気づいた。
今のところ以下で目的は果たせそうなのでopenssl caの使い方についてはまたそのうち必要になったら調べることにする。

想定

rootCA->intermediateCA->serverというchainで証明書を作って検証する
署名アルゴリズムはECDSA with SHA256、curveはprime256v1
生成するファイルの拡張子はどうでもいいようなので、鍵ファイルは.key、証明書ファイルは.cer、CSRは.csrという名前で作成することにする。

1. 利用可能なcurveのリスト取得

以下で利用可能なcurveのリストを取得できる。prime256v1があったのでこれを使用する。

openssl ecparam -list_curves

2. 鍵ペアの生成と表示

まずは各CAおよびサーバの鍵ペアを作成しないと始まらない。以下で生成する。

openssl ecparam -genkey -name prime256v1 -out rootCA_key_pair.pem.key
openssl ecparam -genkey -name prime256v1 -out intermediateCA_key_pair.pem.key
openssl ecparam -genkey -name prime256v1 -out server_key_pair.pem.key

上記で生成されるファイルはkey pairが入っている。今回は使用しないがpublic keyのみを取り出す場合は以下コマンド。

openssl ec -in rootCA_key_pair.pem.key -outform PEM -pubout -out rootCA_public.pem.key

生成したkey pairおよびpublic keyは以下のようにして内容を確認できる

openssl ec -text -noout -in rootCA_key_pair.pem.key
openssl ec -text -noout -pubin < rootCA_public.pem.key

3. root certificateの作成

rootCAは自身のprivate keyを使用して自身のpublic keyを含む証明書に署名を行い自己署名証明書を生成する。
以下で自己署名証明書の生成及びその内容の表示ができる。

openssl req -new -x509 -key rootCA_key_pair.pem.key > rootCA_cert.pem.cer
openssl x509 -text -noout -in rootCA_cert.pem.cer

証明書生成時に色々聞かれるが、とりあえず全て何も入力せずenterを押しても証明書は生成される。
証明書の内容を表示すると自己署名なのでIssuerとSubjectが同じになり、そこにcertificate生成時に入力した情報が記載されることになる。

何も入力せずenterを押し続けた場合IssuerとSubjectにデフォルトで設定された値が入っているが、これらが下位の証明書と同じだとおかしいので何か値を設定したい。
テスト用なのでとりあえずC(country)=JP、CN(common name)=rootCAとしてこれらのみ入力した証明書を改めて作成してみる。生成時に対話的に入力してもよいが、-subjオプションで入力することもできる。
以下でIssuerとSubjectを設定した自己署名証明書を再度生成してその内容を表示する。

openssl req -new -x509 -subj /C=JP/CN=rootCA -key rootCA_key_pair.pem.key > rootCA_cert.pem.cer
openssl x509 -text -noout -in rootCA_cert.pem.cer

4. intermediate CAおよびserverのCSR作成

intermediateCAおよびserverは上位のCAにpublic keyを送って証明書を発行してもらうわけだが、その際に使用するのがCSR(certificate signing request)。
CSRはpublic keyだけでなく主体者(Subject)などの情報を含んでおり、上位CAはこれを受け取ることでそれらを含んだ証明書を作成できる。
以下コマンドでCSRの生成とその内容の表示を行う。

openssl req -new -key intermediateCA_key_pair.pem.key -outform PEM -subj /C=JP/CN=intermediateCA -out intermediateCA_csr.pem.csr -sha256
openssl req -new -key server_key_pair.pem.key -outform PEM -subj /C=JP/CN=server -out server_csr.pem.csr -sha256
openssl req -text -noout -in intermediateCA_csr.pem.csr
openssl req -text -noout -in server_csr.pem.csr

CSRは発行者の秘密鍵で自己署名されている。
試しに署名を破壊したCSRを生成して後述の5での証明書作成を実行しようとするとCertificate request self-signature did not match the contentsと出てエラーになった。

5. intermediate CAおよびserverの証明書作成

上記で作成したCSRに上位CAのprivate keyで署名し証明書を作成する。
以下で証明書作成を行いその内容を表示。

openssl x509 -req -in intermediateCA_csr.pem.csr -days 365 -CA rootCA_cert.pem.cer -CAkey rootCA_key_pair.pem.key -out intermediateCA_cert.pem.cer
openssl x509 -req -in server_csr.pem.csr -days 365 -CA intermediateCA_cert.pem.cer -CAkey intermediateCA_key_pair.pem.key -out server_cert.pem.cer
openssl x509 -text -noout -in intermediateCA_cert.pem.cer
openssl x509 -text -noout -in server_cert.pem.cer

証明書情報を表示すると証明書に署名した上位CAのSubjectがIssuerとして記載されていることがわかる。-daysで証明書作成時点からの有効期限を設定できる。

6. 証明書の検証

証明書がそろったので検証を行ってみる。
以下コマンドでrootCA証明書を使ってintermediateCA証明書を検証できる

openssl verify -CAfile rootCA_cert.pem.cer intermediateCA_cert.pem.cer

さらにrootCA->intermediateCA->serverというchainを検証するには以下コマンドを使うが、5で生成したintermediateCA証明書ではエラーが出るため7で作り直す必要がある。

openssl verify -CAfile rootCA_cert.pem.cer -untrusted intermediateCA_cert.pem.cer server_cert.pem.cer

7. intermediateCA証明書へのX.509 extensions追加

6のコマンドでserverまでの証明書検証をパスさせるにはintermediate CA証明書にX.509 extensionsというものを追加する必要があるらしい
参考
https://www.golinuxcloud.com/add-x509-extensions-to-certificate-openssl/
rootCA証明書もserver証明書も本来はそれぞれ必要な値があるようだが、6のコマンドでの検証はintermediateCAにのみ追加するだけでパスできるのでまずはそれを追加する。

Intermediate Certificate Extensionsに記載のとおりbasicConstraintsを追加する必要があるので以下内容のファイルをopenssl_intermediateCA_cert.cnfとして作成する。

[v3_ca]
basicConstraints        = critical,CA:TRUE,pathlen:0

pathlenはこのCAより下位に存在できるCAの数らしい。下位にはserverしかなくCAは存在しないので0でOK。
CSRから証明書を生成する際に作成したconfig fileを指定してextensionが追加された証明書を生成して表示する。

openssl x509 -req -in intermediateCA_csr.pem.csr -days 365 -CA rootCA_cert.pem.cer -CAkey rootCA_key_pair.pem.key -out intermediateCA_cert.pem.cer -extensions v3_ca -extfile openssl_intermediateCA_cert.cnf
openssl x509 -text -noout -in intermediateCA_cert.pem.cer

X509v3 extensionsから始まる部分が増える。Basic Constraintsのみを指定した場合もSubject Key IdentifierおよびAuthority Key Identifierが自動で追加された。
このintermediateCA証明書を使用すれば今度は以下コマンドが成功する。

openssl verify -CAfile rootCA_cert.pem.cer -untrusted intermediateCA_cert.pem.cer server_cert.pem.cer

8. 独自OIDのX.509 extensions追加

独自OIDのX.509 extensionsの追加を行う必要があったのでその方法もメモしておく。
7においてopenssl_intermediateCA_cert.cnfを以下のように編集しておくと独自のOIDがextensionに追加される。

[v3_req]
1.2.3.4.56 = ASN1:SEQUENCE:myoid_sequence
basicConstraints        = critical,CA:TRUE,pathlen:0

[myoid_sequence]
 field1 = BOOLEAN:TRUE
 field2 = OID:commonName
 field3 = UTF8:Third field

値は他に書き方があるかもしれないがASN1を使用して記載するとうまくいったのでこれを使用している。
https://www.openssl.org/docs/manmaster/man3/ASN1_generate_nconf.html
openssl x509で内容を確認すると拡張OIDのフィールドはバイナリをそのままasciiで表示しているようでほとんどピリオドになり内容がわからない。
内容確認には以下webサイトが役立つ。証明書ファイルを開くと表示されるbase64エンコードされた文字列を入力すると証明書の構造が表示でき、上記でmyoid_sequenceとして記載した構造が追加されていることが分かる。
https://lapo.it/asn1js/

REACTO4000 2020購入、FD不良改善、PowerBox取り付け

TCR ADVANCED PRO DISCのやわらかすぎる乗り味に少し物足りなさを感じたり、平地を走る時間が多いので平地で楽ができるエアロロードが欲しくなったり、各社がディスクブレーキ車に移行する中で今最後のリムブレーキバイクを買っておくべきなのでは?と感じたりしていたところでREACTO 4000 2020の店頭型落ち特価を見つけて衝動買い。

メリダ -MERIDA- | ラインナップ | ロードバイク | REACTO 4000

REACTOとしては2018~2020モデルは第三世代、2021モデルの第四世代からはリムブレーキ仕様が消えたのでリムブレーキ仕様としては最終進化系といえる。

シートポストに快適性を確保する仕掛けがありエアロロードとしては快適性が高いという噂なのもサイクリング目的には最適と感じた。

色は渋いラメ入りブルーと、ぱっと見では何となくおもちゃ感が漂う黄緑の二種類が選べたが、ブルーは逆にありがちな色だなと思ったのと緑や黄色が好きなので黄緑に。買ってしばらく経つが色は割と気に入っているのでこっちにして正解だった。

 

f:id:susutex:20210507180137j:plain 乗ってみた感覚としては、性能に関しては重すぎるホイールさえ交換すれば非常に良い。この価格の完成車とは思えない。ただ、購入直後の状態だといろいろと気になる点があったのでそれをまず解消した。

 

不満点の解消

購入して自走で家に持ち帰り、さっそくいろいろ気になる点を解消。

f:id:susutex:20210507161738j:plain

ホイールが重い→ホイール交換

購入時のホイールは前後2kgあるらしいので速度に乗ればよく転がるが、再発進やちょっとした登りでやはり重さを感じる。前後1.5kgぐらいのミドルグレードのホイールに変えると軽快になる。

前後ホイールが違うのはたまたまタイヤがついていたホイールをつけただけなので特に意味はない。

 

インナーローにすると絶対にチェーンがFDにぶつかる→アウターワイヤーキャップをカットしたら解決

ちょっとわかりにくいがフロントインナー時に以下写真のようにFDのアウターキャップ部分がFDとフレームの間に挟まることで若干FDが外側に押されてしまい、インナーローにすると必ずチェーンと干渉する。

これ欠陥では?この第三世代フレームが出る時期はFDがフルアウター仕様に変わる時期とかぶっているのでそのあたりでうまくいかなかったのではと想像している。ネットで調べても解決方法は出てこない。

f:id:susutex:20210507162400p:plain

 

少しでもましになるかなと思いアウターキャップを先端付近を残してカット

f:id:susutex:20210507162308j:plain

 

カット後に調整してみると、アウター受けで覆われていた部分がアウターワイヤのみになったことでしなやかに曲がるようになりインナーローでもチェーンと接触しない位置までFDを内側に寄せられるようになった。

f:id:susutex:20210507162637p:plain

 

リアブレーキのワイヤ調整ボルトがない→ケーブルアジャスタをSM-CB90に交換

このバイクは後述のパワメとの相性と併せて賛否両論のBB下ダイレクトマウントブレーキを採用している。通常ブレーキキャリパー側にあるブレーキリリースレバーとワイヤ調整ボルトはBB下ダイレクトマウントブレーキには無く、ブレーキラインにブレーキリリース機能付きのケーブルアジャスタが取り付けられる。が、ここにコストダウンのためかメリダオリジナルの調整ボルトのないリリースが使われている。

このままではホイール交換後にブレーキワイヤの調整が非常に面倒なので調整ボルト付きのSM-CB90に交換した。2019モデルには元からSM-CB90が取り付けられているらしい。とはいえ2019から2020ではお値段据え置きでシートポストにライトが標準でついたりサドル下に携帯工具がついたりステムがエアロ風味を増したものに変わってたりもするのでどちらがお得とはいいがたい。

 

パワーメーターがつけられない→FSA POWREBOX買った

BBはBB386にFSAの30mm->24mmコンバータを使用して24mm軸のクランクが取り付けられている。このあたりミヤタのページからは全く読み取れなかったので開けてみてのお楽しみ状態だった。

shop.fullspeedahead.com

24mm軸のクランクが取り付けられるのでTCRからGiant PowerProを移植しようとしたが、クランク軸内側に出っ張りのあるタイプのパワーメーターは噂通りBB下のブレーキが引っかかるので取り付けられない。第二世代reactoではブレーキキャリパーをTRP T851に変えればつけられるらしいが、第三世代は以下写真のようにBB下開口部の形状が写真右側に寄っているので、ワイヤが左から出るT851は多分フレーム削って穴広げないとワイヤが出せない。

f:id:susutex:20210507172248p:plain

フレームを削るのは嫌なので、PowerProを取り付けるのはあきらめて以前から試してみたかったPowerBoxを買うことにした。24mmコンバータを取り外すとベアリングが露出しておりスプリングワッシャも付属していなかったので、以前BB30を分解した際にとれたカバーとスプリングワッシャを使用して取り付けた。

後になって気づいたがベアリングカバーのほうは24mmコンバータとグリスでべったり引っ付いていたのでそれを外せば使用できたが、どちらにせよスプリングワッシャがないので別途用意する必要があった。

 

サドルの携帯工具はいらないので取り外し

サドルに内蔵できる携帯工具が付属しているが、携帯工具はツールボトルに入れて持ち運んでいるのでいらない。サドルの携帯工具入れはねじで固定されているので取り外し可能。

 

インプレ

平地の速度維持は楽、反応はサイクリングに使うには十分でダンシングの踏み込みにもテンポよく反応する。快適性は良さそう。速度維持の楽さと快適性のおかげか速度が出ていても速さを感じさせず、妙にクランクが重いなと思ったら普段の感覚より5km/hぐらい高い速度が出ていたりする。

快適性を確保するために削られたシートポスト部分にはリアライトが埋め込まれている。見た目にも美しいので気に入っている。

ネットを調べるとリアブレーキの効きが悪いという感想がいくつか見られたがそんな感じはしない。ダイレクトマウントブレーキは十分な剛性があり、当然油圧ディスクブレーキには劣るがよく効く。

登りもよく進む。TCRと、ホイール交換とパワメ取り付け後のREACTOでなるべく同じ平均パワーで白石峠を二回連続で登った結果、REACTOのほうがパワーが低いのに40秒以上速かった。異なるパワーメーターを使っていることによる誤差と、一回目のTCRでの登りは二本目に備えて傾斜に合わせた加速などを控えていたのもあるかもしれないが。

 

TCR(一本目)

f:id:susutex:20210507170452p:plain

REACTO(二本目)

f:id:susutex:20210507170433p:plain

不満としては、変速ワイヤがフルアウターのためリア変速の引きが重い。前述のFDとワイヤの干渉の件といい、エアロロードは電動で組むべきであってお情けで一応ワイヤで組めるようにしてやっているという感じが伝わってくる。150km程度の走行であれば全く不満は感じなかったがもっと走行時間が伸びたら辛くなってくるかもしれない。

地味に困ったのはハンドルの下側からワイヤが出ていることで、普段カメラなどをハンドルの下に取り付けているがそれができなくなったのでハンドルの上側に取り付けるように配置を考え直す必要があった。

あとはBB下の開口が先述のブレーキ部分の狭い開口だけなので、BBを外さない限りワイヤ交換が非常に面倒そうという懸念はある。まだこの世代はハンドル周りがフル内装ではないのでそれに比べればましかもしれないが。

 

性能には非常に満足している。しばらく新しい自転車を買うことはないと思うが次買うとすればREACTO(DISC)を買うと思う。