投稿

【追記あり】X Pro(旧 TweetDeck)でプロフィールなどがポップアップされたまま消えない問題の応急処置

イメージ
2024/6/06追記 : 本問題は修正されたようです。 2024/5/29追記 : X Pro に細工をせずに設定でポップアップを非表示にする方法を教えてもらったので末尾に追記しました。 概要 2024年5月頃から X Pro(旧 TweetDeck)において「プロフィールカードなどのポップアップ(ホバーカード)やツールチップが表示されたまま消えない」という問題が発生しています。 X Pro を利用する上で非常に障害となるため、公式に改修されるまでの応急処置としてポップアップやツールチップの表示そのものを抑制する「ブックマークレット」を作成しました。 Firefox、Chrome、Edge で動作確認しました。 インストール手順 Stop Popup ←このリンクをドラッグして、ブラウザのブックマークバーなどにドロップして追加します。 ブックマークの名前は動作に影響しませんので、好きなように変えて大丈夫です。 ドラッグ&ドロップでなく手動で追加する場合は、上記のリンクを右クリック→リンクアドレスをコピーし、新規ブックマークの URL 欄に貼り付けてください。 利用方法 X Pro を開いた状態で、追加した上記ブックマークをクリックします。 これ以降、X Pro をリロードするまでの間、ポップアップとツールチップの表示が抑制されます。 仕組み body 要素にダミーのイベントリスナーを設定して、mouseover イベントを子要素に伝搬させないことで、ポップアップを表示する処理が起動しないようにしています。 mouseover イベントをトリガーとする機能は全て使用不能になりますが、ポップアップが出なくなる以外に特に大きな問題は無いと思います。 【追記】ホバーカードの無効化設定 風柳さん より引用 RP にて X Pro の設定でポップアップを止める方法 を教えて頂きました。ありがとうございます。 左下の「・・・」→「設定とプライバシー」→「アクセシビリティ、表示、言語」→「表示」→「ホバーカードを表示する」のチェックを外します。 この方法では ツールチップが表示され続けて消えない問題は残ります が、変な細工をすることなく恒久的にポップアップ(ホバーカード)を無効化できます。

SkyFeed を使って Bluesky で自作品のフィードを公開する

イメージ
はじめに イラストや写真等を公開するアカウントの場合、それしか投稿してなければ「メディア欄を見て」でいいかと思いますが、それ以外の日常の写真やゲームのスクリーンショットなども投稿する場合、自作品だけをまとめたページが欲しくなります。Bluesky にはいわゆるハッシュタグはありませんが、「カスタムフィード」を使えば、特定のキーワードを含むポストをまとめることができます。 ここでは Bluesky のサードパーティアプリ「SkyFeed」を使って自作品をフィードにまとめる手順を説明します。 この記事執筆にあたり、下記の記事を参考にさせて頂きました。本記事では「自作品をまとめたフィード」に的を絞っていますが、より高度な使い方を知りたければ下記の記事を参考にしてみてください。 SkyFeedのFeed Builderを使ってカスタムフィードをつくる - Bluesky なお、Bluesky は発展途上のサービスのため、今後短期間のうちに UI が変わる可能性があります。 また SkyFeed という外部サービスに依存するため、SkyFeed のサービス提供が終了するなどして使えなくなってしまう可能性もあります。 ご了承ください。 1. SkyFeed にログインする 外部サービスである SkyFeed から自分の Blueskyアカウントに接続するために、そのキーとなるアプリパスワードを取得してログインします。 SkyFeed を開きます。 App Password の横にあるボタンを押すと Bluesky のアプリパスワードの作成画面に飛びますので、[アプリパスワードを追加] をクリックします。 アプリパスワードの名前を指定します。何でもいいですが、SkyFeed に与えるパスワードと分かるようにしておくとよいでしょう。 アプリパスワードが表示されるので、控えておきます。下の説明にあるように この画面以降二度と表示されませんので、無くさないようにメモしておいてください。 また、他の人には見せないでください。 SkyFeed のログイン画面に戻り、ユーザ名と先ほど作成したアプリパスワードを入力してログインします。

スマホの USB でウズラのゆで卵をつくる

