検索キーワード「R4 Minima」に一致する投稿を関連性の高い順に表示しています。 日付順 すべての投稿を表示
検索キーワード「R4 Minima」に一致する投稿を関連性の高い順に表示しています。 日付順 すべての投稿を表示

2023年7月26日水曜日

MacでArduino UNO R4 Minimaを動かしてみました

Arduino UNOの現時点での最新版として、R4シリーズ(MinimaWiFi)がリリースされています。少し前にアナウンスがあったので知ってはいたのですが、買ってしまうと本業に支障が出ると思ったため購入を控えておりました。ここに来て、仕事が一段落したタイミングで入荷のお知らせがあったため購入してみました。
#R4シリーズには、ルネサスRA4M1チップ(32bit Arm® Cortex®-M4内包)が使われています。

まずはMacBook Proにつないで動作確認をしてみます。インストールしてあったArduino IDEは、ver.1.8.16でした。Arduino IDEのダウンロードサイトからver.1.8.19をダウンロードしてインストール(zipを解凍してアプリケーションフォルダ内に上書きするだけ)しました。

次に、Arduino UNO R4 Minima(以下「R4 Minima」と略記)をUSB-C↔USB-AケーブルでMacとつないだ状態でArduino IDEを起動します。(既にLチカプログラムがインストールされているようで、給電すると自動でオンボードのLEDが点滅します)すると、Arduino IDEからR4 Minimaを使うためにはパッケージのインストールが必要というような案内が表示されます。リンクになっている文字列をクリックすると、「ボードマネージャ」のウィンドウが開いて「Arduino UNO R4 boards」パッケージが表示されます。「インストール」ボタンをクリックしてインストールスタート。特に問題なくすぐにパッケージがインストールされ、R4 Minimaが認識されるようになりました。

この状態で、「ツール」メニューから「ボード:」→「Arduino Renesas UNO R4 Boards」とたどって「Arduino UNO R4 Minima」を選択します。「シリアルポート:」の方は、R4 Minimaを抜き挿しして確認すると「/dev/cu.usbmodem…」として認識されているようなのでこれを選びました。試しにLチカプログラムの点滅時間を変更して何回か書き込んでみましたが、問題なく書き込めました。
#しばらくいじっていると、「/dev/cu.usbmodem…(Arduino UNO R4 Minima)」と表示されるようになりました。これなら迷わなくてよいです。

以前はベータ版だったArduino IDE ver.2.xが、現在はver.2.1.1になってむしろ主流になっているようなので、ArduinoのダウンロードサイトからmacOS用のものをダウンロードしてインストールして試してみました。こちらは、すんなりと「Arduino UNO R4 Minima」を選ぶことができて、同時に接続先として「/dev/cu.usbmodem…」と表示されていました。1ステップで簡単に設定ができるようになって便利になりました。同じようにLチカプログラムを書き込んでみましたが、問題なく書き込めました。Arduino IDEは、インターフェイスがわかりやすく進化したver.2.1.1の方が使いやすいように感じました。ver.2.xを使っていろいろと試してみたいと思います。

2025年9月7日日曜日

Arduino® UNO R4 WiFiを使ってみる〜Linuxでも使えるかリベンジも兼ねて

前回の続きです。Arduino UNO R4 WiFiの動作確認をしています。Arduino UNO R4 Minima動作確認のときは、Linux版のArduino IDEで動かすことができなかったところで終わっていたのですが、今回、R4 Minimaでの再チャレンジも併せてR4 WiFiの動作確認もしていきたいと思います。
#いつものLinuix Mintで動かしている自作PCで検証します。

