タグ

ブックマーク / qiita.com (204)

  • 【Linux】Bluetooth HCIスヌープログの取り方 - Qiita

    はじめに LinuxBluetoothのHCIスヌープログを取得する方法をまとめました。 ※Androidで取得する方法もあります → https://qiita.com/KentaHarada/items/42ed619e8f571d1de845 確認環境 Ubuntu 22.04.2 LTS Thinkpad X260 WireShark v3.6.2 Bluetooth HCIスヌープログとは? HCI(Host Controller Interface)はBluetoothのプロトコルの一種で BluetoothプロトコルスタックとBluetoothのチップ間のプロトコルです。 エアーを飛んでいるパケットとは異なりますが、高価なアナライザーを用いずにBluetoothの低レイヤの解析を行うことができます。 どんな時に使うの? Bluetoothデバイスの接続不良などの問題解析に使

    【Linux】Bluetooth HCIスヌープログの取り方 - Qiita
  • 大画面テレビの録画用HDDの代わりにRasberry Pi4のUSB OTG機能を生かしてUSBtoLAN(NAS)なストレージゲートウェイを構成する - Qiita

    やることは極めて単純。 家のNASをRaspberry Pi4(以下Pi4)にマウントして録画領域のディスクイメージを作成する。 Pi4のUSB OTG機能を利用してPi4が外付けHDDとして振舞うようにする。 家の大画面テレビにUSB接続して、外付けHDDに予約していると見せかけてNASに録画するためのコンバータとして仕上げる。 役に立つかもしれない人 こんな人向け。 テレビに外付けHDDを接続して録画をしている。 家にNASも持っている。 外付けHDDではなくNASにLAN経由で直接録画できたらよいのにとイライラしている。 LGテレビのようにDLNA/DTCP-IPサーバへの録画機能に対応していない機種を利用している。 わざわざレコーダーを買うほどの熱意も予算はない。 Pi4の使い所に困っている。 nasneなんて持ってない。 USB OTGをためしたい。 USB OTG(On-The

    大画面テレビの録画用HDDの代わりにRasberry Pi4のUSB OTG機能を生かしてUSBtoLAN(NAS)なストレージゲートウェイを構成する - Qiita
  • GNU Radio 紹介(RTL-SDR、FMステレオ、スケルチ、RFゲイン) - Qiita

    はじめに ソフトウェア無線(SDR : Software-defined radio)は、ソフトウェアによりラジオを構築する手法です。 SDRは、アナログの電波をADC(analog to digital converter)で、デジタル化して、ソフトウェアによる信号処理でラジオを定義します。 GNU Radio はソフトウェア無線を実装するための信号処理ブロックを提供するソフトウェア・ツール・キットです。 今回は安価なUSBドングルチューナ(RTL-SDR)で、GNU Radio を動かしてみました。 GNU Radio インストールからFMステレオラジオ構築(スケルチ、RFゲイン付き)までを紹介します。 ハードウェア (RTL-SDR.COM より) 今回はハードウェアとして上記のUSBドングル「RTL-SDR BLOG V.3」を使用しました。 周波数 28MHz ~ 1700MHz

    GNU Radio 紹介(RTL-SDR、FMステレオ、スケルチ、RFゲイン) - Qiita
  • HackRFとGNU Radioを使ったオープンソースの BLE パケットスニファ - Qiita

    はじめに Bluetooth Low Energy Advent Calendar 2016 6日目担当の @yousuke です。普段はBLE を使ったサービスのサーバサイドの実装を担当しています。 今回はオープンソースの技術を組み合わせて、アドバタイズパケットの受信とコンソール上に表示することのみを目的とした、簡易的なBLEのパケットスニッフィングシステムを作ってみた話を書きます。 背景 BLE 対応のデバイスを始めとして、一般的な無線装置は次のような構成となっており、これらは専用のハードウェアにパッケージングされた状態で販売されています。 いままで、それが当たり前すぎて他の選択肢があるなんていう発想がなかったので気づかなかったのですが、BLEの関連技術を調査している最中にソフトウェア無線の存在を知りました。 どうやら、最近のコンピュータは上記のデジタル信号処理を実行するにあたっての十

    HackRFとGNU Radioを使ったオープンソースの BLE パケットスニファ - Qiita
  • FPGAで6809を作ってFLEXを動かすぞ - Qiita

    目的 FPGA上にZ80を構築し、CP/MっていうOSを動かした。 公開されている通りに、やっただけですけどね。 そうすると、今度は68xxでもOSを動かしたい。 なぜなのか、実は今は無きモトローラ派なんですね。 あの、ごてごてと増改築した80系の命令は余り好みじゃ無い。 ◆◆◆ そうだ、究極の8ビットMPUでOSを動かそう ◆◆◆ というわけで、究極の8ビットMPUと言われた6809で取り合えずFLEXを動かすぞ。 と言っても、とっくの昔に市販品が存在したますが。 6809がもう少し早く世に出ていれば、世界は変わったかもしれないけど、其れは夢だな。 経緯 自分で一から構築も頑張れば可能かも知れないが、取り合えず市場調査。 1.OSの情報は入手でけた 2.シミュレーターは複数存在する(20年以上前から有る) 3.FPGA上に6809を構築するのも既出 情報はそれなりに有るのだが、既に成熟、

    FPGAで6809を作ってFLEXを動かすぞ - Qiita
  • 初めてのPICマイコン - Qiita

    PICマイコンを使ってみる 過去に触ったことのなかった、PICマイコンを使ってみる。PIC理解にはwikiよりも、こちらの記事の方がよいと感じた。 環境 PIC18F57Q43 Curiosity Nanoボード。USB経由でプログラムの書き込みができるので選択(専用ライタが不要)。 MPLAB X IDE。ソフトウェア開発環境。 PIC18F57Q43ボード マイクロチップ家サイトのユーザーガイドに、ボードの基情報あり。 MPLAB X IDE + aplha 必要なツール類を家サイトから入手する。 - MPLAB X IDE - Cコンパイラ(PIC18は8ビット) IDEとは別にCコンパイラをインストールするようだ。 MCC(MPLAB code configurator) MPLAB X IDEのプラグインであり、ピンアサイン(GPIOのIn/Out)などを視覚的に行えるので

    初めてのPICマイコン - Qiita
  • Sipeed LicheeRV セットアップまとめ - Qiita

    1.はじめに SipeedのLicheeRVというボード及び拡張モジュールを入手したのでセットアップなどの覚書その2です。 LicheeRVはAllwinnerが開発したD1というRISK-VアーキテクチャのSoCを搭載したSBCです。前回は最小構成のCoreボードでUbuntu20.04を動かしてみましたが、DockとPanelモジュールを入手したの動かしてみます。 購入先はこちら。 Lichee RV D1(core) Lichee RV Dock Lichee RV Panel 仕様等はこちらにもアップされています。 強つよの人は自分でOSビルドしちゃうんでしょうけど、無理な私は提供されているOSイメージで動かします。OSビルド環境もdockerで提供されています。 OSはデスクトップ環境付きのDebianもしくは無しのTinaが選択できます。 2.提供されているOSイメージ  ※2

    Sipeed LicheeRV セットアップまとめ - Qiita
  • VerilogHDLのデバッグをVSCodeでテストベンチを使わずにやる - Qiita

    はじめに 趣旨 DigitalJSで手軽にVerilogHDLをデバッグする環境を構築する方法を共有したい 内容 Visual Studio Code(以降、VSCode)でDigitalJSを使ってVerilogHDLをデバッグする環境を整える手順 導入 FPGA開発の流れ FPGAの開発をしたい場合、VerilogHDL/SystemVerilogやVHDLといった言語で回路を記述する(回路のひとまとまりをモジュールと呼ぶ。詳細は割愛)。モジュール作成後、安全のためやデバッグのしにくさから、実機に乗せる前に検証のために論理シミュレーションを行い、動作検証を行う。その際、基的にはテストベンチと呼ばれるシミュレーション用のモジュールを作成し、波形を確認しながら検証する。 問題点 テストベンチ用のモジュールは独特でわざわざ書き方を覚える必要があるし、初心者にはちょっととっつきにくい。また、

    VerilogHDLのデバッグをVSCodeでテストベンチを使わずにやる - Qiita
  • M5Stack で LEDマトリクスパネル (HUB-75) を光らせる - Qiita

    いわゆる HUB75 という規格のLEDパネルを M5Stack で光らせます。光らせて何かをするというより、LED Matrix Panel の光る仕組みについて実験してみたという主旨です。 参考 LEDドットマトリクスパネル HUB75規格について調べてみた ESP32で64x32 LEDマトリクスパネルを制御 HUB75 LED Matrix Panel 屋外の高いところとかに、輝度がやや高めの LED ディスプレイがあったら、だいたいこの規格の LED パネルが使われています(多分)。最近は国内でも簡単に購入できるようになりました。そこそこの輝度があって、制御に必要な機器もそれなりの値段で入手できることから、業務用としてはかなり広く使われているという印象です。 HUB75 の仕様については、下記の記事で詳しく書かれているので、ここでは要点だけ書きます。 PIC32のDMA機能を使っ

    M5Stack で LEDマトリクスパネル (HUB-75) を光らせる - Qiita
  • RaspberryPi を安定運用させる - Qiita

    はじめに しまねソフト研究開発センター(略称 ITOC)にいます、東です。 教育用ワンボードマイコンとして販売されている Raspberry Pi (以下ラズパイ)は、教育用のみならず実験用、産業用とさまざまな分野で使われつつあります。一方、マイクロSDカードをメインストレージに使用している事や、OSがクライアントPCよりの設定にしてある事などから、長期安定運用には向かない面も存在します。 このレポートでは、OSや稼働させるソフトウェアの設定など、できるだけ簡易に再現可能な方法により、可能な限りラズパイを安定して長期運用させることを狙います。また、その題材として、デジタルサイネージ(*)を作ってみます。 私は、2000年ごろからフラッシュメモリを使ったFA機器の開発を皮切りに、10年ほど前からは民生用フラッシュメモリ(CF,SD,USBメモリ)を起動デバイスとした機器を開発・運用していまし

    RaspberryPi を安定運用させる - Qiita
  • 【備忘録】業務で実際使用したcurlコマンドメモ①(疎通確認) - Qiita

    1.curlコマンドとは 任意のサーバーやWebサイトへhttpリクエストを送って、そのレスポンスをチェックすることができるコマンド curlの後に-Xオプションを指定することでデータの送受信を指定することができる。 (-Xオプション無しだとデフォルトでGET(受信)となる。) 2.よく使用するオプション表 オプション 説明

    【備忘録】業務で実際使用したcurlコマンドメモ①(疎通確認) - Qiita
  • curlコマンドでapiを叩く - Qiita

    はじめに curlコマンドを使ってapiを叩いたりするのですが、curlコマンドってただapiを叩くためのコマンドなの?みたいなレベル感でした。 業務で使ったコマンドを簡略化すると下記になるのですが、オプションの意味とかよくわからなかったので勉強がてらまとめてメモしました。 参考にしたサイトは下記のマニュアル https://curl.haxx.se/docs/manpage.html curlコマンドとは curlコマンドとはサーバから、もしくはサーバへデータ転送を行うコマンドです。 curlコマンド自体はapiを叩くためだけに存在しているわけではないです。 httpリクエストができるコマンドなのかなーって思ってたのですが、実際には HTTPやHTTPSといったプロトコルに対応しているため、GETでAPIを叩いたりすることができるというだけで、 curlコマンド自体はFTP,SFTP,L

    curlコマンドでapiを叩く - Qiita
  • jqコマンドでjsonから必要なデータのみを取得する - Qiita

    以前curlコマンドについて書いたのですが、curlコマンドとよく組み合わせてjqコマンドも使うのでまとめました。 jqコマンドとは? jqコマンドはフィルターだとマニュアルに記載がありますね。 jsonをinputとして受け取り、様々な処理をした結果をアウトプットしてくれます。 A jq program is a “filter”: it takes an input, and produces an output. マニュアルは英語なのですが、翻訳をしてくれている記事もありました。(古いですがあまり情報は変わっていない気がします。) 軽量JSONパーサー『jq』のドキュメント:『jq Manual』をざっくり日語訳してみました インストールはhomebrewから可能です。 jqコマンドでデータの整形をしてみる 郵便番号APIから取得したデータに対してjqコマンドで処理をしてみたいと思

    jqコマンドでjsonから必要なデータのみを取得する - Qiita
  • ビルドツールとしてのcolcon - Qiita

    はじめに colconといえば、ROS2パッケージをビルドするときに使うツールとして使われています。 が、ROSパッケージでなくてもC++(cmake)やPython(setup.py)プロジェクトであれば使うことができます。 複数のプロジェクトを正しい順序でビルドするケースが多い場合に非常に有用です。 この記事では、ROS2パッケージビルド以外の使い方、複数のC++プロジェクトのビルド方法について紹介します。 colconとは colconとは、複数のパッケージ間、プロジェクト間の依存関係(*1)を解決して正しい順序でビルドできたり、テストを実行できるビルドツールです。 例えば、4つプロジェクトA,B,C,Dが以下のように依存している場合、 A,B,C,Dのトップディレクトリで の1つのコマンド(*2)を打つだけで、Aをビルドし、BとCとビルドを同時にビルドしたあと、Dをビルドすることが

    ビルドツールとしてのcolcon - Qiita
  • CMake: コマンド引数の種類 - Qiita

    はじめに みなさん、こんにちは。前回の記事で、CMake言語がコマンド呼び出しの羅列であることを書きました。今回は、そのコマンドに渡す引数についてです。 CMakeのコマンド引数には以下に示す複数の種類があり、それぞれに特徴があります。 Unquated Argument まずは、Unquated Argument について述べます。Unquated Argument は以下のように記述します。

    CMake: コマンド引数の種類 - Qiita
  • CMakeの使い方(その1) - Qiita

    はじめに 2月のはじめ頃、CMakeを使ってビルドを自動化しようと思い、色々ググってCMakeLists.txtを作り試行錯誤したのですが、その時は結局断念しました。というのも、abcというステップがあるとすると、ググッて得られる解説はabcのaやbが抜けていきなりcから解説されたものが多く、初心者にはきつかったからです。特にcmake.orgのチュートリアルはまさにその典型で、チュートリアルのStep 1からして長過ぎて、当に何が必要なのかわかりにくい・・・orz ところが、今学期受けているHigh Performance Computingという講義で行われたCMakeの使い方の解説がわかり易すぎて、あっという間に自作ライブラリをCMakeでコンパイルすることができるようになり、CMakeの便利さに感動してしまいました。私と同じくCMake初心者という方にこの感動を共有すべく、ここに

    CMakeの使い方(その1) - Qiita
  • M5Stackの書き込みファイルを配布する - Qiita

    はじめに... 2020年は色々とM5Stackを触る機会が増えまして、そうなってくると自分が作成したコードを配布して利用してもらうってことが発生しました。 配布先が利害共有関係だったりある一定の知識がある場合なら、「Arduino IDEをインストールして・・・」とかいうのもありですが、M5Stackとなるとさらにひと手間もかかります。 もっと言いますと、最近の企業さんではセキュリティの関係で誰でも安易にアプリケーションを追加できるとも限りません。 そこであらかじめコンパイルしたデータをバッチファイルで書き込みができるようにするというのが今回のテーマです。 参考 まずは参考にさせてもらった記事を。 http://k-hiura.cocolog-nifty.com/blog/2019/06/post-17ebf9.html そもそもArduino IDEで書き込みしたら... M5Stac

    M5Stackの書き込みファイルを配布する - Qiita
  • UbuntuにQtをインストール - Qiita

    はじめに UbuntuやRaspberyPiにGUIで実装する機会があり、IDEを「Qt」にしました。 Qt初心者向けに詳しく書きたいと思います。 Ubuntuのインストール Ubuntuは最新の「22.04」を使用しました。 Qtの記事なので、インストール等の詳細は割愛します。 インストール完了後は、必ずUpdateを行ってください。 Qtのインストール インストール 以下のコマンドをターミナル上で実行します。 sudo apt-get -y install qtbase5-dev sudo apt-get -y install clang sudo apt-get -y install qtcreator

    UbuntuにQtをインストール - Qiita
  • libgpiodの使い方 - Qiita

    ずっと昔からWiringPiを使ってRaspberryPiのGPIOを制御していました。非常に簡単で便利なライブラリでしたか、2019/08/06のニュースで非推奨になることがアナウンスされました。 代わりの方法を探したところ/sys/class/gpioにあるファイルを操作することで制御することができるようですがこちらもlinux 4.8から非推奨になっていたようです。 じゃあどうすればいいんだ〜となりましたがきちんと公式ページにlibgpiodを使うように書いてありました。 しかし公式ページに載っていたリンク先では簡単な説明とソースコードだけでは初心者にとってはなかなか分かりにくいと思うのでここに簡単にまとめたいと思います。 ちなみにI2CやSPIはここでは扱いません(libgpiodは多分非対応)のでご留意ください。 (以下の内容は手元に転がっていたRaspberryPi2でテストし

    libgpiodの使い方 - Qiita
  • Unity + Python + 箱庭でロボットを強化学習させてみよう! - Qiita

    概要 TOPPERS/箱庭では、様々なロボットがありますが、これらのロボットを強化学習できる環境を準備しました。 Python使って、Unity上のロボットの強化学習で試してみたいと思われる方にはお役に立てる環境と思います! ちなみに、PythonからChatGPTAPI使って、箱庭ロボットを動かすこともできます。 ロボットの種類 箱庭で利用できるロボットとしては以下があります。 荷物運搬ロボット ETロボコン競技用ロボット(HackEV) EV3 ベースの電車モデル EV3 ベースの信号モデル TurtleBot3 TurtleBot3 Burger TurtleBot3 waffle ドローンモデル 荷物運搬ロボット 記事で、強化学習用に用意したもので、利用可能です。 ETロボコン競技用ロボット(HackEV) ET ロボコン競技用ロボットと同じモデルです。荷物運搬ロボットと同じ通

    Unity + Python + 箱庭でロボットを強化学習させてみよう! - Qiita