FreeRTOSのTCP/IPスタックについて

こんにちは!。ギースと申します。

下記環境で、FreeRTOS+TCP/IPスタック搭載を検討しています。

IDE:e2studio 2020-10

ツールチェーン:CCRX Compiler v3.0.2

対象ボード:アルファプロジェクト製AP-RX65N-0A(CPU:RX65N(R5F565N9BDFB))

別の投稿で、ネットワークスタックは、Amazon FreeRTOSに移行しつつあるとのことで、

アプリケーションノート(R20AN0586EJ0100)を参考に FreeRTOS(with IoT Libraries)の

搭載を試みましたが、コンパイルが通らず、迷路にはまり込んでしまいました。

アルファ社製ボードは、RSKRX65N-1MB同等だと認識していますが、この環境下でAmazon FreeRTOS+TCPに

実装成功され方、または情報をお持ちの方は、教えてください。

ルネサス製の「RXファミリ 組み込み⽤ TCP/IP M3S-T4-Tiny」を使用するしかないかなと思い始めています。

M3S-T4-Tinyは、この基板(OS無し)で実装し、正常に動作できることを確認しています。

Parents
  • ギースさん

    シェルティです、こんにちは。ルネサス社員です。

    AP-RX65N-0AでもAmazon FreeRTOS動かせると思います。
    AP-RX65N-0Aがたしか事務所にあったはずなので、次事務所に出社する11/27に確認して持って帰ってきてその次の週末に実験してみたいと思います。出来たコードはルネサスのGitHubにアップしておきます。
    github.com/.../amazon-freertos

    ちなみにM3S-T4-Tinyも私が作りました。わが子を差し置いて、別の人の子をおすすめするのはなかなかに悲しいですがこれも世の流れですね。
    ベアメタルの世界観ではまだ生き残るかなと思っていて、M3S-T4-Tinyもしつこく開発は続けるつもりです。

    以上です
  • シェルティさん、初めまして!

    早々のリプライありがとうございます。

    カーネルのみなら動かせたのですが、TCP/IPスタック追加が無理でした。

    心苦しいですが、実験結果をお待ちしております。

    以上、よろしくお願い致します。
  • ぎーすさん

    こんにちは、シェルティです。

    コメントありがとうございます。皆様の開発に役に立つソフトを作って提供し続けたいと考えています。

    FreeRTOSカーネルだけならばRXマイコン全般で簡単に新規プロジェクトから作れるようになりました。
    github.com/.../新規プロジェクト作成方法(FreeRTOS)

    FreeRTOSにIoT Libraryを含むと少し敷居があがりますね。RX65N RSK/Cloud KitやRX72N Envision Kitといった代表選手のみですが、FreeRTOSにIoT Libraryを含んだ状態の新規プロジェクト生成もできるようになりました。ただまだ不完全なところも多いです。継続改善目指してます。ユーザボードにも簡単に移植できるようにしたいと思ってます。
    github.com/.../新規プロジェクト作成方法(FreeRTOS(with-IoT-Libraries))

    ベアメタル環境でのTCP/IP組み込みも解説記事を作っておきました。
    github.com/.../1-Ether-TCP-IP

    上記はRX72N Envision Kitでの解説ですが、スマートコンフィグレータが対応するRXファミリ全般においてTCP/IP込のユースケースにおける新規プロジェクト作成がカバーできると考えてます。

    無線LAN応用がまだまだ弱く、現在展開中のRX65N Cloud KitだとUARTで無線モジュールを制御していることから通信速度が400Kbpsに制限されていてあまり速く通信ができません。
    現在これをSDIO無線LAN(マイコン内蔵機能としてはSD Host Interface(SDHI)を活用)に置き換えた版を開発中でRX65Nの無線LANでTCP/IP通信で35Mbpsを確認しました。
    TLS通信はこれもRXマイコン内蔵のTrusted Secure IPで加速し35Mbpsを維持できる見込みです。
    このあたりも追々評価ボードなど含めて皆さまにお届けできるよう開発を進めています。
    過去SDIO無線LANはRaspberry PiやiPhoneなど、汎用OSの世界観でしか使えませんでしたが、
    Wifi host driverがオープンソース化され現在急ピッチでRXマイコンへの移植を進めています。
    github.com/.../wifi-host-driver

    Trusted Secure IPの能力については以下のような解説記事を作りました。
    github.com/.../1-Trusted-Secure-IPドライバ

    引き続きRXマイコンをよろしくお願いします。

    以上です
