Skip to content

Instantly share code, notes, and snippets.

@mizucoffee
Last active June 26, 2024 13:59
Show Gist options
  • Save mizucoffee/2f6263656d174fb2284a9e49c44bfabc to your computer and use it in GitHub Desktop.
Save mizucoffee/2f6263656d174fb2284a9e49c44bfabc to your computer and use it in GitHub Desktop.
スライダー規格 v0.3 by Mizucoffee

スライダー資料

公式スライダー

パーツ 内容
タッチパネル 縦2分割x横16分割=32タッチ判定
ライティング メインパネル16個+ボーダーパネル(区切り)15個=31個
ロゴ パネル分離
GROUND SLIDERロゴ パネル分離
縦 横
縦9cm パネル横は26mm/セパレータは3.5mm

作る時の参考資料というか先人の知恵的な

タッチセンサー

タイプ 特徴 作者(敬称略)
赤外線遮断式 - 手袋対応
- 赤外線を遮断する仕組みな為何かしら上にはみ出す必要有り
- 直角プリズム使ったら少しはスマートになりそう
- タッチ感がかなり本家
- タッチパネルが上下分割出来ないのでガバが出る
@kawakawaritsuki
静電容量式 - 手袋非対応
- スライダー自体がタッチパネルになるため平らに出来スマート
- 上からシール
- シートを貼る為若干の段差が出来てしまう
@seg_514 他
SAW式 - 本家スライダーはSAW
- クオリティを目指すならばこれかも
- ただし個人で入手する方法がほぼ無い
SEGA(本家)
タブレット/タッチ液晶式 - コストと手間がほぼ掛からない(タブレット/タッチ液晶だけ)
- 操作感が端末により違う
- バンバン叩いても大丈夫?
- 公開しやすい
複数名
赤外線遮断式+静電容量式 - 手袋でも素手でも反応
- 素手なら上下判定も出来るので本家に寄せられる
@kawakawaritsuki

個人的にアクリルパネルに関して思ったこと

Gen1はアクリル板に溝を掘って色を分けましたが,おそらくキチンと切断したほうがキレイに色が別れると思います. パネル同士の接触面をある程度やすっておくといい感じになると思います.

通信周り

名前 内容
通信方式 シリアル通信
通信速度 2000000bps(=2Mbps)

方式

タッチの判定

タッチの状態を左から順に0を非タッチ状態1をタッチ状態として16ビットの文字列を作る これにAir状態を示した2ビットの文字列を追加します これを2進数として36進数に変換すると最大で4バイトの英数になる

AIR状態 Rawデータ
Air判定無し 00
Air判定(開始時)(Action/判定継続で移動(振った)時もこれ) 01
Airキープ(微動だにしてない時) 10
状態 Rawデータ 送信データ
左から4つタッチ/Air無し 111100000000000000 59MO
中央から4つタッチ/AirAction 000000111100000001 2YP
左から2つづつ交互/Airキープ  110011001100110010 4HTE

この1-4桁の文字列が母艦に送るデータになります.

シミュレータ側で解析する時は16進数を2進数の文字列に戻して左0埋めをすれば0と1で表現できます.

ライティング情報

タッチ判定と同じような感じで表現しますが,こちらは英数36進数を色に割り当てます(ソースが無いので内容は後日追記予定)     基本的にChunithmで使われてる色が指定されています.(未指定部は各自追加しても大丈夫です)       記憶の範囲だと黄,ピンク,薄いピンク,赤,青,緑辺りだったと思います.    

こちらは16桁のデータをそのままシリアルで送信します.     この際,最後に;を入れる事を忘れないでください.
マイコンが;を認識してライティングをする設計です.     最終的にデータは

1111000011110000;

という形式になります.

このライティング周りの処理がかなりのバイト数を使う事になるので9600bps等では直ぐにラグが発生してしまうため2Mbpsの帯域を用意しています. 尚,通信速度は2Mbpsとしていますがこちらもプログラム側で選択制にすれば任意の速度での通信が可能です.

@dogtopus
Copy link

dogtopus commented Mar 11, 2021

I'm pretty sure the official Chunithm slider is capacitive not SAW because:

  • It uses only a plastic piece as the touch surface. There doesn't seem to have bezels or anything that can hide the SAW sensors.
  • It can trigger in mid-air given proper conditions (around 1mm above the surface, and this is for normal notes, NOT air notes).
  • It uses the same protocol as the Diva capacitive slider, instead of an XY-coordinate-based system which is more native to SAW. It doesn't make a lot of sense to me to maintain the unnecessary protocol compatibility with Diva since they are drastically different games with even different engines.

The touchscreen (NOT slider) used by Diva however is confirmed to be an off-the-shelf SAW touchscreen so there might be some confusions here.

@theArnoll
Copy link

theArnoll commented Mar 9, 2023

@dogtopus I am quite sure that the official Chunithm slider is not capacitive because you can use anything to touch it, including coins, cards, gloves, wallets, and phones, and other objects. As you said, "It can trigger in mid-air given proper conditions". According to my knowledge, capacitive technology can't do such a thing. So I believe the official Chunithm slider uses SAW technology. If it doesn't, it might use IR technology.

Besides, Chunithm doesn't just detect a single line. It actually separates each key into a top side and a bottom side, like this:

┌──┬──┬─   ─┬──┐
│1│3│     │31│
├──┼──┤ ... ┼──┤
│2│4│     │32│
└──┴──┴─   ─┴──┘

Therefore, it does require a little XY-coordinate system.

Lastly, as you mentoned, "There doesn't seem to have bezels or anything that can hide the SAW sensors". Well, this is a business product, and SEGA is a big company. They can hide the SAW sensors in a way that is difficult to see or even invisible. It's not impossible, considering the advanced state of human technology today.

@dogtopus
Copy link

dogtopus commented Mar 9, 2023

@theArnoll This was posted in 2021. Since then I do have even more (some of them currently not very public) reasons to believe in very high confidence (very high as in 100%) that it is indeed capacitive. The sensor is actually based on the capacitive slider design used on Project DIVA Arcade Future Tone, down to the chips used and their pinouts.

As to why it triggers on everything and not just fingers, that's actually possible with highly sensitive capacitive sensors since even non conductive objects could act as a different dielectric material and gives measurable capacitance change. My homebrew slider for Project DIVA can also do this if I remove the acrylic touch surface or increase the sensitivity.

For triggering in mid-air, SAW stands for "SURFACE Acoustic Wave", so by design they can't trigger mid-air, and that for IR you would also need bezels. Capacitive on the other hand, can trigger mid-air (capacitive proximity sensors are a thing) and stay bezel-free.

Lastly, as you mentoned, "There doesn't seem to have bezels or anything that can hide the SAW sensors". Well, this is a business product, and SEGA is a big company. They can hide the SAW sensors in a way that is difficult to see or even invisible. It's not impossible, considering the advanced state of human technology today.

Technology and physical limit are 2 separate things.

@somewhatlurker
Copy link

Pretty much this ↑
It uses the CSD capacitive sensing peripheral on CY8C22345. And capacitive proximity sensing is a well known phenomenon (it's just that most touch sensing uses deliberately try to minimise false triggering caused by it).

XY co-ordinates are not needed, it just has 32 discrete sensors.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment