20210415のMacに関する記事は6件です。

Mac で noble を使って BLE対応のデバイスをスキャンする(2021年4月版)

過去に、2019年のアドベントカレンダーで以下の記事を書いた際に使った「@abandonware/noble」、当時はサンプルで作った BLEスキャンのプログラムを実行できたものの、スキャン対象にしたデバイスが Node.js のプログラムの出力に出てきませんでした。 (そして、obniz-noble を使って、デバイスと obniz の間で BLE通信をさせた場合は、スキャンされたデバイスに表示されていたという状況でした) ●【IoTLT 2019】新しい obniz で obniz-noble を試す(2019/12/22) - Qiita  https://qiita.com/youtoy/items/1a2e92ae7a83df7e9a82 そして1年以上が経過した 2021/4/15、この日に開催された IoTLT vol.74 で @n0bisuke さんが「@abandonware/noble」の話をされていて、久しぶりに公式ページを見てみたら手順の記載が少しだけ増えていて、「これは、上記の記事を書いた際にうまくいかなかった原因が分かったかも!?」というのがあって今回の記事を書きました。 ちなみに以下の内容が、上に書いている「@abandonware/noble」の話が登場していた LT です。 最後は @n0bisuke さんが、Node.js+Bluetoothの話の最新事情。 #IoTLT pic.twitter.com/mLI7M2FYbW— you (@youtoy) April 15, 2021 2019年にやろうとしていたこと 当時、やろうとしていたことは「toio というデバイスと Mac の間で、noble を使った Node.js のプログラムで通信をさせる」という内容でした。 当時の記事の内容の一部抜粋ですが、こんな感じでセットアップをして使う流れでした。 そして、BLEスキャンを行うプログラムは実行できたものの、スキャン対象にしたデバイスが出力結果の中に出てきませんでした。 Node.js のプログラム以外での動作確認として、Apple が提供している「Bluetooth Explorer」で BLEデバイスのスキャンを試したところ、そちらではスキャン結果に toio が出てきていました。 その後、Google Chrome上で Web Bluetooth API を使った JavaScript のプログラムを動かしたりした際も、BLEデバイスをスキャンできて接続から制御まで行うことができていました(例えば以下の内容など)。 ●toio を音で制御してみた(Audio用の Teachable Machine でベルやタンバリンの音を機械学習) - Qiita  https://qiita.com/youtoy/items/37f70bb4ce630e6cbd92 ●Web Bluetooth API で BLE(Chrome と micro:bit をつなぐ) - Qiita  https://qiita.com/youtoy/items/cd2c3d4770d4ad75a321 そして、これ以降は noble を使った BLE通信は使わない状態が長らく続きました。 2021年4月に公式ページで見た内容 そして、冒頭に書いたイベントで取り上げられたのを聞いて、久しぶりに 「@abandonware/noble」のページを見てみたところ、Mac で使う手順で以下の記載が増えていました。 ターミナルアプリや iTerm2 といったアプリで、上記の設定はした覚えがなく、「この設定を追加すれば動いたりするのでは?」と思い試してみました。 試した内容 とりあえず、Mac の設定でターミナルアプリと iTerm2 の 2つに Bluetooth の利用を許可する設定をしました。 そして、適当に作ったフォルダで 2019年当時も行った手順と同様に npm install @abandonware/noble を実行します。 あとは、toio の電源をいれて、その後に以下のプログラムを実行してみました。 2019年当時に動かしたプログラムの一部を、現在の @abandonware/noble のページのサンプルを見て、少しだけ書きかえました。プログラム内で行う基本的な処理は、2019年当時のものと同じです。 var noble = require('@abandonware/noble'); noble.on('stateChange', function(state) { if (state === 'poweredOn') { noble.startScanningAsync(); } else { noble.stopScanningAsync(); } }); noble.on('discover', async (peripheral) => { console.log(`${peripheral.address} (${peripheral.advertisement.localName})`); }); toio は 2台動かしていて、上記を実行した結果、以下がの出力が得られて無事に toio をスキャン結果に表示させることができました。 おわりに 今回、細かな検証をしていないので「Node.js のバージョンが当時より上がっている中で、当時と違いが何か出ていることが影響した可能性」や「@abandonware/noble のソースコードに何か手を加えられたことが影響した可能性」は残ります。 個人的には、とりあえず「2019年当時にできなかったことが、現在できる状況になった」というだけで大満足です! そして、今回は toio で試しましたが、あれこれ試してみたいと思うデバイスは micro:bit だったりするので、こちらも試してみられればと思います。 余談 今回の記事を書くきっかけとなったイベントにて、以下のツイートがされていて、とても気になりました。 これは試してみなければ! よもやと思ったらやっぱりNode-REDでもBLE関連復活してた。abandonwareさんのnoble使ってるみたい #iotlthttps://t.co/IB0AbUqP8L とか— よしの (@yoshinosandesu) April 15, 2021 ●node-red-contrib-generic-ble (node) - Node-RED  https://flows.nodered.org/node/node-red-contrib-generic-ble
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