Reply
  • ぎーすさん

    こんにちは、シェルティです。

    コメントありがとうございます。皆様の開発に役に立つソフトを作って提供し続けたいと考えています。

    FreeRTOSカーネルだけならばRXマイコン全般で簡単に新規プロジェクトから作れるようになりました。
    github.com/.../新規プロジェクト作成方法(FreeRTOS)

    FreeRTOSにIoT Libraryを含むと少し敷居があがりますね。RX65N RSK/Cloud KitやRX72N Envision Kitといった代表選手のみですが、FreeRTOSにIoT Libraryを含んだ状態の新規プロジェクト生成もできるようになりました。ただまだ不完全なところも多いです。継続改善目指してます。ユーザボードにも簡単に移植できるようにしたいと思ってます。
    github.com/.../新規プロジェクト作成方法(FreeRTOS(with-IoT-Libraries))

    ベアメタル環境でのTCP/IP組み込みも解説記事を作っておきました。
    github.com/.../1-Ether-TCP-IP

    上記はRX72N Envision Kitでの解説ですが、スマートコンフィグレータが対応するRXファミリ全般においてTCP/IP込のユースケースにおける新規プロジェクト作成がカバーできると考えてます。

    無線LAN応用がまだまだ弱く、現在展開中のRX65N Cloud KitだとUARTで無線モジュールを制御していることから通信速度が400Kbpsに制限されていてあまり速く通信ができません。
    現在これをSDIO無線LAN(マイコン内蔵機能としてはSD Host Interface(SDHI)を活用)に置き換えた版を開発中でRX65Nの無線LANでTCP/IP通信で35Mbpsを確認しました。
    TLS通信はこれもRXマイコン内蔵のTrusted Secure IPで加速し35Mbpsを維持できる見込みです。
    このあたりも追々評価ボードなど含めて皆さまにお届けできるよう開発を進めています。
    過去SDIO無線LANはRaspberry PiやiPhoneなど、汎用OSの世界観でしか使えませんでしたが、
    Wifi host driverがオープンソース化され現在急ピッチでRXマイコンへの移植を進めています。
    github.com/.../wifi-host-driver

    Trusted Secure IPの能力については以下のような解説記事を作りました。
    github.com/.../1-Trusted-Secure-IPドライバ

    引き続きRXマイコンをよろしくお願いします。

    以上です
Children
  • ぎーすさん

    シェルティです、こんにちは。

    かふぇルネ復旧しましたね。週末に書き込もうとしましたがログインできず書き込めませんでした。
    さてAP-RX65N-0AへのAmazon FreeRTOS移植ですが申し訳ありません、断念しました。
    搭載チップがRX65NのROM小さい版(R5F565N9BDFB)で、データフラッシュがついてなく、標準コードそのままでは動かせないためです。自分が持っているAP-RX65N-0AはチップをROM大きい版(R5F565NEHDFB)に張り替えていたため勘違いをしてしまいました。

    申し訳ないのですが、AP-RX65N-0A上ではM3S-T4-Tinyを使用するか、
    RX72N Envision Kit等の予めAmazon FreeRTOSが動作することが確認できているボードを利用するか、
    どちらかをご検討ください。

    Amazon FreeRTOSが動作する認定済ボード一覧:
    devices.amazonaws.com/search

    以上です
  • シェルティさん

    ぎーすです。

    AP-RX65N-0AへのAmazon FreeRTOS移植実験ありがとうございます!
    RSKRX65N-2MBの使用を検討します。

    カスタムボードでのAmazon FreeRTOSのポーティングは敷居が高そうですね。
    インターネット環境に接続しない場合(ローカルLAN接続のみ)、Renesas FreeRTOSに、Firmware Integration Technology (FIT)とM3S-T4-Tinyの組み合わせが良さそう気がしています。

    話は、それますが、このCPUを張り替えるとは、さすがルネサスさん!!

    また、何かありましたらよろしくお願い致します。
  • ぎーすさん

    シェルティです、こんにちは。

    ご期待に添えずすみません。

    RSKRX65N-2MBはルネサスで取得しているFreeRTOS認証の中でチャンピオンケースとなっており、AWSが最新カーネルの適用・評価を常に実施してくれるので大変良い選択となります。
    以下本家URLにおいてAWSの設計者により常に最新状態が維持されます。
    github.com/.../amazon-freertos

    パートナーさんのボードや、ユーザのカスタムボードに移植については仰る通り少々敷居は高い状況ですが、これを打破すべく、スマートコンフィグレータでボードを選んでコード生成したらボード依存部のコードが自動で書き変わるような仕組みを構築中です。
    カスタムボードについてはさすがに全自動とはならないですが、マイコンのどのピンをどの役割で使っているかだけ手動設定してあげれば、ボード依存部のコードを出力してくれるようにしたいと考えています。

    またお困りごとや、相談などがありましたら掲示板に書いていただければ、と思います。

    以上です