2024-02-15

Windows Copilotを縦タスクバーでもなんとか使えるようにする方法

Windows 11で、さらにWindows 10でも、Copilotが使えるようになりました。

ただとても不思議なことに、タスクバーを左または右に縦型に置いている場合には使えなくなってしまいます。
縦タスクバーの場合は、Win+C のショートカットキーもなぜか使えなくなってしまいます。
一般的なディスプレイは横長なので、わたしは、高さを少しでも節約したくて、いつもタスクバーは縦にして使っています。

そこで、縦タスクバーでも、なんとかWindows Copilotを使えるようにできないか考えてみました。

タスクバーを横に戻してWindows Copilotを起動した状態で、タスクマネージャで調べると、次のコマンドが実行されていることが分かりました。

"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" "--single-argument microsoft-edge:///?ux=copilot&tcp=1&source=taskbar"

これをそのままショートカットに設定したら、うまくCopilotを開いたり閉じたりすることができました。
これをさらに、短縮化して、

microsoft-edge:///?ux=copilot&tcp=1&source=taskbar

をショートカットに設定しても、Copilotの開いたり閉じたりすることができました。

このショートカットをタスクバーやスタートメニューにピン止めすればとても使いやすくなりました。
ショートカットアイコンは、適当に検索してショートカットに設定すれば、本来の横タスクバーのCopilotアイコンと同じ動きを実現することができます。

また、参考までに、他の実行方法としては、コマンドプロンプトまたはPowerShellで、コマンドとして

start microsoft-edge:///"?ux=copilot&tcp=1&source=taskbar"

(ダブルクォーテーションで & を含む部分を囲む必要あり)を実行してもOKです。 

Windows Copilotは、人が結果を読むのと同じスピード感で、速すぎず遅すぎずの速度で結果を出してくれるようになっているので、なかなか気が利いていると思います。
Copoilotの画面を出した後、閉じると、ディスプレイの右側がCopilotウィンドウの幅だけ空いたままの状態で元に戻してくれないのは、まだ粗削りなところだと思います。

2024-01-03