kali linux 2021.1をとりあえず日本語化ためにやること。

インストールできたらまずは日本語化 kali linuxをインストールできたらまずは日本語化しましょう。 使用環境 ホストOS:Mac 仮想化:VirtualBox 仮想OS:kali linux 2021.1 流れとやること ログイン ↓ ターミナルを開く ↓ 1.日本語化関連のパッケージをインストール 2.日本語表示にする 3.キーボードを日本語のやつを選ぶ 4.タイムゾーンを日本に設定 ↓ リブート(再起動) リブートはこまめにやったほうがいいかも・・・。 やってみる 1.日本語化関連のパッケージをインストール sudo update-locale LANG=ja_JP.UTF-8 まあまあ時間かかる・・・。 2.日本語表示にする sudo dpkg-reconfigure locales 「ja_JP.UTF-8 UTF-8」を選ぶ ※Spaceでチェックを入れて、Enterで決定 ※その後の画面でもja_JP.UTF-8 UTF-8を選ぶ 3.キーボードを日本語化 設定(Setting)からキーボード(Keybord)を選ぶ レイアウト(Layout)のタブを選ぶと、英語が設定してるのがわかる 日本語を追加して、英語は削除しておく。 4.ついでに時間(タイムゾーン)も設定 右上の時間表示を右クリック(トラックパッドだと2本指タップ) んでプロパティを開く。 タイムゾーンに「japan」を入れて選ぶだけ 閉じるのじゃ。 おしまい。
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

kali linux 2021.1を日本語化する。

インストールできたらまずは日本語化 kali linuxをインストールできたらまずは日本語化しましょう。 使用環境 ホストOS:Mac 仮想化:VirtualBox 仮想OS:kali linux 2021.1 流れとやること ログイン ↓ ターミナルを開く ↓ 1.日本語化関連のパッケージをインストール 2.日本語表示にする 3.キーボードを日本語のやつを選ぶ 4.タイムゾーンを日本に設定 ↓ リブート(再起動) リブートはこまめにやったほうがいいかも・・・。 やってみる 1.日本語化関連のパッケージをインストール sudo update-locale LANG=ja_JP.UTF-8 まあまあ時間かかる・・・。 2.日本語表示にする sudo dpkg-reconfigure locales 「ja_JP.UTF-8 UTF-8」を選ぶ ※Spaceでチェックを入れて、Enterで決定 ※その後の画面でもja_JP.UTF-8 UTF-8を選ぶ 3.キーボードを日本語化 設定(Setting)からキーボード(Keybord)を選ぶ レイアウト(Layout)のタブを選ぶと、英語が設定してるのがわかる 日本語を追加して、英語は削除しておく。 4.ついでに時間(タイムゾーン)も設定 右上の時間表示を右クリック(トラックパッドだと2本指タップ) んでプロパティを開く。 タイムゾーンに「japan」を入れて選ぶだけ 閉じるのじゃ。 おしまい。
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

Mac を買ったので Unity と VS Code で今日からゲーム開発