イメージ
概要 スマートフォンのUSBポートはOTGアダプタを使用するとUSB電源として使用することができます。この電力を使用してゆで卵を作れないか実験してみました。 景気よく鶏卵でといきたいところですが、乾電池ゆで卵 の例などから難しそうと判断し、ウズラの卵で挑戦することにしました。 スマホから得られる電力 OTGでどの程度の電力が得られるかはスマホによって異なります。より大きな電力を得るには規格に沿って適切なモードを実装する必要があります。 参考: Microchip Application Note:AN1953 私の所有している Pixel3 と Pixel5a では規格上は USB2.0 の 5Vx500mA までのようです。ただ、Pixel3 は実際に電流を引くと 1.5A程度まで引くことができました。Pixel5a ではより厳格な実装となっているようで、500mA を大きく超える電流を引くと保護機能が働いて供給を遮断されてしまいました。 スマホによってはより大きな電流の規格に公式に対応しているものもあるそうです。 今回はどのスマホでも再現できるように最小構成 (USB2.0: 5Vx500mA) で使用することにしました。 OTGアダプタの仕組み 充電端子でもあるスマホのUSBポートから電力供給を得るには、ポートを OTGモードで動作させる必要があります。5Vx500mA を得るのであれば OTGアダプタを使用する方法が簡単です。OTGアダプタにはホスト側から 5V を出力させるための回路 (5.1kΩのプルダウン抵抗) が内蔵されているので、デバイス側は何も考えずに 5V を得ることができます。 OTGアダプタを使用せずに Type-Cコネクタを自前で実装する場合は、アダプタと同様に CC1 を 5.1kΩでプルダウンすることにより、アダプタ使用時と同様に 5Vx500mA の供給を受けることができます。 より大きな電流の供給を受けるには、CC1/CC2 ピンの電圧を監視したり、PD (Power Delivery) 通信を行う必要があります。 ヒーターの作成 熱源には 0.2mm, 34.3Ω/m のニクロム線を使用しました。これに 500mA の電流が流れるようにするには、オームの法則より、5V÷500mA=10Ω にな

ラズピコに「長押し書き込みボタン」を追加する

イメージ
概要 Raspberry Pi Pico のデバッグには picoprobe が便利ですが、作る物や環境によっては繋いだままにできない場合もあります。しかしプログラムを書き込むたびに BOOTSELボタンを押しながら USBケーブルを差し込むのはちょっと面倒です。 RUNピンにリセットスイッチを追加し、BOOTSELボタンと同時押しすることでスイッチ操作のみで行うこともできますが、もうひと工夫してスイッチひとつだけで操作できるようにしてみました。 ボタンをクリックすると通常再起動、0.5秒ほど長押しすると Mass Storage Mode に入るようになります。押しやすい大きなボタンを乗せれば指一本で操作できてちょっとした作業効率化になります。 回路 下図のような回路をラズピコに追加します。リード部品でも SMD でも OK です。 SW1 を押すと C1 を通して RUNピンがプルダウンされてリセットがかかります。そのまま長押しし続けると C1 が充電されて Q1 のベース電圧が上昇していき、Q1 がオンになると BOOTSELピンがプルダウンされます。この状態で SW1 を解放するとリセットが解除され、Mass Storage Mode に入るという仕組みです。 Q1 がオンになる前に SW1 を解放すれば通常のリセット (再起動) となります。 BOOTSELピンは裏面の TP6 に出ています。少々不格好ですがここから引き出すのが簡単です。 実装例 動作波形 クリック時 RUN の立ち上がり時に BOOTSEL がバタついていますが、これはチャタリング等ではなく、ラズピコ自身によるドライブのようです。 長押し時 BOOTSEL はだいぶ鈍っていますが、RUN の立ち上がりではしっかり GND に落ちていて、ちゃんと Mass Storage Mode に入れます。

スマホで火花放電を撮るときのブツブツ音対策

イメージ
ブツブツ音とは何なのか スマホで火花放電を撮ると、ブツブツ、ブリブリ、という音が入って耳障りになってしまいます。 これが何の音なのか調べたところ、スマホをアルミホイルで覆っても効果が限定的なのに対して、ダンボール箱やガラス瓶に入れるとブツブツ音が消えたことから、(少なくとも筆者の Pixel5a の場合は)放電による電磁ノイズではなく衝撃波が原因のようでした。 スマホ用プチプチ袋を作ってみる 衝撃波を防ぐのが効果がありそうなので、スマホ用のプチプチ袋を作ってみました。 使用するプチプチ(エアパッキン)は、3層構造になっている厚手のしっかりしたものを使います。2層のペラペラのプチプチでは効果がイマイチでした。 適当なサイズに切り出したプチプチを折ってテープでとめ、ちょうどスマホが入るサイズの袋にします。 スマホのカメラが来る位置に小さな穴をあけ、アクリル板を貼り付けて窓を作ります。アクリル板なしでは効果がありませんでした。 既製品のプチプチ付きの封筒を使った方が簡単に作れますが、透明でないと撮影時に画面が見えないのでアングル調整が難しくなります。 効果 プチプチ袋にスマホを入れて放電を撮ると、ブツブツ音が解消されました。