まず、Linux版Arduino IDE(2.3.6)を起動して、改めて「Arduino UNO R4 Boards(1.5.0)」をインストールすることにします。「ボードマネージャ」で「UNO R4」を検索して、「Arduino UNO R4 Boards」を選択して「インストール」ボタンをクリックします。以前うまく行かなかったときから、R4 Minimaへの対応状況に変化があるか確認するために、「ツール」メニューから「ボード:」を「Arduino UNO R4 Minima」に、「ポート:」を「/dev/ttyACM0(Arduino UNO R4 Minima)」に設定しました。「ファイル」メニューから「スケッチ例」→「01.Basics」→「Blink」を開いてLチカ動作確認をしてみます。残念なことに、R4 Minimaでは、まだdfu-utilのDFUエラーが解消されておらず、エラーが出てしまって書き込むことができませんでした。

ダメ元で、ボードをR4 WiFiに交換して動作確認をすることにしました。「ツール」メニューから「ボード:」を「Arduino UNO R4 WiFi」に、「ポート:」を「/dev/ttyACM0(Arduino UNO R4 WiFi)」に変更して、「→(コンパイル&書き込み)」ボタンをクリックしてみました。すると、問題なくプログラムを書き込むことができてLチカ動作確認ができてしまいました。\(^O^)/(一人で勝手に盛り上がる)

こうなると、Linuxで使えないR4 Minimaが不便(不憫)に感じます。ファームウェアのアップデートで解決するかもしれないと考えて試行錯誤してみましたが、アップデートできるArduinoの種類が決まっているようです。詳しくは、公式のサポートページ「Use the Firmware Updater in Arduino IDE」に情報がありました。現時点では、R4 Minimaのファームウェアアップデートには対応していないようです。
#R4 WiFiの方は、Linux MintでもMacBook ProでもArduino IDEを使ってファームウェアアップデートができました。

R4 WiFiの方は、MacBook Proでの動作確認で使用した「PlayAnimation」をLinux版Arduino IDEで開いて無事にコンパイル&書き込みができました。調子に乗って、以前はできなかった「Arduino UNO R4 WiFiを使って、ネットから日時取得 のプログラム」を持ち込んで、ダメ元でコンパイル&書き込みをしてみたところ、問題なく動いてしまいました。(狂喜乱舞!)どうやら、プログラムの書き込みが完了したor書き込まれた状態で電源をつないだときに、Wi-Fiにつなぐことを試みているようなのですが、そのタイミングでうまくWi-Fiにつながることができないと、それ以降はもう一度電源をつなぎ直す以外にWi-Fiにつなごうとしてくれなくなるようでした。
#参考にしたプログラムを少しいじれば、解決するかもしれませんが…。

そんなことならと思い、MacBook Proの方でも再度チャレンジしてみましたが、コンパイル&書き込みの後、何度か電源をつなぎ直すと動いていることが確認できました。いろいろと試行錯誤させられましたが、うまく動かなかった原因がプログラムの問題ではなかったとわかってホッとしました。つまずきの原因が、意外と単純なことだというのはよくあることなのでよしとします。

2023年8月4日金曜日

Linux MintでArduino UNO R4 Minimaが使えるかやってみる

以前の続きです。Linux Mint動かしているPCArduino UNO R4 Minima(以下「R4 Minima」と略記)が使えるかやってみました。MintにインストールされていたArduino IDEは、64 bit版ver.1.8.19(現時点での最新版)でした。

R4 MinimaをUSB-C↔USB-AケーブルでPCとつないだ状態でArduino IDEを起動します。すると、macOSの時と同じようにR4 Minimaを使うためにパッケージをインストールしろという案内が表示されます。リンクになっている文字列をクリックすると、「ボードマネージャ」のウィンドウが開いて「Arduino UNO R4 boards」パッケージが表示されます。「インストール」ボタンをクリックしてインストールするところまで同じで、特に問題なくすぐにパッケージがインストールされてR4 Minimaが認識されました。

この状態で、「ツール」メニューから「ボード」→「Arduino Renesas UNO R4 Boards」とたどって「Arduino UNO R4 Minima」を選択します。「シリアルポート」の方も、「(Arduino UNO R4 Minima)」がついている方を選択しました。これで準備ができたはずでした。試しにと思い、Lチカプログラムを書き込もうとしましたが、エラーが出てしまいます。どうやらDFU(Device Firmware Upgrade)ユーティリティ関連のエラーのようで、うまくプログラムが書き込めないことがわかりました。