あらすじ 「今日Macを買いましたので、これからゲーム開発環境を整えます」風。 手順 HomebrewとChromeは最初に入れておくのがベタベターですね。 下記がインストールの際の依存関係階層図です。 ほぼほぼほぼ順不同です。そのため、この記事では敢えて順不同で書きます。 Homebrew をインストール Chrome をインストール VS Code をインストール 拡張機能 Debugger for Unity をインストール 拡張機能 Mono Debug をインストール 拡張機能 C# をインストール Unity Hub をインストール Unity をインストール .NET Core をインストール Mono をインストール X Code をインストール 各種設定を行う Homebrew いろんなアプリのインストール手順がめんどくさいので、サボるためにHomebrewをインストールします。 https://brew.sh/ に行きます インストール用のワンライナースクリプトをコピーします command+spaceで スポットライト検索を開きます terminalと検索します ターミナルが出てくるのでそのまま Enterで起動します 先ほどのワンライナースクリプトを command+vで貼り付けます Enterでワンライナースクリプトを実行します 「 was successfully installed!」とか表示されれば完了です Chrome Homebrewを使ってインストールします。 先ほど開いたターミナルにカーソルを置きます brew cask install google-chromeと入力します Enterでインストールを実行します 「https://docs.unity3d.com/Manual/index.html」をブックマークに登録します VS Code Homebrewを使ってインストールします。 先ほど開いたターミナルにカーソルを置きます brew cask install visual-studio-codeと入力します Enterでインストールを実行します 下記の3つの拡張機能は必須です。 https://marketplace.visualstudio.com/items?itemName=Unity.unity-debug https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csharp https://marketplace.visualstudio.com/items?itemName=ms-vscode.mono-debug インストールはもちろんコマンドです。ターミナルで下記を実行します。 code --install-extension Unity.unity-debug code --install-extension ms-vscode.mono-debug ※vscodeのインストール後にターミナルを開きなおしてから行ってください。 ms-dotnettools.csharpはUnity.unity-debugをインストールする時に半自動的にインストールされます。 .Net Core Homebrewを使ってインストールします。 先ほど開いたターミナルにカーソルを置きます brew install dotnetと入力します Enterでインストールを実行します Mono Homebrewを使ってインストールします。 先ほど開いたターミナルにカーソルを置きます brew install monoと入力します Enterでインストールを実行します Unity Hub Homebrewを使ってインストールします。 先ほど開いたターミナルにカーソルを置きます brew cask install google-chromeと入力します Enterでインストールを実行します ※Unity Hub は、素晴らしいことに、"cask"オプション無しでもしっかりインストールできます。エイリアス化してあるんですね。ログをよく見るとcaskを呼び出してます。 Unity Homebrewを使ってインストールはできません。 しーかたがないので、Unity Hubからインストールします。 先ほど Unity Hub をインストールしたことを思い返します command+spaceで スポットライト検索を開きます unityと検索します Unity Hubが出てくるのでそのまま Enterで起動します 左上のアカウントボタンをクリックします サインインボタンをクリックします(アカウントは事前に作成しておきましょう) 「ACTIVATE NEW LICENSE」ボタンをクリックします 私の場合は「Personal」を選びました 「Done」ボタンをクリックした後に再度サインインを求められる場合もあるようです 下記のようになっていればライセンス認証が完了です ちなみに、「MANUAL ACTIVATION」ボタンを選ぶと、「Unity Hub」でライセンス認証用ファイルが生成されます。このファイルを「Unity Hub」経由の手動でUnityに送りつけるとライセンスファイルが返送されてきます。このライセンスファイルを「Unity Hub」に手動で認識させて完了です。 ここまできたら、上部の「← Preferense」から一度戻って、左側のメニューから「Installs」を選びます 「ADD」ボタンをクリックします LTSが付いていて一番最近の西暦年号に近いバージョンを選んでおきます 「NEXT」ボタンをクリックします 必要な項目だけチェックを入れて「NEXT」します Andoid Build Support iOS Build Support 日本語 EULAを流し読みします プログレズバーが進むので、完了っぽくなったらインストール完了です Xcode 残念ながら「Homebrew」ではインストールできないようなので、「App Store」からインストールします。 command+spaceで スポットライト検索を開きます storeと検索します App Storeが出てくるのでそのまま Enterで起動します xcodeで検索するとでてくるので「Get」ボタンをクリックします そうすると「Install」ボタンに切り替わるので、(めんどくさっ!と思いながら)再びクリックします ちなみにこの時、AppleIDでログインさせられるので、ない人は事前に作成しましょう インストールが完了したので、xcodeを起動して、ログインします。 ちなみに 前はbrew installやupgradeの前に、brew 自体のアップデートが必要だったりしましたが、今は自動でやってくれるので必要ありません。また、brew cask installが必要なものは、brew installすると勝手にcaskを追加して実行してくれることが増えました。さらに、以前はhomebrewをインストールする前にxcodeを自前でインストールする必要がありました。これも、現在はインストールスクリプトを実行すると自動で行われるので意識しなくて良くなりました。 Excelsior!
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

