Submit Search
Upload
キーボード自作のススメ
•
Download as PPTX, PDF
•
14 likes
•
18,522 views
Retrieva inc.
Follow
最近流行りの自作キーボードの解説をします
Read less
Read more
Technology
Report
Share
Report
Share
1 of 67
Download now
Recommended
充足可能性問題のいろいろ
充足可能性問題のいろいろ
Hiroshi Yamashita
『データ解析におけるプライバシー保護』勉強会 秘密計算
『データ解析におけるプライバシー保護』勉強会 秘密計算
MITSUNARI Shigeo
【DL輪読会】Visual ChatGPT: Talking, Drawing and Editing with Visual Foundation Mo...
【DL輪読会】Visual ChatGPT: Talking, Drawing and Editing with Visual Foundation Mo...
Deep Learning JP
強化学習初心者が強化学習でニューラルネットワークの設計を自動化してみたい
強化学習初心者が強化学習でニューラルネットワークの設計を自動化してみたい
Takuma Wakamori
【メタサーベイ】Vision and Language のトップ研究室/研究者
【メタサーベイ】Vision and Language のトップ研究室/研究者
cvpaper. challenge
【DL輪読会】Code as Policies: Language Model Programs for Embodied Control
【DL輪読会】Code as Policies: Language Model Programs for Embodied Control
Deep Learning JP
RSA暗号運用でやってはいけない n のこと #ssmjp
RSA暗号運用でやってはいけない n のこと #ssmjp
sonickun
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」
Masahito Zembutsu
Recommended
充足可能性問題のいろいろ
充足可能性問題のいろいろ
Hiroshi Yamashita
『データ解析におけるプライバシー保護』勉強会 秘密計算
『データ解析におけるプライバシー保護』勉強会 秘密計算
MITSUNARI Shigeo
【DL輪読会】Visual ChatGPT: Talking, Drawing and Editing with Visual Foundation Mo...
【DL輪読会】Visual ChatGPT: Talking, Drawing and Editing with Visual Foundation Mo...
Deep Learning JP
強化学習初心者が強化学習でニューラルネットワークの設計を自動化してみたい
強化学習初心者が強化学習でニューラルネットワークの設計を自動化してみたい
Takuma Wakamori
【メタサーベイ】Vision and Language のトップ研究室/研究者
【メタサーベイ】Vision and Language のトップ研究室/研究者
cvpaper. challenge
【DL輪読会】Code as Policies: Language Model Programs for Embodied Control
【DL輪読会】Code as Policies: Language Model Programs for Embodied Control
Deep Learning JP
RSA暗号運用でやってはいけない n のこと #ssmjp
RSA暗号運用でやってはいけない n のこと #ssmjp
sonickun
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」
Masahito Zembutsu
GiNZAで始める日本語依存構造解析 〜CaboCha, UDPipe, Stanford NLPとの比較〜
GiNZAで始める日本語依存構造解析 〜CaboCha, UDPipe, Stanford NLPとの比較〜
Megagon Labs
近年のHierarchical Vision Transformer
近年のHierarchical Vision Transformer
Yusuke Uchida
【DL輪読会】GET3D: A Generative Model of High Quality 3D Textured Shapes Learned f...
【DL輪読会】GET3D: A Generative Model of High Quality 3D Textured Shapes Learned f...
Deep Learning JP
backbone としての timm 入門
backbone としての timm 入門
Takuji Tahara
研究効率化Tips Ver.2
研究効率化Tips Ver.2
cvpaper. challenge
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法について
Sho Takase
社会人博士という選択肢
社会人博士という選択肢
Hiroki Toyokawa
Optimizer入門&最新動向
Optimizer入門&最新動向
Motokawa Tetsuya
Semantic segmentation
Semantic segmentation
Takuya Minagawa
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models
cvpaper. challenge
【DL輪読会】Scaling Laws for Neural Language Models
【DL輪読会】Scaling Laws for Neural Language Models
Deep Learning JP
Node.js Native ESM への道 〜最終章: Babel / TypeScript Modules との闘い〜
Node.js Native ESM への道 〜最終章: Babel / TypeScript Modules との闘い〜
Teppei Sato
画像処理AIを用いた異常検知
画像処理AIを用いた異常検知
Hideo Terada
CyberChefの使い方(HamaCTF2019 WriteUp編)
CyberChefの使い方(HamaCTF2019 WriteUp編)
Shota Shinogi
数学で解き明かす深層学習の原理
数学で解き明かす深層学習の原理
Taiji Suzuki
グラフニューラルネットワークとグラフ組合せ問題
グラフニューラルネットワークとグラフ組合せ問題
joisino
最適化超入門
最適化超入門
Takami Sato
先端技術とメディア表現1 #FTMA15
先端技術とメディア表現1 #FTMA15
Yoichi Ochiai
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
[DL輪読会]ICLR2020の分布外検知速報
[DL輪読会]ICLR2020の分布外検知速報
Deep Learning JP
コンテナ仮想、その裏側 〜user namespaceとrootlessコンテナ〜
コンテナ仮想、その裏側 〜user namespaceとrootlessコンテナ〜
Retrieva inc.
音声認識入門(前編)
音声認識入門(前編)
Retrieva inc.
More Related Content
What's hot
GiNZAで始める日本語依存構造解析 〜CaboCha, UDPipe, Stanford NLPとの比較〜
GiNZAで始める日本語依存構造解析 〜CaboCha, UDPipe, Stanford NLPとの比較〜
Megagon Labs
近年のHierarchical Vision Transformer
近年のHierarchical Vision Transformer
Yusuke Uchida
【DL輪読会】GET3D: A Generative Model of High Quality 3D Textured Shapes Learned f...
【DL輪読会】GET3D: A Generative Model of High Quality 3D Textured Shapes Learned f...
Deep Learning JP
backbone としての timm 入門
backbone としての timm 入門
Takuji Tahara
研究効率化Tips Ver.2
研究効率化Tips Ver.2
cvpaper. challenge
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法について
Sho Takase
社会人博士という選択肢
社会人博士という選択肢
Hiroki Toyokawa
Optimizer入門&最新動向
Optimizer入門&最新動向
Motokawa Tetsuya
Semantic segmentation
Semantic segmentation
Takuya Minagawa
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models
cvpaper. challenge
【DL輪読会】Scaling Laws for Neural Language Models
【DL輪読会】Scaling Laws for Neural Language Models
Deep Learning JP
Node.js Native ESM への道 〜最終章: Babel / TypeScript Modules との闘い〜
Node.js Native ESM への道 〜最終章: Babel / TypeScript Modules との闘い〜
Teppei Sato
画像処理AIを用いた異常検知
画像処理AIを用いた異常検知
Hideo Terada
CyberChefの使い方(HamaCTF2019 WriteUp編)
CyberChefの使い方(HamaCTF2019 WriteUp編)
Shota Shinogi
数学で解き明かす深層学習の原理
数学で解き明かす深層学習の原理
Taiji Suzuki
グラフニューラルネットワークとグラフ組合せ問題
グラフニューラルネットワークとグラフ組合せ問題
joisino
最適化超入門
最適化超入門
Takami Sato
先端技術とメディア表現1 #FTMA15
先端技術とメディア表現1 #FTMA15
Yoichi Ochiai
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
[DL輪読会]ICLR2020の分布外検知速報
[DL輪読会]ICLR2020の分布外検知速報
Deep Learning JP
What's hot
(20)
GiNZAで始める日本語依存構造解析 〜CaboCha, UDPipe, Stanford NLPとの比較〜
GiNZAで始める日本語依存構造解析 〜CaboCha, UDPipe, Stanford NLPとの比較〜
近年のHierarchical Vision Transformer
近年のHierarchical Vision Transformer
【DL輪読会】GET3D: A Generative Model of High Quality 3D Textured Shapes Learned f...
【DL輪読会】GET3D: A Generative Model of High Quality 3D Textured Shapes Learned f...
backbone としての timm 入門
backbone としての timm 入門
研究効率化Tips Ver.2
研究効率化Tips Ver.2
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法について
社会人博士という選択肢
社会人博士という選択肢
Optimizer入門&最新動向
Optimizer入門&最新動向
Semantic segmentation
Semantic segmentation
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models
【DL輪読会】Scaling Laws for Neural Language Models
【DL輪読会】Scaling Laws for Neural Language Models
Node.js Native ESM への道 〜最終章: Babel / TypeScript Modules との闘い〜
Node.js Native ESM への道 〜最終章: Babel / TypeScript Modules との闘い〜
画像処理AIを用いた異常検知
画像処理AIを用いた異常検知
CyberChefの使い方(HamaCTF2019 WriteUp編)
CyberChefの使い方(HamaCTF2019 WriteUp編)
数学で解き明かす深層学習の原理
数学で解き明かす深層学習の原理
グラフニューラルネットワークとグラフ組合せ問題
グラフニューラルネットワークとグラフ組合せ問題
最適化超入門
最適化超入門
先端技術とメディア表現1 #FTMA15
先端技術とメディア表現1 #FTMA15
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
[DL輪読会]ICLR2020の分布外検知速報
[DL輪読会]ICLR2020の分布外検知速報
More from Retrieva inc.
コンテナ仮想、その裏側 〜user namespaceとrootlessコンテナ〜
コンテナ仮想、その裏側 〜user namespaceとrootlessコンテナ〜
Retrieva inc.
音声認識入門(前編)
音声認識入門(前編)
Retrieva inc.
自然言語処理シリーズ9 構文解析 3.6-3.8節
自然言語処理シリーズ9 構文解析 3.6-3.8節
Retrieva inc.
Linuxカーネルを読んで改めて知るプロセスとスレッドの違い
Linuxカーネルを読んで改めて知るプロセスとスレッドの違い
Retrieva inc.
IP電話交換機ソフト Asterisk について
IP電話交換機ソフト Asterisk について
Retrieva inc.
論理的思考で読解力を培う
論理的思考で読解力を培う
Retrieva inc.
キートップのノベルティを作ってみた話
キートップのノベルティを作ってみた話
Retrieva inc.
自然言語処理勉強会11章 情報抽出と知識獲得
自然言語処理勉強会11章 情報抽出と知識獲得
Retrieva inc.
キートップのノベルティを作った話
キートップのノベルティを作った話
Retrieva inc.
放送大学テキスト「自然言語処理」 6章 意味の解析(1)
放送大学テキスト「自然言語処理」 6章 意味の解析(1)
Retrieva inc.
レトリバのキートップ説明書
レトリバのキートップ説明書
Retrieva inc.
ブースティング入門
ブースティング入門
Retrieva inc.
情報検索の基礎
情報検索の基礎
Retrieva inc.
Chainer の Trainer 解説と NStepLSTM について
Chainer の Trainer 解説と NStepLSTM について
Retrieva inc.
ChainerでDeep Learningを試すために必要なこと
ChainerでDeep Learningを試すために必要なこと
Retrieva inc.
20170221 cnet live講演資料
20170221 cnet live講演資料
Retrieva inc.
Making Google Cardboard and Laser Cutter
Making Google Cardboard and Laser Cutter
Retrieva inc.
Chainerで学ぶdeep learning
Chainerで学ぶdeep learning
Retrieva inc.
More from Retrieva inc.
(18)
コンテナ仮想、その裏側 〜user namespaceとrootlessコンテナ〜
コンテナ仮想、その裏側 〜user namespaceとrootlessコンテナ〜
音声認識入門(前編)
音声認識入門(前編)
自然言語処理シリーズ9 構文解析 3.6-3.8節
自然言語処理シリーズ9 構文解析 3.6-3.8節
Linuxカーネルを読んで改めて知るプロセスとスレッドの違い
Linuxカーネルを読んで改めて知るプロセスとスレッドの違い
IP電話交換機ソフト Asterisk について
IP電話交換機ソフト Asterisk について
論理的思考で読解力を培う
論理的思考で読解力を培う
キートップのノベルティを作ってみた話
キートップのノベルティを作ってみた話
自然言語処理勉強会11章 情報抽出と知識獲得
自然言語処理勉強会11章 情報抽出と知識獲得
キートップのノベルティを作った話
キートップのノベルティを作った話
放送大学テキスト「自然言語処理」 6章 意味の解析(1)
放送大学テキスト「自然言語処理」 6章 意味の解析(1)
レトリバのキートップ説明書
レトリバのキートップ説明書
ブースティング入門
ブースティング入門
情報検索の基礎
情報検索の基礎
Chainer の Trainer 解説と NStepLSTM について
Chainer の Trainer 解説と NStepLSTM について
ChainerでDeep Learningを試すために必要なこと
ChainerでDeep Learningを試すために必要なこと
20170221 cnet live講演資料
20170221 cnet live講演資料
Making Google Cardboard and Laser Cutter
Making Google Cardboard and Laser Cutter
Chainerで学ぶdeep learning
Chainerで学ぶdeep learning
キーボード自作のススメ
1.
キーボード自作のスヽメ 株式会社レトリバ © 2017 Retrieva,
Inc.
2.
自己紹介 • 名前:河原 一哉(かわはら
かずや) • 年齢:39歳 • 所属:株式会社レトリバ • 好きなOS:Solaris, MacOS • 好きなマイコン:ATMEGA328P-AU → ATMEGA32U4 • 好きな護衛艦: いずも、かが、じんりゅう、せきりゅう © 2017 Retrieva, Inc. 2
3.
今日のお題 © 2017 Retrieva,
Inc. 3
4.
自作キーボードがアツい! • アツい理由1 • こだわりのメカニカルスイッチが使える! •
アツい理由2 • キートップをデコれる! • アツい理由3 • マイコン使って作れる! © 2017 Retrieva, Inc. 4
5.
自作キーボードレベル • 入門:自作キット買って作る • 初級:基盤や部品を買い揃えて作る •
中級:設計済みPCBを発注して作る(難易度低版) • 上級:設計済みPCBを発注して作る(難易度高版) • プロ級:回路から設計して作る © 2017 Retrieva, Inc. 5
6.
自作キーボードレベル:入門 • Massdrop(https://www.massdrop.com)などで買えます • Mechanical
Keyboardsコミュニティで時々販売 • ErgoDox, Minivan, Planckなど • 必要な部品が揃ってる • ハンダ付けするだけ • FWなども設定済み • カスタマイズ可能 • キーキャップやスイッチ選べる • ケースの色も選択可 © 2017 Retrieva, Inc. 6
7.
自作キーボードレベル:初級 • Mehkeeなどで基盤が買える • 必要な部品を別途買い揃える •
マイコン(Pro Microとか) • ダイオード • キースイッチなど • はんだ付けが必要 • マイコンなどがあり、ちょっと難易度up • ファームウェアの書き込みが必要 • ちょっと知識が必要 © 2017 Retrieva, Inc. 7
8.
自作キーボードレベル:中級 • PCB(基盤)の作成 • 基盤の設計ファイルが共有されている •
設計ファイルを基に基盤作成サービスに発注 • 1週間ぐらいでできる(けどちょっと高い) • 必要な部品を別途買い揃える • マイコン、キースイッチ、ダイオードなど • はんだ付けが必要 • ファームウェア書き込みが必要 © 2017 Retrieva, Inc. 8
9.
自作キーボードレベル:上級 • PCB(基盤)の作成 • 基盤の設計ファイルが共有されている •
設計ファイルを基に基盤作成サービスに発注 • 1週間ぐらいでできる(けどちょっと高い) • 必要な部品を別途買い揃える • マイコン、キースイッチ、ダイオードなど • 表面実装系の難易度の高いはんだ付けが必要 • ファームウェア書き込みが必要 © 2017 Retrieva, Inc. 9
10.
自作キーボードレベル:プロ級 • 勝手にやってください © 2017
Retrieva, Inc. 10
11.
有名な自作キーボード:ErgoDox • Dox氏(Dominic Beauchamp氏)らによって作られた •
DIYキーボードのための設計図・ファームウェアなどを公開 • 人間工学に基づいたキー配置、左右セパレート型 • キー配置のカスタマイズ可能 • 完成品やキットも売ってる • 超有名 © 2017 Retrieva, Inc. 11
12.
有名な自作キーボード:MiniVan • 40% keyboardプロジェクトの代表格 •
日本じゃあまり有名ではない? • Vortex COREみたいなキー配置 • いろんなキー配置ができるのもある • キー配置のカスタマイズ可能 © 2017 Retrieva, Inc. 12
13.
有名な自作キーボード:Planck • 40% keyboardプロジェクトの代表格 •
ortholinear(直行配列) • “一般的なキーボードのキーが互い違い (staggered) に配置されてるの は、かつてのタイプライターの機構上の都合 でしかない” • ミニマルデザイン • ホームポジションの隣のキーのみ • 47〜48キーしかない • キー配置のカスタマイズ可能 © 2017 Retrieva, Inc. 13
14.
有名なキーボード:Let’s Split • Planck割っちゃいました(通称レツプリ) •
日本の自作キーボードの火付け役? • 簡単な自作キットがなく、難易度初級以上 • PCBのセット販売あり (片方は引っくり返して使う) • ケースは自作する必要あり (売ってるのもあるが。。。) • ファームウェアの焼き込みが必要 © 2017 Retrieva, Inc. 14
15.
個人的な押しキーボード:Gherkin • 30% keyboard!(ガーキン:ピクルスに使うキュウリ) •
正直キーが少なすぎて使えるのかわからん • キットとかないのでPCBの発注が必要 • PCB最小発注単位は5からが多い • メインのPCBだけで20$以上 • グループバイを狙うのも手 • ファームウェアの焼き込みが必要 © 2017 Retrieva, Inc. 15
16.
個人的な押しキーボード:foobar • Gherkin割っちゃいました(名前テキトーすぎ。。。) • Let’s
Splitの30% keyboard版(てかパクリ?) • キットとかないのでPCBの発注が必要 • PCB最小発注単位は5からが多い • メインのPCBだけで20$以上 • グループバイを狙うのも手 • ファームウェアの焼き込みが必要 © 2017 Retrieva, Inc. 16
17.
自作キーボード基礎知識:メカニカルキー • 機械式のキースイッチ • キーボードのスイッチとしていっぱい並べる •
軸の色で押し心地が違う • 好みのスイッチで自作するのが醍醐味 • Cherry MXが有名 © 2017 Retrieva, Inc. 17
18.
自作キーボード基礎知識:抵抗 • 電流を制限する電子素子 • オームの法則を思い出せ! E(V)
= I(A) x R(Ω) • 5Vマイコンだと使うのだいたい2種類 • 1K, 4.7K, 10KΩ:プルアップ抵抗に使う • 470Ω:LEDに使う(10mAぐらいに制限) © 2017 Retrieva, Inc. 18
19.
自作キーボード基礎知識:ダイオード • 電流を一定方向にしか流さない電子素子 • 電流が逆流するのを防ぐ •
逆につけちゃうと回路が動かなくなるので注意 • 自作キーボードだといっぱい使う © 2017 Retrieva, Inc. 19
20.
自作キーボード基礎知識:マイコン © 2017 Retrieva,
Inc. 20 • Arduino互換ボードを使うことが多い • SparkFun社のAtmega32U4搭載ボード(通称:Pro Micro) • USBシリアル機能が内蔵 • ワンチップでキーボードができちゃう! • マイコン直接使う場合 • 動作電圧 :5V • 動作クロック :16MHz • ピンアサイン :デジタル入出力ができるピンを使用 • ポート名、物理ピン番号、Arduinoピン番号の対応に注意
21.
参考情報:ATmega32U4ピンアサイン © 2017 Retrieva,
Inc. 21 • 物理ピン数:44ピン • ポート • PA,PB,PC,PD,PE,PFの6ポート • ポートごとに機能が違う • 各ポートに入出力が数個 例)PA1:ポートAの入出力1 • 欠番あり • Arduinoピン番号も参考に
22.
自作キーボード基礎知識:出力回路 © 2017 Retrieva,
Inc. 22 マイコン GND VCC 出力:HIGH 端子 マイコン GND VCC 出力:LOW 端子 VCC(HIGH)が 出力される GND(LOW)が 出力される
23.
自作キーボード基礎知識:入力回路 © 2017 Retrieva,
Inc. 23 マイコン 端子 GND VCC スイッチ回路 オープン時の 電圧が不安定 マイコン 端子 GND VCC プルアップ回路 オープン時:HIGH クローズ時:LOW マイコン 端子 GND VCC プルダウン回路 オープン時:LOW クローズ時:HIGH 安定
24.
自作キーボード基礎知識:キーマトリックス © 2017 Retrieva,
Inc. 24 マイコン 端子 GND VCC プルアップ回路 オープン時:HIGH クローズ時:LOW GND VCC ピ ン 1 ピ ン 2 ピ ン 3 ピ ン 4 ピ ン 5 ピ ン 6 マイコン キーの数だけ マイコンの入力が必要
25.
自作キーボード基礎知識:キーマトリックス © 2017 Retrieva,
Inc. 25 マイコン GND VCC 内部プルアップ 外部抵抗が不要! マイコン VCC 入力 出力 GND 出力:LOW スイッチ押すと 電流が流れる マイコン VCC 入力 出力 GND 出力:HIGH スイッチ押しても 電流が流れない スイッチの有効化・無効化
26.
自作キーボード基礎知識:キーマトリックス © 2017 Retrieva,
Inc. 26 出 力 1 出 力 2 出 力 3 出 力 4 出 力 5 入力1 入力2 入力3 入力ピンと出力ピンを使って スイッチのオンオフを検知 入力ピン数 x 出力ピン数の スイッチのオンオフを検知可能!
27.
自作キーボード基礎知識:キーマトリックス © 2017 Retrieva,
Inc. 27 出 力 1 出 力 2 出 力 3 出 力 4 出 力 5 入力1 入力2 入力3 LOW HIGH HIGH HIGH HIGH 確認したい列の出力:LOW それ以外の列の出力:HIGH
28.
自作キーボード基礎知識:キーマトリックス © 2017 Retrieva,
Inc. 28 出 力 1 出 力 2 出 力 3 出 力 4 出 力 5 入力1 入力2 入力3 LOW HIGH HIGH HIGH HIGH 入力チェック 入力側は内部プルアップ スイッチオン:LOW スイッチオフ:HIGH 入力チェック 入力チェック
29.
自作キーボード基礎知識:キーマトリックス © 2017 Retrieva,
Inc. 29 出 力 1 出 力 2 出 力 3 出 力 4 出 力 5 入力1 入力2 入力3 HIGH LOW HIGH HIGH HIGH
30.
自作キーボード基礎知識:キーマトリックス © 2017 Retrieva,
Inc. 30 出 力 1 出 力 2 出 力 3 出 力 4 出 力 5 入力1 入力2 入力3 HIGH HIGH LOW HIGH HIGH
31.
自作キーボード基礎知識:キーマトリックス © 2017 Retrieva,
Inc. 31 出 力 1 出 力 2 出 力 3 出 力 4 出 力 5 入力1 入力2 入力3 HIGH HIGH HIGH LOW HIGH
32.
自作キーボード基礎知識:キーマトリックス © 2017 Retrieva,
Inc. 32 出 力 1 出 力 2 出 力 3 出 力 4 出 力 5 入力1 入力2 入力3 HIGH HIGH HIGH HIGH LOW 出力側のHIGH/LOWを高速 に切り替えスキャニングする
33.
自作キーボード基礎知識:キーマトリックス © 2017 Retrieva,
Inc. 33 出 力 1 出 力 2 出 力 3 出 力 4 出 力 5 入力1 入力2 入力3 HIGH オシタ! LOW HIGH HIGH HIGH
34.
自作キーボード基礎知識:キーマトリックス © 2017 Retrieva,
Inc. 34 出 力 1 出 力 2 出 力 3 出 力 4 出 力 5 入力1 入力2 入力3 HIGH キタコレ! LOW HIGH HIGH HIGH スイッチの状態を検知 スイッチオン:LOW
35.
自作キーボード基礎知識:キーマトリックス © 2017 Retrieva,
Inc. 35 出 力 1 出 力 2 出 力 3 出 力 4 出 力 5 入力1 入力2 入力3 HIGH LOW HIGH HIGH HIGH オシタ!オシタ! オシタ!
36.
自作キーボード基礎知識:キーマトリックス © 2017 Retrieva,
Inc. 36 出 力 1 出 力 2 出 力 3 出 力 4 出 力 5 入力1 入力2 入力3 HIGH LOW HIGH HIGH HIGH キタコレ? 対象のスイッチが押されてな くても誤認識してしまう。
37.
自作キーボード基礎知識:キーマトリックス © 2017 Retrieva,
Inc. 37 出 力 1 出 力 2 出 力 3 出 力 4 出 力 5 入力1 入力2 入力3 HIGH LOW HIGH HIGH HIGH キタコレ? ダイオードで逆流防止!
38.
自作キーボード基礎知識:ファームウェア • 自作キーボード向けのファームウェアが公開されてる • TMK
Firmware:自作キーボード向けの様々な機能を提供 https://github.com/tmk/tmk_keyboard • QMK Firmware:TMKの派生、機能拡張されてて便利 https://github.com/qmk/qmk_firmware © 2017 Retrieva, Inc. 38
39.
自作キーボード基礎知識:FW機能(一部) • キーマップの切り替え • 複数のキーマップを定義して切り替えられる(最大32レイヤー) •
ファンクションキー • 定義したアクションやマクロなどを実行できる(最大32キー) • キーアクション • 複数の修飾キーと1つの通常キーの組み合わせなどを1キーで押せる • レイヤーアクション • 一時的や永続的にレイヤーの切り替えを行うことができる © 2017 Retrieva, Inc. 39
40.
本題:foobar作りました! © 2017 Retrieva,
Inc. 40
41.
foobar作成:作業のあらすじ • PCB発注 • 部品調達 •
組み立て • ファームウェア書き込み © 2017 Retrieva, Inc. 41
42.
foobar作成:PCB発注 • 設計ファイルダウンロード • https://github.com/di0ib/Misc/tree/master/foobar •
foobar1_1.zip, foobarplate.zip, foobarbottom.zip • 解凍する必要はない © 2017 Retrieva, Inc. 42
43.
foobar作成:PCB発注 • JLCPCBへ発注 • https://jlcpcb.com/ •
10cm x 10cmの基盤作成が2$〜 • 早くて安い! • 発注チュートリアル • https://vimeo.com/234046247 © 2017 Retrieva, Inc. 43
44.
© 2017 Retrieva,
Inc. 44 さっきのファイル アップロードするだけ
45.
foobar作成:部品調達(部品リスト) • キースイッチ(GATERONなど) x
30:AliExpress • キートップ(DSAなど) x 30 : AliExpress • ダイオード(1N4148) x 30:秋月電子通商 • マイコン(Pro Micro) x 2:AliExpress • 5.2mm SMTスイッチ x 2:Amazon • TRRSジャック(Sparkfun PRT-12639) x 2 :千石電商 • TRRSケーブル(0.5m – 1.0m) x 1 :千石電商 • 12mmスペーサー x 12 :Amazon • M2ネジ x 24 :Amazon © 2017 Retrieva, Inc. 45
46.
foobar作成:部品調達 • AliExpress • 輸送に時間がかかる恐れあり(10日〜30日程度) •
最近はちゃんと届く • 秋月電子通商 • 平日18:30閉店なので注意 • 千石電商 • ジャックは1号館( Sparkfunコーナー) • ケーブルは2号館(レジ横あたり) © 2017 Retrieva, Inc. 46
47.
foobar作成:組み立て(手順) • キースイッチ並べ ←
はじめにやる、向きに注意 • ダイオードつける ← 向きに注意 • TRRSジャック、SMTスイッチ、ピンヘッダつける • キースイッチつける • マイコンつける ← 必ず最後につける、向きに注意 • 底用基盤ねじ止め © 2017 Retrieva, Inc. 47
48.
foobar作成:組み立て(キースイッチ並べ) © 2017 Retrieva,
Inc. 48
49.
foobar作成:組み立て(キースイッチ並べ) © 2017 Retrieva,
Inc. 49
50.
foobar作成:組み立て(キースイッチ並べ) © 2017 Retrieva,
Inc. 50 注意:向きを揃える
51.
foobar作成:組み立て(ダイオード) © 2017 Retrieva,
Inc. 51 向きに注意 ■にダイオードの線を合わせる キースイッチ側につける (逆に付けるとマイコンにぶつかる) はんだ付け後 ピンヘッダの足を切る (基盤にぶつかる)
52.
foobar作成:組み立て(ピンヘッダなど) © 2017 Retrieva,
Inc. 52 表面実装のはんだ付けテクニック ・部品を置く前に1箇所はんだを盛る ・部品をおいて盛っておいたはんだを温める ・他の部分をはんだ付けする キースイッチ側と逆に付ける しっかり押し付けてはんだ付けする
53.
foobar作成:組み立て(キースイッチつけ) © 2017 Retrieva,
Inc. 53 必ずマイコンをつける前に はんだ付けする
54.
foobar作成:組み立て(マイコンつけ) © 2017 Retrieva,
Inc. 54 マイコンの向きに注意 Bar側はマイコンが裏になるように付ける
55.
foobar作成:組み立て(マイコンつけ) © 2017 Retrieva,
Inc. 55 マイコンの向きに注意 foo側はマイコンが表になるように付ける
56.
foobar作成:FW書き込み(環境構築) • git $ brew
install git • avrdude $ brew install avrdude –with-usb • ファームウェアのダウンロード $ git clone https://github.com/di0ib/tmk_keyboard • カレントディレクトリの変更 $ cd tmk_keyword/keyboard/foobar © 2017 Retrieva, Inc. 56
57.
foobar作成:FW書き込み(左側) • 左側(メイン基板の裏がbar)セットアップ マイコンにUSBケーブルつなぐ $ COM_PORT=/dev/tty.wchusbserial1410
make eeprom-left(3秒以内に基板のSMTスイッチ押す) $ COM_PORT=/dev/tty.wchusbserial1410 make program(3秒以内に基板のSMTスイッチ押す) © 2017 Retrieva, Inc. 57
58.
foobar作成:FW書き込み(右側) • 右側(メイン基板の裏がfoo)セットアップ マイコンにUSBケーブルつなぐ $ COM_PORT=/dev/tty.wchusbserial1410
make eeprom-right (3秒以内に基板のSMTスイッチ押す) $ COM_PORT=/dev/tty.wchusbserial1410 make program (3秒以内に基板のSMTスイッチ押す) © 2017 Retrieva, Inc. 58
59.
foobar作成:FW書き込み(動作確認) • 左側のマイコンにUSBケーブルをつなぐ • 右側と左側をTRRSケーブルでつなぐ •
パソコン側でキーボードの設定を行う(USキーボードに設定) © 2017 Retrieva, Inc. 59
60.
© 2017 Retrieva,
Inc. 60
61.
デフォルトキーマップ:レイヤー0 Retrieva, Inc. A S
D F G H J K L ESC Q W E R T Y U I O P Z X C V BS SPC B N M ENT 61
62.
デフォルトキーマップ:レイヤー0 長押し Retrieva, Inc. LCTL
LALT TL3 TL4 TL2 TL1 TL5 RALT RCTL RSFT 62
63.
デフォルトキーマップ:レイヤー1 Retrieva, Inc. F1 F2
F3 F4 F5 F6 F7 F8 F9 F10 1 2 3 4 5 6 7 8 9 0 TRNS TRNS TRNS TRNS DEL TRNS TRNS TRNS TRNS TRNS 63
64.
デフォルトキーマップ:レイヤー2 Retrieva, Inc. F11 F12
TRNS TRNS TRNS TRNS TRNS TRNS TRNS TRNS ! “ # $ % & ‘ ( ) 0 TRNS TRNS TRNS TRNS DEL TRNS TRNS TRNS TRNS TRNS 64
65.
デフォルトキーマップ:レイヤー3 Retrieva, Inc. TRNS TRNS
TRNS TRNS TRNS , . / ; ` TRNS TRNS TRNS TRNS TRNS - = [ ] ¥ TRNS TRNS TRNS TRNS TRNS TRNS ← ↓ ↑ → 65
66.
デフォルトキーマップ:レイヤー4 Retrieva, Inc. < >
? : “ _ + { } | TRNS HOME PGDN PGUP END TRNS TRNS TRNS TRNS TRNS TRNS TRNS TRNS TRNS TRNS TRNS TRNS TRNS TRNS TRNS 66
67.
© 2017 Retrieva,
Inc.
Download now