どうしたものかとGoogle先生に聞いてみると「DFU Error - Cannot Upload Sketch to R4 Minima」にArduino IDEでエラーが起きていることが報告されていました。
#「Arduino OPTA、ダウンロードエラーの詳細」によると「世界中で困っている」らしいです。(^^;;;
#macOS上のArduino IDEでは問題なく使えるので、Linux版の修正更新を待つ以外ないのかもしれません。

同様に、Linux版のArduino IDE ver.2でもやってみました(Linux Mintの「ソフトウエアマネージャ」から「Arduino」を検索してVer.2(ver.2.1.1)を見つけてインストールした)が、結果は同じでDFUユーティリティのエラーが出て書き込めませんでした。orz

2025年12月9日火曜日

Freenoveのコントロールボード(Arduino UNO R4互換)を使ってみる

Arduino® UNO R4が販売されるようになって2年以上が経過しています。そろそろ互換ボードが出てきても良いかなと思っていたところ、AmazonFreenoveという中国企業が互換機を販売しているのを見つけたので、どんなものかと思って買ってみました。Arduino UNO R4 Minima互換の「Control Board V5 Rev4 Mini(「V5 Rev4 Mini」と略記)」と、Arduino UNO R4 WiFi互換の「Control Board V5 Rev4 WiFi(「V5 Rev4 WiFi」と略記)」の2つです。
#Freenoveは、学習用のロボットキットなどを製造販売しているメーカーのようです。

本家UNO R4には、ルネサスの「RA4M1」というマイクロチップが搭載されています。チップの表面には、「R7FA4M1」と刻印されています。Freenove版のMiniとWiFiにも、同じくR7FA4M1チップが搭載されていました。同じチップが使われているということは、このチップ由来の不具合は、解消されていないままである可能性が高いということになります。そのあたりも含めて、これまでの知見をもとに検証をしていきたいと思います

今回の動作確認は、MacBook Proを使います。また、Arduino IDEは2.3.6を使うことにします。V5 Rev4 MiniをMacBook Proにつないで、Arduino IDEを起動します。「ツール」メニューから、「ボード:」を「Arduino UNO R4 Boards」→「Arduino UNO R4 Minima」を選択し、「ポート:」を「/dev/cu.usbmodem…(Arduino UNO R4 Minima)」を選択します。ボードマネージャで「Arduino UNO R4 Boards」をインストールしていない場合は、先にインストールしておく必要があります。

次に、「ファイル」メニューから、「スケッチ例」→「01 Basics」→「Blink」を開きます。これで、「→(コンパイル&書き込み)」ボタンをクリックすると、無事にLチカの動作確認ができました。基本的なことではありますが、互換機としての動作に問題はないようです。

V5 Rev4 Miniの動作確認ができたところで、続けてV5 Rev4 WiFiも動作確認をしていきます。同じ環境で動作確認をするために、V5 Rev4 WiFiに差し替えてから「ボード:」を「Arduino UNO R4 Boards」→「Arduino UNO R4 WiFi」に変更し、「ポート:」を「/dev/cu.usbmodem…(Arduino UNO R4 WiFi)」に変更します。動作確認用のプログラムとして、「ファイル」メニューから「スケッチ例」→「(Arduino UNO R4 WiFi用のスケッチ例)LED_Matrix」→「PlayAnimation」を開いて、「→(コンパイル&書き込み)」ボタンをクリックしてみました。すると、無事にマトリクスLEDにアニメーションが表示されて、問題なく動作することが確認できました。調子に乗って、以前の動作確認で使った、「Arduino UNO R4 WiFiを使って、ネットから日時取得 のプログラム」でも動作確認してみましたが、こちらも問題なくマトリクスLEDに現在時刻が表示されました。

