ESP32 esp-idf I2s Master clock out put

ESP32 esp-idf I2s マスターモードで、MCLK(I2S master clock) の出力について、
何とか出来たので書いてみました。

 esp32_datasheet_en.pdf の記述では、マスタークロックを出力できると記載があります。
4.1.12 I²S Interface
 ..
 When one or both of the I²S interfaces are configured in the master mode, the master clock can be output to the external DAC/CODEC.

また、別のページには、
The MCLK (I2S master clock) output can be put out through a CLK_OUT pin only.
とあるので、下記シンボルがそれみたいです。

soc/io_mux_reg.h
CLK_OUT1 - 3

ESP32 esp-idf Serial Over Bluetooth サンプルプログラム #3 です。

前回は、プログラムを一応作って、Windows10 にそれぞれ、ESP32 の UART0 のターミナル、Bluetooth の SPP Serial のターミナル、
UART2 の USB TTL-Serial のターミナルの3個を使って、SPP Serial -> UART2 USB TTL-Seial、
SPP Serial <- UART2 USB TTL-Seial へのテキスト文字の転送迄できました。

今回は、実際の運用を想定して、Window10 で、C,C++ でSerial 通信が出来るプログラムを
作って、そのプログラムで、Bluetooth COMポートへアクセスして、多くのデータの送信、受信が
RS232Cに繋がったデバイス (これも、Window10 で、C,C++ でSerial 通信が出来るプログラム) と
問題なく出来る事を確認できれば、完了ぞね。と行きたい所ですが、

TeraTerm に、ファイルの転送機能があったので、SPP Serial の TeraTerm から、テキストファイルを開いて転送してみました。

ESP32 esp-idf Serial Over Bluetooth サンプルプログラム #2 です。

前回は、bt_spp_acceptor をベースにして、Windows10 Bluetoooth でペアリグして、
Windows10 側の シリアル・ターミナル で、Bluetoooth COMポートをオープンして、
シリアル・ターミナル からのキー入力にたいして Echo Back 出来る迄出来ました。

今回は、ESP32 の UART2 部分になります。
esp-idf のサンプルでは、uart_echo と uart_events がありますが、
今回は、uart_events を使って、ドライバーをUART2対応にします。
プログラムとしては、下記になります。

uart_events_example_main.c

ESP32 esp-idf Serial Over Bluetooth サンプルプログラム

ESP32 Serial Over Bluetooth サンプルプログラムと言えば、
インターネットで検索すると、ESP32 Arduino 版の簡単なライブラリーが、紹介されていますが、

https://github.com/espressif/arduino-esp32/tree/master/libraries/BluetoothSerial
#include "BluetoothSerial.h"
BluetoothSerial SerialBT;

これでは、余りに簡単すぎるので、オンちゃんは敢えて、esp-idf にこだわってみました。

ESP32 esp-idf  Serial Over Bluetooth は、Bluetooth Classic の SPP プロファイルを使うみたいです。

サンプルは、https://github.com/espressif/esp-idf のサンプルプログラムにありました。
esp-idf / examples / bluetooth / bluedroid / classic_bt / bt_spp_acceptor/

tensorflowでMASK R-CNNによるSemantic Segmentation

tensorflowでMASK R-CNNによるSemantic Segmentation
みて、おんちゃんも試してみました。

 元ネタは、
https://github.com/tensorflow/models/tree/master/research/object_detection
なので、

windows10 のMSYS2 ターミナルから、適当なディレクトリで、

$cd /c/app/tensorflow
$git  clone https://github.com/tensorflow/models.git

ダウンロードして、

TensorRT 5.1 Windows10 での試し #2

TensorRT 5.1 の Windows10での試し、第2回として、
今回は、 Pytorch 1.0 Object Detection faster-rcnn の試し で使った学習済みモデルを、
TensorRT 5.1 に持って行って実行できるか試してみます。

TensorRT で Pytorch の学習済モデルを使うには、ONNX format にしてから、TensorRT で取り込んんでやれば良いとの事です。

https://docs.nvidia.com/deeplearning/sdk/tensorrt-sample-support-guide/index.html#onnx_mnist_sample 

その前に、 おんちゃんは、TensorRT5.1 で C++ 開発をするにあたり、下記ページを参考にしています。
tensorrt-developer-guide > 2. Working With TensorRT Using The C++ API