スマホ (USB) で動くプラズマアークライター

イメージ
概要 スマホの USBポートからの電力供給 (OTG) で動くプラズマアークライターを作ってみました。 実用性があるのかというと微妙ですが…普通の着火器具には燃料切れや電池切れがありますが、毎日充電するスマホの電池を切らすことは滅多にないので、そういう意味では「持ってればいつでも使える」と言えるかもしれません(強引)。 トランス プラズマアークライターには点火用のトランスが必要ですが、小型のものが AliExpress や Amazon で手に入ります。 55.0¥ 42% OFF|アーク発生器15kv,高電圧インバーター,ブースター,変圧器,パルス点火1.4x1.4x0.7cm,ライターアクセサリー|回路| - AliExpress Amazon.co.jp: Hbaebdoo 3-5V DIYキット 高電圧発生器 アークイグナイターライターキット DIY電子生産用スイート: DIY・工具・ガーデン 勝手にピン番号をつけましたが後の回路図と対応づけるためで、正式なものではありません。 (細い線) フィードバック出力 (細い線 + 太い線) 電源 (太い線) 駆動入力 高圧出力 高圧出力 OTGコネクタ スマホから OTG で DC 5V の供給を受けるには Type-Cコネクタの CC ラインに 5.1kΩのプルダウン抵抗が必要です。 自分で実装してもいいですが、Amazon に OTGケーブル自作用のキット?が売られているので、それを使うのが簡単です。 Amazon.co.jp: Cablecc 5個/ロット DIY 24ピン USB Type C USB-C オス OTG ホストタイプ 5.1k 抵抗器 ブラックハウジングカバー付き : 家電&カメラ 回路 普通のブロッキング発振回路がベースですが、消費電流を USB の 500mA以内に収めるために R5 で電流検出し、Q2 で発振を制御しています。 手元の実験ではこれで 430mA 程度の消費電流になりました。 製作 コンパクトにしたかったので、ちょっと無理矢理ですがユニバーサル基板に両面実装しました。 トランスと Type-Cコネクタは後でエポキシ樹脂で固定しました。 電極の先端はニッパーで斜めに切っ

18650 2セル駆動の LEDランタンを作った

イメージ
「 眩しすぎるX看板のLEDランタンを作った 」で買った白色LED が 50個以上余ったのでちゃんとした(?) LEDランタンを作ってみました。 仕様 3mm の砲弾型白色LED OSW54K3131A を 56個使用 18650 2セル、または USB PD (9V) で駆動 調光機能 バッテリ残量表示 安全対策 2セルの電圧が 6.2V を下回ったら明るさを抑える 2セルの電圧が 6.0V を下回ったら消灯する 実用になるよう、3Dプリンタでしっかりした筐体を作る 回路 電流制限抵抗を介して直接 LED を駆動することもできますが、電源の状態に関わらず明るさを一定に保つことと、電流制限抵抗の数を抑えたかったので、NJM2360AD を使って DC/DC を構成して昇圧し、直列接続した LED を 20mA で駆動します。 調光はボリュームの値を ATtiny85 の ADC で読み取り、PWM で LED の明るさを制御します。電圧は RESETピンの ADC で読み取るので、ボリュームを下げてもリセットがかからないよう電圧範囲が 2.5~5V の間になるようにしています。人間の目の明るさの感じ方は光量に対してリニアではなく対数的なので、ボリュームには Aカーブのものを使用します。 バッテリーの電圧を ADC で読み取り、残量を計算して 4個の LED にレベル表示します。ダイナミック点灯により 3つのポートで 4つの LED を制御します。 バッテリーは直列で使用するので、 AliExpress で買った 2セル用の保護モジュール で保護します。 USB-PD のトリガにはスイッチサイエンスで買った べーたさん の USB-PD_Adapter PDA-02S を使用しました。 プログラム Arduino ATtiny Core を使用しました。 調光 デフォルトでは PWM周波数が低すぎてカメラで撮るとカメラのフレームレートと干渉してしまうため、TCCR1レジスタを変更して Timer1 のプリスケーラを無効化しています。 volume_to_pwm関数でボリュームの状態を読み取り、PWM に反映します。光量に対する明るさの感じ方は