Linuxでも試してみようと思い、Linux Mintで動かしている自作PCを使って確認をしてみました。結果としては、本家UNO R4と同じように、V5 Rev4 Miniの方は、「dfu-util」のエラーでコンパイル&書き込みができませんでした。V5 Rev4 WiFiの方は、「PlayAnimation」も日時表示も問題なくコンパイル&書き込みができました。ということで、FreenoveのArduino UNO R4互換コントロールボードでも、全く同じように使うことができることがわかりました。お買い得なのでArduinoブランドにこだわりがなければ選択肢としてありだと思います。

2025年9月2日火曜日

Arduino® UNO R4 WiFiを使ってみる

これまでにも何度か紹介しているArduinoですが、フィジカル・コンピューティングと言えばなマイコンボードで、広く普及し始めた(「自分が使い始めた」と同義ですが)Arduino Duemilanoveの時代から愛用しています。小学校教育にフィジカル・コンピューティングを導入する研究をしてきたので、自宅には当時購入したDuemilanoveが複数枚あります。その流れで、UNOLeonardoとその互換ボード、M0、Genuino 101(Arduino 101)などもあって、シールド類も含めるとかなりの数に上ります。

以前、Arduino UNO R4 Minima動作確認をしていましたが、ようやくArduino UNO R4 WiFiを入手したので、こちらも動作確認をしていきたいと思います。
#おさらいではありますが、R4シリーズには、ルネサスRA4M1チップ(32bit Arm® Cortex®-M4内包)が使われています。
#UNO R3までのArduinoは、PCなどと接続する際に標準サイズやmicroサイズのUSB-Bコネクタを使っていましたが、R4からはUSB-Cコネクタが採用されていることも大きな違いになっています。

R4 WiFiは、その名の通り無線LANに接続できる機能が付加されているのですが、私自身は「マトリクスLED(8*12)」の方に興味があり、これを使いこなしてみたいという衝動に駆られて購入したのでした。ネットで情報を探していると、Wi-Fi経由でNTPサーバから現在時刻を取得する使い方が紹介されていました。ありがたいことに、取得した現在時刻をマトリクスLEDに表示するプログラムを作って紹介しているサイト「Arduinoマイコンボードでの実験備忘録」を見つけたので、今回は「Arduino UNO R4 WiFiを使って、ネットから日時取得」と「Arduino UNO R4 WiFiを使って、ネットから日時取得 のプログラム」を参考にしながら動作確認をしていくことにしました。

動作確認は、いつものMacBook Proを使います。Arduino IDE(バージョンは「2.3.6」)を起動して、「ツール」メニューから「ボード:」の項目を選択して、「Arduino UNO R4 Boards」→「Arduino UNO R4 WiFi」と選択します。(「Arduino UNO R4 Boards」をインストールしていない場合は、ボードマネージャでのインストール作業が必要です)R4 WiFiをUSBケーブルでつないで「ツール」メニューから「ポート:」の項目を選択して、接続したR4 WiFi(/dev/cu.usbmodem…(Arduino UNO R4 WiFi))を選択します。これで準備は完了です。

先ほど紹介させていただいた「プログラム」をもとに、少しだけ改造して作ったプログラムを「→(コンパイルと書き込み)」ボタンをクリックして作業を進めます。コンパイルにエラーはなく、問題なく書き込まれた感じになりました。R4 WiFiの方も動こうとしている感じがするので、プログラム自体は書き込めているのだろうと思います。しかし、うまく動きません。中の処理がどうなっているのかわからないので、どこでつまずいているのかはわかりません。でも、動作が途中で止まってしまうようなので、原因を考えていきたいと思います。

仕方がないので、「ファイル」メニューから「スケッチ例」→「(Arduino UNO R4 WiFi用のスケッチ例)LED_Matrix」→「PlayAnimation」を開いて使うことにしました。「→(コンパイルと書き込み)」ボタンをクリックするとエラーもなく無事にコンパイルと書き込みが行われ、Animationが表示されました。これで、マトリクスLEDの初歩的な使い方わかりました。あとは、はじめに動作実験を行った「マトリクスLEDに時刻を表示する」プログラムがどうすれば動くのか、試行錯誤してみたいと思います。