Macを買ってやったこと

はじめに MacBook Air を新しく購入した際に、初めにやったことを備忘録として残しておこうと思い、記事を書きました。 気になる箇所や誤っている箇所などありましたら、ご指摘いただけますと幸いです。 Xcodeのインストール App Store からインストールします。 途中、下記のようなポップアップが表示されるため、return キーをクリックして先に進みます。 (参考 : Mac に Rosetta をインストールする必要がある場合) Homebrewのインストール Homebrewとは Mac用のパッケージマネージャー。 ツールのバージョンを一括で管理することができます。 インストール方法 https://brew.sh/index_ja に記載してあるコマンドを実行します。 2020/04現在のコマンド $ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" Pathを通す インストール中に下記のようなWarningが出てしまいました。 Warning: /opt/homebrew/bin is not in your PATH. こちらは、環境変数($PATH)に /opt/homebrew/bin が追加されていないことを表しているため、追加します。 ついでに、zshの設定ファイル(~/.zshrc)も存在していなかったため、新規作成します。 $ touch ~/.zshrc $ echo 'export PATH="$PATH:/opt/homebrew/bin"' >> ~/.zshrc $ cat ~/.zshrc export PATH="$PATH:/opt/homebrew/bin" これで、brew コマンドが使えるようになりました。 Homebrewに問題かないか検証 $ brew doctor Your system is ready to brew. Homebrewのバージョンを確認 $ brew -v Homebrew 3.1.3 Gitのインストール デフォルトでインストールされているGitを確認 Xcodeをインストールした時点で Apple Git というものが入っています。 Gitのバージョンを確認 $ git --version git version 2.24.3 (Apple Git-128) こちらをそのまま利用してもいいのですが、バージョン管理をHomebrewで行うためにHomebrewでインストールしなおします。 HomebrewでGitをインストール Homebrewでインストールできるパッケージを確認 $ brew search git ==> Formulae bagit git-series bash-git-prompt git-sh bit-git git-sizer cgit git-ssh digitemp git-standup easy-git git-subrepo git git-svn-abandon git-absorb git-test ... git というパッケージが存在していることを確認できたため、git パッケージをインストールします。 gitパッケージのインストール $ brew install git Homebrewでインストールしたパッケージの一覧を表示 $ brew list ==> Formulae gettext git pcre2 gitパッケージ以外にもインストールされているパッケージがありますが、これはgitパッケージが依存しているパッケージなので、問題ありません。 gitパッケージが依存しているパッケージを表示 $ brew deps git gettext pcre2 インストールはこれで完了しましたが、パスを通していないため、まだ git コマンドを打っても Apple Git が表示されます。 $ git --version git version 2.24.3 (Apple Git-128) ここから、パスを通していきます。 まず、Homebrewでインストールしたgitがどこにあるかを確認します。 gitのインストール先を確認 $ brew --prefix git /opt/homebrew/opt/git インストール先を確認したら、先ほどのHomebrewの時と同じようにパスを通していきます。 Homebrewでインストールされたgitが優先されるよう、~/.zshrcに追記 $ echo 'export PATH="/opt/homebrew/opt/git/bin:$PATH"' >> ~/.zshrc ~/.zshrcファイルの中身を実行 $ source ~/.zshrc これで、gitコマンドを打つとHomebrewでインストールしたgitが使えるようになりました。 gitのバージョンを確認 $ git --version git version 2.31.1 Gitの初期設定 ユーザ情報を設定する 公式ページにもあるように、ユーザ名とメールアドレスを設定します。 $ git config --global user.name "First-name Family-name" $ git config --global user.email "username@example.com" 登録した情報は下記コマンドで確認することができます。 $ git config --global --list sshキーを作成し、Githubに登録する こちらのページを参考に、GitHubにssh接続できるようにします。 Visual Studio Code のインストール 公式ページを参考にインストールします。 Homebrewを使ってインストール $ brew install --cask visual-studio-code 参考 Qiita記事 MacにNode.jsをインストール MacOSでCommand line tools for XcodeとHomebrewのインストール Linux入門 ~「パスを通す」とは~ apple gitではなく、brewでgitの管理をしたい Gitをインストールしたら真っ先にやっておくべき初期設定 その他 zshrcとzprofileについて Homebrewのインストールと使い方。よく使うコマンド一覧と詳しい解説まとめ
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

