11
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Splatoon2で自動ドット打ちするやつをArduino UNO R3でやる

Last updated at Posted at 2017-09-10

基本的にはSplatoon2で自動ドット打ちしてくれるやつをWindos10のWSLで使うと同じです.めっちゃ参考になりました(よんたさんありがとうございます)

1日くらいうまくいかなくて困ったポイントがあるのでまとめます.
ダウンロード.gif

この記事を元にGithubのSwitch-FightstickのREADMEの Compiling and Flashing onto the Arduino UNO R3 を読みながらやりました.

さて

teensyは持ってないけどArduinoならある!という人のための記事です.
teensy版と手順は同じなので,Arduinoでの異なる点を中心に書いていこうと思います.

注意点

  1. パソコンにUSB接続した時にArduinoとして認識されなくなるのでArduino IDEなどの機能が使えなくなります.戻し方を確認してから始めてください.
  2. 元記事ではWSLを使っていましたが自分はVMware上のUbuntuを使いました.それが原因となるトラブルについては調べてないです.

Switch-Fightstickをインストール

Arduinoだとバージョン1.0.0fでは動かないみたいです

なので非同梱版でやります

git clone https://github.com/abcminiuser/lufa.git
git clone https://github.com/shinyquagsire23/Switch-Fightstick.git

現時点での最新版ではコンパイル時に参照するLUFAのディレクトリが大文字なので,cloneした lufaLUFA にします.
(もしくはmake時に指定)

Arduinoへの書き込みの前に

teensy.exeを使わずにdfu-programmerをつかいますが,通常のArduinoの機能に戻せなくなると困ると思うので先に戻し方を説明します.(ただそこまで詳しくないので困った人は Arduino DFU とかでググってください)

ファームウェアのダウンロード

最新のファームウェアが https://github.com/arduino/Arduino/tree/master/hardware/arduino/avr/firmwares/atmegaxxu2 にあるので,その中の arduino-usbserial/Arduino-usbserial-uno.hex をダウンロードします.このデータがArduinoを戻すデータです

入れる
sudo apt-get install dfu-programmer

ArduinoをパソコンにUSB接続します

ここで,Arduinoのこのピンをショートさせます
IMG_20170911_031931.jpg
自分はピンセットとかドライバーで触っています.
ジャンパがある人は使ってください
ジャンパを刺す→USB接続→外すの順です.

hexファイルのあるディレクトリで,

sudo dfu-programmer atmega16u2 erase
sudo dfu-programmer atmega16u2 flash arduino-usbserial/Arduino-usbserial-uno.hex
sudo dfu-programmer atmega16u2 reset

とすると指定したHEXファイルが書き込まれます.

コンパイル

Makefile を一部修正します.MCUはマイクロコントロールユニットのことらしいです

MCU          = at90usb1286 # 変更前(Teensy2.0++)
MCU          = atmega16u2  # 変更後(Arduino UNO R3)

LUFAのディレクトリを大文字にしてない人はここの LUFA_PATH を書き換えてもいいみたいです

できた Joystick.hex を同様の方法で書き込みます.

まとめ

というわけでTeensy版とほぼ同じ内容の投稿になってしまいました.
つまづきポイントは

  1. 最新版を使う(1.0.0fだと動かない)
  2. dfu-programmerを使う

です.Arduinoを持っている人はTypeCにするやつを買うだけでできるのでとてもお手軽.ぜひやってみてください.

追記

png2c.py-p オプションを付けると2値化した画像をプレビューできます.

高速版のプルリクが来てました https://github.com/shinyquagsire23/Switch-Fightstick/pull/18

上のほうが荒れるけどゆるふわ勢なのでよくわかりません.
→TypeCアダプタ無しでドックに直挿ししたら荒れなくなりました
接続後,使うコントローラを設定する時にLR同時押しします.それのタイミングがうまくいってなかったせいみたいです

↓元画像
splatoonpattern.png

png2c.py したやつ
bilevel_splatoonpattern.png

↓実行したやつ
DJyHBcwV4AAUMlN.jpg

11
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?