TensorRT 5.1 Windows10 での試し

TensorRT 5.1 を Windows10 で試して見ました。

おんちゃんの環境は、
1) Windows10
2) Visual Studio 2017 Community
3) GeForce GTX 1050 Ti
4) CudaToolkit は、 10.1
5) cuDNN は、 7.5.1 じゃ。

ここに書いてあることは、TensorRT5.1 のダウンロード時に、NVIDIA Developer のアンケートに
記入すると、送られてくる Get Started with TensorRT™ のメールに書かれている内容に従って
行っちょります。大変参考になりました。

対応マトリックスが、下記ページにあります。
https://docs.nvidia.com/deeplearning/sdk/tensorrt-support-matrix/index.html

GPUカードに関しては、
4. Hardware And Precision の箇所に、
TensorRT supports all NVIDIA hardware with capability SM 3.0 or higher.  と記載があるので、
おんちゃんの、GeForce GTX 1050 Ti でも大丈夫でしょうか?

但し、Windows10 だと、C++ だけみたいぞね。Python は、将来のサポートみたいです。

インストール方法は、下記ページぞね。
https://docs.nvidia.com/deeplearning/sdk/tensorrt-install-guide/index.html

Zip インストールを選ぶので、下記箇所を参考に
4.4. Zip File Installation

書籍 "C++で学ぶディープラーニング" のサンプルに出てくる cuMat/cuMat.h のコンパイルエラーに関して。
https://github.com/takezo5096/cuMat/blob/master/cuMat.h

おんちゃんの、開発環境
Windows10
VisualStudio 2017 Community (VS 2017 用 x64 Native Tools コマンド プロンプト -> cl.exe)
Cuda tool kit 10.1(cuda_10.1.105_418.96_win10.exe)
boost_1_68_0

で、上記 cuMat.h をインクルードしてプログラムサンプルをコンパイルしようとすると、エラーが出たので、その対応方法を書いてみました。

Pytorch 1.0 Object Detection faster-rcnn の試し

Windows10 + Pytorch 1.0 + VisualStudio 2017 環境で試せる Object Detection faster-rcnn が
GitHub に紹介されていたので、試してみました。

 https://github.com/facebookresearch/maskrcnn-benchmark

インストレーションは、
https://github.com/facebookresearch/maskrcnn-benchmark/blob/master/INSTALL.md

を参考にして行います。

但し途中の箇所でエラーが出てそれから進みません。

Raspberry Pi (Raspbian) C light http server

Raspberry Pi (Raspbian) で動く 簡単な C light http サーバーを作ってみました。

同一ネットワーク上の、PCのブラウザーから、このRaspberry pi の c Http サーバーにアクセスして、サーバー上のPerl cgi, C++ cgi プログラムを直接実行して、その結果を、PCのブラウザーで確認できます。

軽量なので、Raspberry Pi で、それなりに動作します。
おまけに、CGI.cpp , CGILite.cpp ライブラリ を使えば、C++プログラムをサーバー上で、CGIとして実行できるので、
ブラウザーを使った、クライアント&サーバープログラムを容易に開発できます。

C++であれば、Raspi のポート操作も簡単にできます。試しに、LEDチカ、I2C 温度センサーの表示など作ってみてはどうぞね!

興味のある方は、こちらからダウンロードしてください。
Ras-pi C Light http server

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

アイテム

  • esp32-gysfdmaxb-server_2018.10.6.jpg
  • ESP32_gysfdmaxb_Server_resp-181005-1.jpg
  • esp32_gps-view-181005-1.jpg
  • ESP-WROOM-02-G`PS-2017.10.21-1l.jpg
  • PIC32MX_hid_basic_moouse_bredboard2_2017.10.15.jpg
  • PIC32MX_hid_basic_moouse_bredboard1_2017.10.15.jpg
  • PIC32MX hid_basic_mouse_usart_pps-output-settings_2017_10_14.jpg
  • PIC32MX hid_basic_mouse_usart_pps-input-settings_2017_10_14.jpg
  • PIC32MX hid_basic_mouse_usart_pin-table_2017_10_12.jpg
  • PIC32MX hid_basic_mouse_usart_pin-diagram_2017_10_12.jpg

ウェブページ

サイトナビ