Git Product home page Git Product logo

Comments (8)

koron avatar koron commented on July 18, 2024 1

It looks like that pressing three keys make Keyball61 unstable.

image


describe in Japanese

3つのキーを押すと3つのダイオードを通してROW3が L となっても不思議ではない。
ダイオードによる電圧降下を0.7V程度と見做せば、2.6~2.9V程度にはなっていそう。
仮にRP2040で動かした場合は1.1V程度でかなり不安定になりそう。

なお左手側ではLEFT判定のJP9がショートしているので条件を満たしやすい。

from keyball.

koron avatar koron commented on July 18, 2024 1

1N4148Wのデータシートによると電流が小さくなると順電圧が小さくなるので、
ハンダ付け不良などにより抵抗が大きくなってLo判定を受ける、という仮説を思いついた。

from keyball.

koron avatar koron commented on July 18, 2024 1

参考情報: https://blog.ikejima.org/make/keyboard/2019/12/14/keyboard-circuit.html

理想的なダイオードは片方に電気を完全に通し、 逆方向には全く通さない。 しかし、現実のダイオードはいくつか理想的ではないふるまいをする。 例えば、ダイオードを図のように接続すると、完全に0Vではなく電位差がある。 良く使われている1N4148はキーボードに使うと最高0.9V低くなる。

これは「最高0.9V低くなる」であって場合によっては「0.5Vしか低くならない場合もある」
このケースにひっかかると0.5x3で1.5Vになり、Lo判定≒ゴーストが発生しうる。
また0.85Vになって2.55Vとなると辛うじてHi判定になるが、
ちょっとしたノイズなどで2.5Vを割ってしまい、ノイズ耐性がないということが起こりうる。

from keyball.

koron avatar koron commented on July 18, 2024 1

rev.2 では回路が修正されたため閉じます。

修正の具体的な内容は、裏のマトリックスとの間でrowかco線のどちらかにダイオードを1個ずつ追加すること。

from keyball.

koron avatar koron commented on July 18, 2024

We know that Keyball61 has a problem that when pressing specified two keys
(a key on left side of row 3 and a key on right side of row 4)
other key on row4 and col3 (]) is pressed by noise sometime.

from keyball.

koron avatar koron commented on July 18, 2024

But I confirmed that it doesn't happen when using QMK + ProMicro with my Keyball61.
So there may be some conditions to reproduce this problem:

  • soldering status
  • enviornmental radio wave
  • using with bus powered USB hub
  • or so

from keyball.

koron avatar koron commented on July 18, 2024

仮にRP2040で動かした場合は1.1V程度でかなり不安定になりそう。

実際に1N4148使って実験した結果、
1.6VでLo判定で、ちょっとしたノイズでHiにもなりそうだった。

from keyball.

Yowkees avatar Yowkees commented on July 18, 2024

詳細なご考察、ゴースト発生個所に関する図まで本当にありがとうございます。とても分かりやすく理解できました。
また、参考情報リンクも読ませていただきました。ダイオードの電位差のバラつき次第でギリギリなのですね。けっこう危ない橋を渡っていることに気づかされました。
ProMicroが市場からなくなった際にはKeyball61は再設計の必要があると覚悟しました。

from keyball.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.