2026年7月9日木曜日

音声合成LSI(ATP3011とATP3012)を使ってみる〜自作シールドを本家版のArduino UNOで使ってみる

以前の続きです。これまで、株式会社アクエストが開発している「音声合成LSI(「ATP3011(←データシートPDF)」を使って音声を出すために、Arduino用自作シールドを作成してみたのですが、Arduino UNO R3(互換機)との通信には成功している感じはするのですが、音声が出せずにつまずいている状態です。Arduino互換機の「Seeeduino XIAOSeeed Studio)を使ってATP3011で音声を出して、一つの基板にSeeeduino XIAOとATP3011を載せた音声ボードを作るところまではできているので、このやり方や考え方が通用しないということに苦しめられています。
#この音声合成LSIの詳細は、公式Webサイトの「音声合成LSI「AquesTalk pico LSI」」をご覧ください。

今回の実験用に本家版のArduino UNO R3とArduino UNO R4 minima、その互換機のControl Board V5Freenove)を使うことにします。Arduinoの互換機については、これまでにも様々なものを購入して使ってきました。多くの場合、本家のものと比べても遜色なく使えたので、あまり意識して使い分けていませんでした。本家版のArduino UNOでやってみて、結果が大きく変わるほどの違いがあるのかやってみないとわかりませんが、動かない原因を究明するためにやってみます。

自作シールドで使っているArduino用ユニバーサルシールド基板は、サンハヤトの「UB-ARD03」です。VccとGNDは、ユニバーサルシールド基板の左(GND)と右(Vcc)の各1列に接続されているので、電源の取り回しが楽にできるような設計になっています。また、misawa @ELIXIRさんの「1000円で作る日本語音声合成装置」を参考にして、回路を組んでArduino IDEのプログラムを作りました。もう一つ、小さなブレッドボードを載せた自作シールドも使ってみます。

音声出力は、YAZAWATVR35WH(アンプ内蔵スピーカー)と普段使いのXINYI Sini Audio(XY-C50LYouTubeの動画)にDAISOの300円スピーカーを改造したスピーカーをつないだ環境でも確認しています。Arduino IDEは、macOS版v2.3.10を古いiMacで動かしてコンパイルと書き込み作業を行いました。動作確認の結果は以下のとおりです。

〈Arduino UNO R3〉

自作シールドでは、互換機でやったときの状況と同様に、数値を読み上げているはずのタイミングで定期的にノイズが発生している(通信はできている)のですが、肝心な「音声」としての出力ができませんでした。ブレッドボードシールドでも同じような結果になったので、公式のデータシートで示されている「基本回路」を参考にして回路を組み直してもやってみましたが、アンプ手前で音量が落ちますが、結果は全く同じでした。

〈Arduino UNO R4 minima〉

自作シールドでは、R3のときと同様に、数値を読み上げているはずのタイミングで定期的にノイズが発生している(通信はできている)のですが、肝心な「音声」としての出力ができませんでした。ブレッドボードシールドでもUNO R3のときと全く同じで、回路を組み直しても定期的なノイズしか聴こえませんでした。

〈Freenove control board V5 (Rev4) MINI〉

自作シールドでは、残念ながらこれまでの2つと同様に、数値を読み上げているはずのタイミングで定期的にノイズが発生している(通信はできている)のですが、肝心な「音声」としての出力ができませんでした。ブレッドボードシールドでもやってみましたが、やはりこれまでの2つと同じで、定期的なノイズしか聴こえませんでした。

困ったもので、お手上げ状態でした。ここまで来ると、もう一度基本に立ち戻って、1からやり直してみるのが良さそうな気がします。サンハヤトのユニバーサルシールド基板に原因があるのかもしれませんし、ブレッドボードでやってもうまくいかないのならもっと根本的な原因があるのかもしれません。状況を整理してから、再チャレンジしてみたいと思います。

※過去記事は、「音声合成LSI(ATP3011とATP3012)を使ってみる」(←リンク)からご覧ください。