【macOS】Automatorで「pdf => png」「png => pdf」のクイックアクションを作る

参考元 Automatorを使って、PDFをpngに変換してPDFファイルと同名のディレクトリに置く 夏目祐樹 これのパターンを元に手を加えた やりたいこと pdfへの直書きができなかったり,写真をそのまんまpdfでまとめたかったり,そういう時にGUIをいちいち立ち上げるのは面倒すぎた あとBig Surのプレビュー.appが72dpiでしかラスター出力できなくなってて詰んだ,それだと細かく書ききれないからマジで辛い… 縛り Automator使用 簡単に 汎用に 単一完結 クイックアクションとして呼び出す それならファイルを右クリックして呼び出せる アプリケーションとして?そんなん要らんやろ Apple Scriptなし Finderやプレビューの呼び出し説明書を読む気力が全くない 本当ならScriptを書いて完結させるのがスマートだとは思う PDF to PNG 1つのpdfから複数のpng 1.pdfファイルの受け入れ ポイント Automatorにはパス操作向けのテキスト処理の機能がないからbashのちからを借りるぜ! 入力は引数として入ってきた順番で$1,$2みたいにになるぜ! 標準出力がそのままモジュールの出力になるぜ! basenameにこんな感じにフルパスと拡張子を渡せば元のファイルの名前が得られるぜ! 2.生成するpngファイルの命名 ポイント デフォルトだと元のpdfの名前がつくようになってるぜ! 3.元のpdfファイルがあるフォルダのパスを取得 ポイント bashのちからを借りるぜ! pngファイルをしまうフォルダを作るのに必要だぜ! dirnameにこんな感じにパスを渡せば1段だけ上のディレクトリのパスが得られるぜ! 4.収納するフォルダのパスを生成 ポイント bashのちからを借りるぜ! pngファイルをしまうフォルダを作るのに必要だぜ! さっき作ったフォルダの下にさっきつけた名前でフォルダを作った時のパスが得られるぜ! ただし末尾に_PNGsをつけてわかりやすくしてやるんだぜ! 5.収納するフォルダを生成 ポイント こっちも末尾に_PNGsをつけるんだぜ! 6.pngをレンダリング ポイント 他の拡張子を選ぶといろんな設定が出てくるぜ! ちなみに350dpiは日本の印刷機には多い要件らしいんだぜ! 7.名前を編集してフォルダに収納 ポイント 作成日の昇順で並べてから1スタートの連番を通すとページ数になるぜ! (ところでフォルダに収納しなかったファイルはどこにいくんだろうな) PNG to PDF 複数のpngから1つのpdf 1.pngファイルの受け入れ ポイント さっきとほとんど同じだぜ! 複数選択の場合だとFinder表示上のトップファイルが変数の先頭になるっぽいぜ! 2.生成するpdfファイルの命名 ポイント さっきとほとんど同じだぜ! 3.元のpngファイルがあるフォルダのパスを取得 ポイント さっきとほとんど同じだぜ! 元の画像たちはなるべく1つのフォルダにまとめて置いとくことをおすすめするぜ! 4.収納するフォルダのパスを生成 ポイント さっきとほとんど同じだぜ! ただし末尾に_PDFをつけてわかりやすくしてやるんだぜ! 5.収納するフォルダを生成 ポイント こっちも末尾に_PDFをつけるんだぜ! 6.pdfをレンダリング ポイント pngファイルの名前の順にページを編み込めるぜ! 並びを指定したい時は名前を変えればいいんだぜ! 7.名前を編集してフォルダに収納 ポイント さっきとほとんど同じだぜ! 基本名だけ変えた方が安全だぜ! 感想 確かに手間は省けるようになった. ただしpdfからの変換は全てのページがpngになるので,不要なものは手動で消さねばならない …おとなしくクリスタEXとpdf対応IOプラグインを買いたいなと思いました.CELSYS万歳!
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む