Cherry MX Ultra Low Profile (MX ULP) スイッチの実際の構造 [自キ沼 #39]


ロープロプロファイルの自作キーボードの活動の中でなにか目新しいことをやりたくて(前回の投稿 ウルトラロープロファイルの自作キーボード制作の夢を見た のつづき)、MX ULPスイッチとキーキャップも付属しているDell Alienware m15 AlienFXキーボードユニットを取り寄せました(4番目の写真)。

このキーボードユニットから、表面実装されているMX ULPスイッチのハンダをひとつひとつ外してスイッチパーツを手に入れる算段なのですが、思っていたほどには簡単にいかない状況です。

  • 一般的なキースイッチは、PCBへのハンダ付けは電極足のみですが、MX ULPではスイッチをPCBに固定するためにハウジングパーツもハンダ付けする構造になっています。
    ハウジングパーツ(3番目の図の小さな金色部分以外が一体になっている)をまずPCBから外すのですが、そうすると電極パーツ(金色の2つの接点パーツ)がPCBに取り残されて外れてしまいます(1番目の写真の左側のPCBの状態)。
    この2つの電極パーツは非常に薄い金属板でできているので、すぐに曲がったり折れてしまったりします(このためだけにヒートガンを準備するのも気が引ける)。
    苦労して電極パーツを外しても、ハウジングパーツにはめ込んだときに、なかなか元通りにならないのです。

最初から新品のスイッチパーツを手に入れれば良いのですが、やはり入手が難しそうです。
ハンダごてのこて先を細いものにしたりして、もう少しトライしてみたいと思います。

今回、MX ULPを実際に手にして他にも気付いた点も書いておきます。

  • キーボードの仕上がり高さは、驚くべきことにロープロファイルキーキャップの高さよりも低くなります(2番めの写真、ちなみにFunction行の細いキーはMX ULPではなくてメンブレンスイッチ)。
  • キーキャップのつけ外しは、耐久性は低そうですが、githubに書いてあるコツを掴めば問題なくできます。

    まずキートップの下側(南側)の角の左右(南西か南東)どちらかを持ち上げて、外れやすい方をプチっと外します。
    ここで、横方向に力を入れすぎてしまうとスイッチ本体のパンタグラフパーツが外れてしまいますし(組み付けは難しくないので大きな問題ではないですがバネをなくさないように)、上に無理に引っ張りすぎるとパンタグラフパーツが曲がってしまうので、力の加減が必要です。
    次にもう片方を同じようにプチっと外します。
    上側(北側)はキーキャップを上に(北の方向に水平に)ずらすことで外します。
  • キーキャップの文字部分はバックライトを透過するのですが、残念なのがShiftと同時押しで入力する記号部分が透過じゃない点です。
  • パンタグラフパーツは、左右から差し込んであるだけのシンプルな構造です。
    左右に引っ張ると容易に外れますが(1番目の写真の真ん中が外したところ)、組み立ても左右からはめ込んでバネを引っ掛けるだけなので比較的簡単に組み付けられます。
  • 真ん中の2つの白い樹脂のパーツ(上の金属のパーツと連動して電気接点を押すパンタグラフになる)は、下の金属の台座に固定されていてはずれません。
    低いくて小さいですが、3箇所の位置決め用の丸足として下に出るようになっています。
  • キースイッチの押し込みは、通常のスイッチのように、単純なバネの伸縮ではなくて、パンタグラフ部分がカクカクとした動きを醸し出すので、おそらくリニア軸の実現は無理です。
    現状もMX ULPはタクタイルとクリッキーのみです。 
  • キースイッチの質感は、ウルトラロープロファイルであることを意識させないくらい、とてもしっかりしています。
    Mistel AIRONEの評価が高いのもうなずけます。
    なおさら、なんとか自作キーボードとして実現したくなります。

 MX ULPキースイッチとキーキャップをまとめて入手できる良い方法と思ったのですが、なかなかの難関です。

この投稿は自作Lilithキーボードで作成しました。

2023-12-30

ウルトラロープロファイルの自作キーボード制作の夢を見た [自キ沼 #38]

今年2023年は贔屓味かもしれませんが、ロープロファイル仕立ての自作キーボードや市販キーボードが徐々にですが広まってきたとおもいます。
そして更に薄くて、PCBから上がたった3.3mmのCherry MX Ultra Low Profileスイッチ(MX ULP)を採用したキーボードやラップトップもポツポツ出てきていて、評判もなかなか良いようです。

ロープロファイルの自作キーボード制作の次のレベルアップとして、このウルトラロープロファイルのスイッチ(MX ULP)をなんとか使えないかをこの数ヶ月思案していました。
考えられるハードルとして次のような点があります。

  • MX ULPスイッチのバリエーションは、クリッキーとタクタイルの2種類のみ
  • MX ULPスイッチ自体の入手性がわるい、というか入手経路がほとんどない
  • MX ULP用のキーキャップが更にない、3Dプリントできないこともなさそうだけれど微細なのでとてもハードルが高い
  • MX ULPはPCBへの取り付けが表面実装方式(電極足が出ていれば、ハンダ付けしやすいし、ソケットも対応できるのにそうじゃない)
  • MX ULPは他のキースイッチのように固定するプレートもなくて、PCBに固定するしかない
  • MX ULPのフットプリント等の詳細な図面が見つからない

普通に考えれば、状況が改善するまで待ちにせざるを得ない状況でした。
そんな中、githubにMX ULP利用のためのまとめ情報が出ているのを見つけました。
https://github.com/pashutk/Cherry_MX_ULP
これで、実現に向けて明かりが見えてきました。
MX ULPスイッチとキーキャプは、単体の部品ではなくて、Dell Alienware m15/m17/x1ゲーミングラップトップのキーボードユニットから比較的安価に手に入れられそうです。
フットプリントやケースカバーの寸法決めはパーツを実測してやることになりそうです。

MX ULPは手配線は、スイッチをプレートに固定する方式ではなくて、PCBにハンダ付けで固定する方式なので、原理的に無理です。
自分好みのキー配置でまずはPCBを作成して進めてみようかなと思います(Lilith miniくらいからかな)。

この投稿は、休日のリラックスの中、iPadのソフトウェアキーボードで作成しました。

[2024-01-03] 実際にMX ULPを手にいれたので続編を書きました

2023-10-15

eSIMの契約は全てオンラインでできるけれど、格安SIMでの注意点:iPhoneはディアルSIMでも1つのみ、また古いAPN設定を確実に消してから新しいAPNを読み込むのがコツ

先日、スマホの格安SIM契約を切り替えたのですが、すこしハマってつまずいてしまったので、記録しておきます。

  • 従来の契約:
    b-mobileおかわりSIM 5段階定額データ専用
    b-mobile(日本通信)は最初期のMVNOです。
    長い歴史の中で何度かプランや料金体系の更新がありました。
    現在は1GBまで500円〜5GBまで1,500円の1GBごと250円の段階料金になっています。
    残念ながらこのプラン自体の新規契約は今はできません。
    こちら、解約せずXREALと連携するAndroidか何か用にキープするかどうか悩み中です(下記をさらに追加したほうが安いのにこれを書いていて気付きましたが)。
  • 新しい契約:
    日本通信SIMの合理的シンプル290プラン
    日本通信は現在、b-mobileと「日本通信SIM」のダブルブランドでMVNOを提供しています。
    こちらのプランは通話とSMSも可能で、通信1GBまで290円、1GBごと220円の段階料金(MAX 100GBまで制限設定可能)、通話は従量制で11円/30秒とこちらもお得な部類で、別途通話定額オプションもあります。
    今回はeSIMを選択しました。

今回、なぜiPhoneのモバイル契約をデータ専用からアップグレードしたかと言いますと、色々なサービスでSMS認証が増えてきて不便になってきたことと、あわよくばLINEの年齢認証も有効に(こちらは調査不足で失敗、LINE年齢認証に対応する格安SIMはかなり限定的なのを後で知りました)したかったからです。

eSIMの契約は、思い立ってから1時間くらいで簡単に完了しました。
モバイル回線利用のための、eSIMの発行や、MNP(モバイル・ナンバー・ポータビリティのワンストップサービス)が自宅ですぐにできてしまうとは、良い時代になったものです。
本人確認も、マイナンバーカードをアプリから読み込んで、免許書の写真を送ったりの手間なしでスムーズでした(はじめて、マイナンバーカードのありがたみを感じられた瞬間でした)。

しかしながら本来はこの後(大手3社の直接回線契約以外のahamo、povo、LINEMO等も含む格安SIMでは)APN設定が不可欠です。
わたしの場合、従来のb-mobileのAPNだけが設定されている状態に、日本通信SIMのAPN設定されている状態に切り替えないといけないのですが、最初はこのことを忘れていました。
すでにiPhoneのアンテナ表示は2段表示に切り替わっていて、SIMとeSIMの両方が有効になって電波を掴んでいるのですが、どうやっても従来のb-mobileでしかデータ通信ができないと悩んでしまいました。
なお、音声通話は問題なく使える状態です。 

じつに数日後、APN設定が必要なことを思い出し、日本通信SIMのAPNを上書き設定したのですが、こんどはモバイル通信が全くできなくなってしまいました。
iPhoneを再起動しても、何度APN読み込みをやってもダメで、諦めかけた中、ふと、APNを消して何もない状態状態で読み込ませればと思いやってみて、なんとか成功しました。

また、iPhoneではAPN設定は1件しか登録できず(新しいのを読み込むと以前のAPN設定がなくなる、ただし前述のようにきれいに消してから新たに読み込むのが無難)、eSIMを含めSIMが2枚有効になっていても、データ通信では有効活用できない事もわかりました。
ちなみにAndroidではAPN設定は手作業でパラメータを手作業で設定する面倒さはあるのですが、複数個の設定ができるようです。

実は並行して、もう1台のiPhoneを母親用に新規購入して設定したのですが、こちらは、MNPの予約番号発行は電話にて(ガラケーでi-modeすら無効だったので)完了、eSIMの発行は自分のiPhoneのインターネット共有でWi-Fiを有効にしてこちらも完了、APN設定も完了と、自宅で全てスムーズにスッキリ無事に行えました。

まとめ:

  • モバイル回線の契約はすべて自宅でできる。eSIMの発行とMNP移行もすべてオンライン化されている。本人確認もマイナンバーカードを使う方式ならオンラインで瞬時。
  • 格安SIMおよび大手3社の格安サブブランドではデータ通信のためのAPN設定が必要。
  • iPhoneで物理SIMとeSIMの2枚差しにしても、格安SIMの場合はAPNが一つしか設定できないのでデータ通信では片側しか活用できない(音声の2回線化は可能)。AndroidはAPNを複数定義できる。
  • iPhoneでAPN設定を行う場合は、古いものを消してから新しく読み込んだほうがトラブルが少なそう。
  • LINEで年齢認証に対応した格安SIMはかなり限定的(SMS対応か、音声対応かの契約とは関係ない)

 [2023-10-31] スマホを修理してeSIMが消えてしまった場合や、機種変でeSIM転送がうまくいかない場合には、手数料を支払ってeSIMを再発行してもらえる。ただし、機種変の時、あるいは過去に機種変で転送したeSIMのときはEIDに注意、との体験談がTwitterに出ていました(Twtter @Takashi Yamamshitaさん ahamoのeSIMというか、ドコモのeSIMが難しすぎた)。
やってみないと気付かない依存性(SMS認証や、EIDや、修理でeSIMが消える)があって、まだ人類には少し早すぎる、って感じなのかもしれません。

2023-09-29

もう一つの刺客Meta Quest 3が登場したので、Apple Vision Pro、XREAL Air 2と横並びで比較

先日、Apple Vision ProとXREAL Air 2のどちらを選ぶかのための比較一覧を作りましたが、その後Metaから鳴り物入りでQuest 3が発表されました。

Questはヘッドマウントディスプレイ然としているので、わたしはウォッチしていなかったのですが、うわさを聞くにつれ気になりだしてきました。

Meta Quest 3の用途は、製品説明の次の言葉に集約されているのではないでしょうか。

  • 「好き」に火をつける 豊富なアプリで、ゲーム、フィットネス、ストリーミングを楽しめる

直接比較はやはり無理があるのかもしれませんが、全部買う訳にもいかず、なんとか横並びで比較してみたくて、ともかくやってみました。


Apple Vision ProMeta Quest 3XREAL Air 2
表示機能
PC/Mac/Android/iPhone/iPad/ゲーム機の外付けディスプレイとして✕ Macのみ(iPad?) ✕ PC/Macのリモートデスクトップ機能にて〇 HDMI出力はBEAMにて変換
仮想デスクトップ△ 1画面?〇 3画面、5画面(Immersedアプリにて)〇 3画面(NebulaのVirtual Desktopにて)
汎用ビデオ表示〇 USB-C DP-Alt入力、外付けアダプタ+HDMI変換ケーブルで入力(Air Casting)
映画モード〇 visionOSで表示〇 映画配信あり〇 Air Casting、さらにBEAMを使えばSpatial Display機能でサイズの調整が可能
透過型のコンテンツ表示〇 カメラ入力と自然に合成、クラウンで透過度を調整可能〇 カラーパススルー対応〇 物理的な透過型、Air 2 Proは3段階の透過度調整付き、BEAMで視界の隅への縮小表示も可能
センサー
ヘッドトラッキング〇 3DoFまで
ポインティング〇 視線、指〇 専用コントローラ、手ぶり(追加で全身のフルトラッキングも)✕ 従来のポインティングデバイスが必要、AR Spaceではスマホの動きをポインティングデバイスとして利用可能
視線入力〇 visionOSおよび付属アプリでサポート、アプリ開発可能✕ (Meta Quest Proのみ)
ハンドトラッキング、指によるゼスチャ〇 visionOSおよび付属アプリでサポート、アプリ開発可能✕(世代的には古くなるけれどXREAL Lightはハンドトラッキングを機能として持っていてアプリ開発可能)
深度センサー、空間マッピング✕(XREAL Lightは可能)
あつかえるコンテンツ
専用アプリによる3D/VRコンテンツ〇 visionOSで開発〇 エンタメ系VRアプリやVRチャットが豊富〇 SDKで開発、今のところAndroidのみ(PC/Macにも広がって欲しい)
YouTubeの3D/VRコンテンツの表示〇 3D SBS表示モード (side by side、Cardboardモード)での表示が可能(3840x1080ピクセル)、Android用アプリあり
ステレオスピーカー〇 空間オーディオ〇 空間オーディオ
画像入力、視力調整
カメラ機能〇 3D写真や3Dビデオも撮影可能✕(XREAL Lightは可能)
視度調整レンズ△ 高級なツァイスのみ?〇 眼鏡をかけたままでも利用可能〇 おそらく汎用的に作成可能(Air 1では限定ショップの特殊加工が必要)、眼鏡をかけたままでも実質利用可能か
物理面
軽さ△ ゴーグル型、450g程度△ ゴーグル型、515g〇 メガネ型、72g
入手可能時期△ 来年2024年末〇 2023年10月初旬出荷〇 Air 2は2023年10月中旬出荷、Air 1とLightは発売中
価格✕ 約50万円△ 7.5万円から〇 5.5万円

Meta Quest 3は、第3のゲームコンソールと言った感じで、VRチャット(チャットではなくて仮想空間にアバターになってダイブする)等のVR専用アプリを楽しむ、ついでに映画やリモートデスクトップアプリもある、という位置付けでしょうか。
Apple Vision Proは、既存のiOS/iPadOS/macOSに非常に近くて互換性もあるvisionOSなので、スムーズに垣根なく使えるようになっていると思います。
XREAL Air 2は、あくまで持ち運べる外部ディスプレイ(ARグラス)であって、キャッチフレーズからしても「Your screens and your internet experience on your eyes」となってるように、手軽にいつでもどこでも、既存のデバイスの画面をそのまま手ぶらで表示できるところを突き詰めていますね。

その人が中心的にやりたい事に合わせて選べるちょうど良い時代になってきた、ということが整理してみて分かりました。
(一体型VRヘッドセットを選ぶ場合、Quest以外の競合製品がすでにたくさんありますね)

[2023-10-01] 老舗のMeta Quest 3がやはりかなりの注目を集めているようですね。
ユーザが、VRチャットまでできる機能性を選ぶか、ARグラスの軽快性を選ぶか、もっと激しく競り合ってほしいものです。
ARグラスにも対応し、3DoFを生かしたAR/VRアプリやコンテンツもどんどん増えていってほしいものです。
横並び比較は、やってみてとても勉強になりました。

[2023-10-16] XREAL Air 2がいよいよ発売開始されました(直販サイト、それとAmazonヨドバシビックカメラのサイト(こちらそれぞれ現在1%ポイント還元)と実店舗でも)。
赤色モデルは予約段階で人気が高いようで11月17日まで延期されました。
専用アプリが無くて、単に映画を観たい、ゲームコンソールにつなぎたい、仮想デスクトップとして利用、の場合はXREALがかなり良さそうですね。
あとは、自分の使いたい専用アプリがどのプラットフォームで出てくるかがポイントになると思います。
それと最近、XREALさんはLondon Film Festibalの最中に大々的なデモを行ったり(ヨーロッパでも販売開始か?)、とても意味深なツイートをしたり(ファームウェアの新バージョン? Nebulaの新バージョンor Windows版? あるいは6DoFの新機種Light 2? あるいはAndroid以外の開発環境?)、ととても元気がありますね。

2023-09-23

Vision ProとアップデートされたAir 2を無理やり比較してみた

Apple Vision Proはたしかに良いものだけれど、だれもが購入には躊躇してしまう高級さ。
それに比べてXREAL Air 2(10月に出荷開始のAirのアップデート版)はすぐ手に届く手軽さと、軽量さが魅力。 

XREAL Air 2はひとことで言うと、早い・安い・美味いで、サイトの製品説明には出来ることとして次の機能が挙げられています。

  • Air Casting:大画面ディスプレイ
  • Spatial Display:空間の任意の距離・位置に固定したディスプレイ
  • Virtual Desktop:3画面の仮想デスクトップ
  • AR Space:専用アプリによる3Dコンテンツ
  • 追加Beamアダプタ:USB-C DP-Alt機能に制限があるゲーム機との接続、PC/Macとの無線接続、Air 2をバッテリ稼働、Spatial Display機能
  • 追加XREALアダプタ:HDMI入力接続

Apple Vision Proは、最高にゴージャスで、製品説明は以下。

  • 複数のvisionOSアプリを空間上に表示する、空間コンピューティング
  • 映画モード 
  • 空間ビデオ 
  • ペルソナをリアルタイム生成するFaceTimeビデオ会議
  • 近くの人とアイコンタクトできるEyeSight 
  • Macの仮想デスクトップ
  • visionOS専用アプリに加えて、iOS、iPadOSアプリの実行

お互いの製品説明だと直接比較できないですね。
Vision Proの廉価版としてのAir 2で満足できるのかを考えるために、無理があるかもしれないけれど、AR/VR/MR/Spatialビギナー(未満)のワタシですが、横並びでの比較表を作ってみました。


Apple Vision ProXREAL Air 2
PC/MacやAndroidやiPadの外付けディスプレイとして△ Macのみ(iPad?)
仮想デスクトップ△ 1画面?〇 3画面まで、NebulaのVirtual Desktopにて
汎用ビデオ表示✕?〇 USB-C DP-Alt入力、HDMI変換ケーブル、または外付けアダプタでHDMI入力、Air Castingにて
映画モード〇 visionOSで表示〇 Air Casting、さらにBEAMを使えばSpatial Display機能でサイズの調整が可能
透過型のコンテンツ表示〇 カメラ入力と自然に合成、クラウンで透過度を調整可能〇 物理的な透過型、Air 2 Proは3段階の透過度調整付き
ヘッドトラッキング〇 3DoFまで
ポインティング〇 視線、指✕ 従来のポインティングデバイスが必要、AR Spaceではスマホの動きをポインティングデバイスとして利用可能
視線入力〇 visionOSおよび付属アプリでサポート、アプリ開発可能
ハンドトラッキング、指によるゼスチャ〇 visionOSおよび付属アプリでサポート、アプリ開発可能✕(世代的には古くなるけれどXREAL Lightはハンドトラッキングを機能として持っていてアプリ開発可能)
MR、空間マッピング✕(XREAL Lightは可能)
専用アプリによる3Dコンテンツ〇 visionOSで開発〇 SDKで開発、今のところAndroidのみ(PC/Macにも広がって欲しい)
YouTubeの3D/VRコンテンツの表示〇 3D SBS表示モード (side by side、Cardboardモード)での表示が可能(3840×1080ピクセル)、Android用アプリあり
ステレオスピーカー〇 サラウンド
カメラ機能〇 3D写真や3Dビデオも撮影可能✕(XREAL Lightは可能)
視度調整レンズ△ 高級なツァイスのみ?〇 おそらく汎用的に作成可能(Air 1では限定ショップの特殊加工が必要)
軽さ△ ゴーグル型〇 メガネ型
入手可能時期△ 来年2024年末〇 Air 2は2023年10月中旬出荷、Air 1とLightは発売中
価格✕ 約50万円〇 5.5万円

こうして整理すると、なかなかますます悩ましいですね。
3Dコンテンツというか、ARアプリが汎用性・互換性を持って作れるになると良いんですが、まだもう少し時代が進まないといけないですね。
ARアプリ利用よりも、単に汎用ディスプレイとして使用する機会が多い(それだけでも十分面白いし、体験してみる価値はありますね)ならAir 2が潰しが効きそうですね。
空間コンピュータの違いを生かしたアプリがどれだけ出てくるかが、Vision Proの勝負どころでしょうね。

デスクでのOA作業ではさすがにARグラスや空間コンピューティングを常用することはないでしょうが(大画面の外付けディスプレイがあれば十分なので)、デスクを離れて気分を変えての作業や、外出先での作業、寝転んでのSNSのチェック、映画や3Dコンテンツを楽しむのが、活躍の場面になるのだと思います。
VRチャットのような全員がデバイスを持っている前提の使い方も、すぐには一般化は難しいと思います。

[2023-09-24] 空間識別処理(空間マッピング)を比較表に追記しました。

[2023-09-25] YouTube 3D/VRの表示は、SBSモードを使用して簡単にできる事が分かりました。

[2023-09-28] 3画面のVirtual DesktopはNubulaアプリを使用、AR SpaceではAndroidスマホをポインタとして使用可能なことを追記しました。 

[2023-09-29] ちょうどこのタイミングでMeta Quest 3が発表されたので比較表をアップグレードして新たに記事を起こしました。

2023-09-07

"Wonderlust" なApple Event 2023秋、再びハートマークなので、空間コンピューティングへの更なる期待を表明します

毎年恒例の秋のApple Eventが来週火曜日2023年9月12日の深夜26時からです。

新しいiPhoneを出さない訳はないとして、他の最大限の希望を書いておきたいと思います。

春のWWDC23もハートマークに変化するAppleロゴでした。
今回のテーマは Wonderlust - Wonderful と Wanderlust を掛けて「夢中の旅」となっています。
旅先でもワクワクの最先端デバイスを、ということは、これしかないですね。

  • M2 Apple Silicon版iPhone Ultraに、より軽量なメガネ型デバイスを接続して、どこでも大画面、空間コンピューティングを楽しめる。
    あるいは、MacBookとメガネ型デバイスを接続してどこでも作業ができる。
    さしずめこのデバイスはVision Air、表示とヘッドトラッキングのみに機能を絞って軽量・お手軽を優先する。
    Pro向けのフル機能の空間コンピューティングを実現するMac Proのような位置づけのVision Proと、日常的に空間コンピューティングを持ち歩いたり、コンテンツの消費(iPhoneに大画面を提供、音楽を持ち運ぶ、から映画館を持ち運ぶへ)や、既存デバイスの仮想ディスプレイを拡張する(MacBookに大画面を提供、操作はMacBookで行う、ハンドトラッキングは省略)ための軽量デバイスであるVision Airのラインアップ。
    この充実したラインアップを、いきなり揃えて、他社をさらに引き離すのです。

ちょうど今日、XRealから、本国のサイト限定告知ですが、Air 2、Air 2 Proが発表されました(製品ページと、ブログ記事(私には読めなくて雰囲気しか分かりませんが))。
軽量のメガネ型デバイスはどう考えてもトレンドですし、今の時代の主流です。

はてさて、この期待、盛りすぎのようにも思いますが、出来ちゃったりしますよね、Appleさん?
ハートを大きく揺さぶられる発表を期待しています。

 

[2023-09-13] Vision Airはもう少しお預けでした。
今回のロゴの粒子はチタンでした(オープニングのテザーの段階でうすうす気づきました)。

iPhone 15 Proではカメラを同時に2つ使って、Vision Proで視聴するための、Spatial videoの撮影ができるようになりますね。
visionOS以外用のSpatial videoのプレビューアプリも提供されることでしょう。

ところで、過去のApple Event (たとえばApple Silicon M1が最初に発表された2020年秋)を振り返りたいと思ったのですが、webサイト https://www.apple.com/apple-events/ では直近7件、2021年秋以降のものしか載っていません。
それ以前のものはPodcastに誘導されるのですが、残念ながらAppleデバイス以外では見ることができません。
少し調べて、Apple EventのPodcastのコンテンツへのリンクが見つかったので、ここからならどのデバイスでも見ることができます(Safariからの場合はPodcastアプリが開きます)。
直リンクは https://podcasts.apple.com/jp/podcast/apple-events-video/id275834665 です。

2023-08-20

今後は、左右分割キーボードは一体型キーボードとは別物と考えるようにしよう [自キ沼 #37]

Keychron K11 Proと自作Lilithの使い勝手を合わせようと試行錯誤して2週間が過ぎました。
早速、カーソルキーはfn1(MO(4))+IJKLに、左手親指の中央のキーにBackspaceを、テンキーをfn2(MO(2))+UIOJKLM,.に、割り当てて、Lilithと同様、ホームポジションから手を動かさずに使えるようにしました。
これは、結構快適です。

さらに、一体型のAliceキーボードでは、普段左右分割で使っている感覚からすると、右手と左手の開き具合がどうしてもまだ不足していると感じました。
そこで、右の図のキーマップのように右手側のキーを1文字ずつ右にずらした変則的な配列にしてみました。
こうしてみると、6のキーが右側に置けて好都合、かつ、アルファベットの入力はブラインドタッチでも何不自由なく自然に行えます。
しかしながら、結構使う / や ” が非常にもたついて全然ダメでした。

また、Magic Trackpadをラップトップのように真ん中手前に置くのが、右や左に置くのに比べて操作性が格段に良いので、そうしたい思いも強いです。
ポインティングデバイスを操作するのに、わざわざ腕を右や左へ大きく移動するのは、左右分割キーボードを使っている今の身となってはあまりにも疲れる動作と感じます。
標準キーボードでは親指の付け根が当たって、トラックパッドは手前には到底置けません。
Aliceキーボードなら、Lilithの時よりもかなり離して置きさえすれけば、なんとか使える状態になることがわかりました。
しかしながら、これだと机上のスペースを大きく取ってしまい、あまり理想的とは言えません(なお、右の写真なのですが、NuPhyのキーキャップに付け替えて、かなりイメージが変わっています)。

これらの違いを体験してみて、ある考えがうかんできました。
左右分割キーボードと、一体型キーボードは、同じ使い勝手にするのはもしかするとそもそもムリで、同じ目的の入力デバイスだけれど別物と考えたほうが良いのでは、と。
ちょうど、マウスと、トラックパッドと、トラックボールが違うように、です。

左右分割キーボードは、腕の幅や、腕の向き、更にはチルトやテンティングを自由に設定できるデバイスです。
一方の、一体型キーボードは、左右一体ケースで固定された安定性、左右をできるだけ詰めてコンパクトにする設計思想、キースイッチの連続的な整然とした配置を目指したデバイスだと思います。
同じキーボードの仲間ですが、使う側として違う向き合い方になる、と思いました。
これは、もう割り切って、違うタイプのデバイスと考えて、頭を切り替えて使うしかないと思いました。

この投稿は(変則的な配列に今のところはなっている)市販キーボードのKeychron K11 Proで作成しました。

2023-08-08

Keychron K11 Proを到着初日にさっそく分解してみた [自キ沼#36]

Keychron K11 Proを発売初日に購入し、5日目に手元に届きました。

メーカー製品としてキッチリとした造りに満足ですが、改造したいウズウズがどうにも止められず、下調べとしてまずは開腹してみました。
おそらくKeychronのキーボードの設計方式は目に見えるスペックの差以外は全機種共通だと思うので、他の機種の方にももしかしたら参考になるのかもしれません。

  • まず、K11 ProおよびK Proシリーズのケースはアルミニウム、ボトムは樹脂です。ケースがプレートと一体になっていて側面までカバーしていますが、マウント方式はいわゆるサンドイッチマウント構造です。プレート面に11個のネジ頭が出ていて、これを外すとボトムの板が外れます。この時、スイッチを外す必要はありません。内部のPCBは、ボトムから伸びたスペーサー穴で浮かんでいてネジ等で固定されておらず、スイッチの足だけで支えられています。
  • スタビライザーはルブされていますし、使用されているGateron Low Profile 2.0スイッチもファクトリールブ仕様です。プレートースとPCBの間、PCBとボトムの間に空間があるので、使い方によっては反響音が響きます。良い音なのだと思いますが、音量をなんとかしたいと感じました。
  • 次にPCBに関して、キーの右ブロックと左ブロックそれぞれ用にシフトレジスタが設けられています。コントローラとの接続は少ないピン数おそらく2本だけで接続されているようです。これならフルサイズのキーボードからテンキーパッドまでの幅広い製品全てに、キーマトリックスのピン数を気にせず対応できますね。
  • コントローラMCUのコアは、QMKファームウェアのinfo.jsonの記述からSTM32L432 (Arm Cortex-M4) です。QMKファームウェアのソースコードはまだベータ(プルリクエスト中)ですがすでに公開されています
  • コントローラのMCUチップは、Bluetooth機能を内部に持ったシングルチップのCYW20730A2KFBG(汎用名 BCM20730)です。このMCUチップが載った端面スルーホール接続の汎用モジュールが使用されています。心臓部が共通化されているんですね。検索してなんとか調べたところこの汎用モジュールは、ITON TechnologyのBT3GMD-B47Pかその後継のようです。データシートが公開されているので空きポートをQMKで自由に制御できる可能性が広がりました(しめたものです、こういうところの柔軟性がKeychronさんは良いですね)。I2CやADCポートもちゃんと引き出されているようです

今回は、一般的ではないかもしれない、自分の知りたい観点でレビューをさせていただきました。

この投稿は自作Lilithキーボード(LilithKbd)を使って書きました。


[2023-08-12] Keychron K11 ProのQMKファームウェアのソースコードの正式版が公開されました。

2023-07-30

アナログジョイスティックデバイスを最新のQMK Firmware 0.21に対応してみた [自キ沼#35]

見慣れたNintendo Switch Joyconのアナログジョイスティックの保守部品を、以前から自作のLilithキーボードに組み込んでいます。

当初はQMK 0.12上でアナログデータを直接読み取ってマウスポインタ移動情報を生成していましたが、思ったほどスムーズな動きが実現できていなくて、メイン利用のMagic Trackpadを無くすにはまだまだです。

QMKの最近のバージョンを見ていると、アナログジョイスティックのドライバが少し前から提供されるようになっています。
このドライバが、QMK 0.21の設定だけでどこまで使えるかを今回試してみました。

ADC(ADコンバータ)入力はPro Microのほぼ全てのピンでサポートされています。
どのピンに接続するのかはconfig.hで設定します。
マウスボタンをレイヤに定義するだけで動作する自動マウスレイヤ機能や、左右分割キーボードでホストに接続していない側にジョイスティックがあっても動作させられるsplit pointing機能も、使えるようになりました。
以下、QMKに設定した内容です。

rule.mk :

POINTING_DEVICE_ENABLE = yes
POINTING_DEVICE_DRIVER = analog_joystick 

config.h :

// アナログジョイスティックの基本設定
#define ANALOG_JOYSTICK_X_AXIS_PIN F4 // ADC機能のある任意のピン
#define ANALOG_JOYSTICK_Y_AXIS_PIN F5
#define ANALOG_JOYSTICK_SPEED_REGULATOR 5 // default 20
#define ANALOG_JOYSTICK_SPEED_MAX 1 // default 2
// 自動マウスレイヤ機能
#define POINTING_DEVICE_AUTO_MOUSE_ENABLE
//#define AUTO_MOUSE_DEFAULT_LAYER 3 // 今回はkeymap.cで設定した
// 左右どちらのPro Microをホストに繋いでもジョイスティックが動作するように
#define SPLIT_POINTING_ENABLE
#define POINTING_DEVICE_RIGHT

keymap.c :

void pointing_device_init_user(void) {
    set_auto_mouse_layer(3);       // 今回はレイヤ3にKC_BTN1とKC_BTN2を置いた
    set_auto_mouse_enable(true);
}

最新のQMK Firmwareのアナログジョイスティックドライバで良い点は以下です。

  • 上記の簡単な設定だけで、ポインタ動作がある程度スムーズに動作するようになります。操作に慣れればこれだけでも日常使いできるかもしれないレベルです。
  • 抵抗値の変化でアナログ的に出力をするジョイスティックであれば、どのデバイスでも汎用的に対応できそうです。たまたまなのかもしれませんがセンターの抵抗値のキャリブレーションなしで問題なく動いています(ソースコードを確認しておきます)。
  • 自動マウスレイヤや、split pointingなど高度な機能を実現できます。

 この方式の現状の課題は以下です。

  • Joyconのアナログジョイスティック部品は0.5mmピッチのFPCリボン接続です。コネクタの手ハンダは(私には)無理なのでPCBA必須なのが費用的に少し不利です。PSP用の部品など他のデバイスも試してみたいところです。
  • ポインタ動作はほぼスムーズなのですが、小さな動きが少し難しいのと、大きく動かすのもじれったい感じがあるので、移動量データに補正を入れるなどして、なんとかしたいところです。
  • ポインタ操作でスクロールするモードも試してみたのですが、スクロール速度が速すぎるのを調整できていません。他の仕組みのポインティングデバイスであればCPIの設定等があるようなのですがアナログジョイスティックではできません。何が起こっているのかもう少し解析が必要です。

完成形まで後少しといったところかな、と思います。

この投稿は自作Lilithキーボード(LilithKbd)を使って書きました。

2023-07-26

AZ1UBALLをPro MicroでQMK Firmwareな自作キーボードで使うための検証をした(Pro MciroとRP2040) [自キ沼 #34]

AZ1UBALL(BOOTHの購入ページ、githubの技術情報)を現時点の最新のQMK Firmware version 0.21.3で動かしてみました。
最新のQMKを使うと非常に少ないコードで対応できました。
まだ実験なので、SU120から空中配線しています(写真は載せませんがお察しください)。

ポインティングデバイスのドライバの説明はこちらです。
Pro Microとの接続ピンは、I2C通信なのでD1とD2で固定です。
以下、QMKに設定した内容です。

rule.mk :

POINTING_DEVICE_ENABLE = yes
POINTING_DEVICE_DRIVER = pimoroni_trackball

config.h : ポインタの移動速度、2倍が限界、これ以上だとポインタが飛び飛びになる

#define PIMORONI_TRACKBALL_SCALE 10    // default 5

keymap.c : 加速度モードを設定しようとしています、必須ではない

// AZ1UBALL
void pointing_device_init_kb(void) {
    uint8_t addr=(0x0a << 1 );        // ic2 address with 1bit shift up
    //uint8_t data[]={0x90, 0x00};    // AZ1UBALL normal speed mode
    uint8_t data[]={0x91, 0x00};      // AZ1UBALL accellaration mode
    uint16_t timeout=100;             // in milli-seconds
    i2c_status_t status;
    status  = i2c_transmit (addr, data, 1, timeout);
    //if (status != I2C_STATUS_SCCESS) {
    if (status != 0) {
        return;
    }
}

AZ1UBALL を実際に試してみて良いな、と思った点を挙げます。

  • 触感:どういう仕組みなのかわかりませんが、操作するとジ、ジ、ジと指先にクリック感が来ます。これがとても良いフィードバックです
  • 細かな操作:細かな操作はとても直感的に行えます
  • QMKですぐ動作:I2C接続のPiromoni互換のトラックボールとして設定するだけで動きます
  • 1u、ロープロファイル:16mm角の正方形なのでキーボードの1uの余裕で収められます。また、ソケットプレートの上に置いて、ちょうどロープロファイルキーボードのキートップと同じくらいの高さに抑えられているので、デザインの自由度が大きいです

工夫して使わないと、と思った点もあります。

  • 移動速度:タブレットくらいの画面までは快適なのですが、大画面では難ありと思いました。ボールが小さいので一度にたくさん動かせないのと、同方向に慣性で転がし続ける動きができません。keymap.cで0x91の加速モード設定も試してみましたが、それほど違いが出ませんでした(設定できていないのかもしれずもう少し調査必要)
  • 天面の処理:低頭の小ネジの頭が天板に出ているため、操作の際に邪魔に感じることがありました。3Dプリンタ等でケースを作った方が良いのかもしれません
  • キーボードへの固定方法:基板への実装は、2.54mmの標準ピンヘッダでのハンダ直付けかソケット化しかなさそうで多少心許ないかもしれません。ネジでしっかりと固定する方法があれば良いのですが。また、側面が空いているのでケースで覆うかマスキングテープでカバーしたいです

このAZ1UBALLと、Joyconアナログジョイスティック(それと、もしかして秋月電子のPSPアナログジョイスティック部品も、あとジャンクのトラックポイント部品もあったような)は並行して試していきます。

この投稿は自作Lilithキーボード(LilithKbd)を使って書きました。


[2023-08-24] Yuta Sakaiさんがコードのスペルミスと、i2cアドレスの指定方法の誤り(QMKのi2cアドレス指定方法の説明箇所)を見つけてくださいました(Twitterでのやりとり)ので、手直ししました。
さらにこの方は、加速度機能の動的ON/OFF、感度の動的変更と、気の利いた追加機能まで考えられています。
コチラの記事に掲載されています。

[2023-12-29] QMKをRP2040(Raspberry PI PicoやRP2040-Zero)で使う場合の設定です。
m.kiさんのTwitter投稿「AZ1UBALLをqmk0.22.3とRP2040-Zeroで試してみました (2023-12-26)」と、よしザウルスさんのブログ「QMK FirmwareをRaspberry Pi Picoで使ってみる (2022-07-24)」からの転記です。

rules.mk :

POINTING_DEVICE_ENABLE = yes
POINTING_DEVICE_DRIVER = pimoroni_trackball
I2C_DRIVER_REQUIRED = yes

halconf.h :

#define HAL_USE_I2C TRUE

mcuconf.h :

#undef RP_I2C_USE_I2C0
#define RP_I2C_USE_I2C0 FALSE
#undef RP_I2C_USE_I2C1
#define RP_I2C_USE_I2C1 TRUE    # 例

config.h :

#define I2C1_SCL_PIN GP27    # 例
#define I2C1_SDA_PIN GP26
#define I2C_DRIVER I2CD1    # 例

2023-07-13

次のLilithは...2台同時進行で制作する!? [自キ沼 #33]

ロープロファイル&左右分割Alice配列の自作キーボード、わたしのLilith v2.5を1月に作ってからもう半年が経ちました。
自分としてはなかなかのお気に入りで、ざっくり80%以上の満足度と言ったところ。
もう日常的に手放せないキーボードになっています。

強いて挙げれば次のような難点が残っていて、改善版を作りたい気持ちはなえていません。

  • ポインティングデバイスのチューニング:
    ある程度は操作できるのですが、加速度の調整がまだまだだと思っています。
    アナログジョイスティックでアナログ値そのままではなくて、ゆるやかに段階的にギアチェンジするような感じが良さそうです。
    いわゆるマウスボタンの左右ボタンの配置もまだしっくりきていません。
  • Numキーの位置:
    親指ブロックの長いEnterキーの右側に置いているので、親指を少し捻って押すことになって、少し辛いです。
    左手親指のBackspaceとCmd(Win)の押し間違えも、手探りで区別しにくいためか多いです。
  • バックライト:
    目立ちたがり屋の電飾ではなくて、暗がりでもキーキャップの刻印が見えるようにする実用的なバックライトがやはり欲しいです。
    やれやれ、キーキャップの選択肢がさらに狭まってしまいますね。
  • USB-C左右接続:
    抜き差しでどうしてもショートしてしまうTRRSを排除したいです。
  • Gateron low profileスイッチが抜けやすい:
    GLPは足が細めで短いのと、プレートに引っかかる爪が弱いようで、キーキャップを抜こうとすると一緒にスイッチまで抜けてしまいます。
    基板をもう少し薄くしてソケットに深く挿さるようにする、プレートの穴をもう少し狭くするなどの対策を打ちたいです。

また、現状のLilithが7.5x4と多めの70キー(左右4行のうち8列と7列が半々なので7.5x)なのに対して、5x3または6x3の縮小キーボードも、実際使ってみてどんな感じなのか大いに興味があるのは、最近投稿しているとおりです。

前置きが長くなってしまいましたが、あれこれ試行錯誤中のキー配置をいったん図にまとめてみました。
標準サイズLilithとLilith miniです。

miniの方は、最初5x3あるいは5.3x3と攻めたやつ、と思っていたのですが、やはり6x3くらいの方が使いやすそうと思っています。
タイマーによるキー長押しレイヤ移動はわたしの指癖には合わないようで、やはり嫌なので、親指ブロックも多めです。
6x3と小指ブロックが2列に増えたので、Alice配列に寄せています。
憧れのCorne(crkbd)のレプリカとまではいきませんが、Corneの形状をインスパイアしています。

上記に加えて、今回の制作上のチャレンジポイントは以下です。

  • 標準サイズLilithの親指ブロックの配置がまだしっくりきていません。
  • Lilith miniは、この際なので、さらに攻めて、よりロープロファイルのmini chocを試してみようかと思っています。
    キーキャップはchoc v1と共通で、高さがさらに2〜3割減できます。
    ソケットがないので、Mil-Max(や、その類似品)でどうかと思っています。
  • いずれもリバーシブル基板は継続したいです。
    現状のLilithは左右で行のズレを変えていて、左右のスイッチの上下(南北)を変えないと収まらないくらいリバーシブルが限界ギリギリなのですが、Jones配列を参考に左右対称にしてやれば配置の余地が増えて、バックライトLEDも入れられそうです。
  • QMK Firmwareのバージョンアップをしておきたいです。
    現状はSU120用の古いものそのままです。
    最近のQMK Firmwareでは、アナログジョイスティックも標準サポートされて、ポインティング速度のパラメータ調整の自由度と、ポインティングレイヤでキーを共有できそうなのですが、これもまだ試せていません。
    現状のJoyconアナログスティックは0.5mmピッチのFPCコネクタがネックなので、AZ1UBALL(こちらは固定と配線が悩ましい)も試してみたいです。
    こちらもI2C接続のポインティングデバイスとしてQMK Firmwareで標準サポートされています。

2台並列制作をやっちゃうのが良いのかどうか、悩ましく、うれしい悲鳴をあげています。

この投稿はLilithキーボード(LilithKbd)を使って書きました。