Repolode
cesanta

cesanta/mongoose

マイコン向けに、TCP/IPスタック、TLS 1.3、HTTP、WebSocket、MQTT、ファームウェアのOTA更新を提供するC製の2ファイル構成ネットワーキングライブラリ。

スター
13,105
フォーク
2,955
未解決の Issue
3
最終コミット
一昨日

これは何?

Mongooseは、組み込みC/C++プロジェクト向けのネットワーキングライブラリです。TCP/IPスタックとドライバー、TLS 1.3、HTTP、WebSocket、MQTT、ファームウェアのOTA更新を、外部依存なしでmongoose.cとmongoose.hの2つのソースファイルにまとめています。ベアメタルでもRTOS上でも動作し、lwIPやZephyrなど既存のスタック上で利用することもできます。

STM32、NXP i.MX RT、MCX、RW612各ファミリーから、ESP32、Raspberry Pi RP2040/RP2350、Renesas RA、TIの各種製品まで、幅広いマイコンを対象としています。また、Linux、macOS、Windowsにも対応します。イベント駆動型APIでは、単一のイベントマネージャーループを使い、接続ごとにハンドラー関数を設定します。組み込みプロトコルには、TCP/UDPのほか、SNTP、非同期DNS、Modbus-TCPも含まれます。

プロジェクトはGPLv2または商用ライセンスのデュアルライセンスで提供されており、商用ユーザー向けに有償サポートとセキュリティアップデートも提供しています。

主な機能

  • 01多くのMCU用EthernetチップおよびWi-Fiチップのドライバーを備えたTCP/IPスタックを内蔵
  • 02TLS 1.3を内蔵するほか、外部のmbedTLSやOpenSSLも利用可能
  • 03HTTPサーバーとクライアント、WebSocket、MQTTに対応
  • 04複数のSTM32、RP2040/2350、ESP32、NXPプラットフォーム向けのファームウェアOTA更新
  • 05外部依存のない純粋なISO C/C++ソース

ユースケース

  • マイコンベースのデバイスにWeb設定ダッシュボードを追加する
  • IoTデバイスからMQTTブローカーへテレメトリーを送信する
  • 組み込みハードウェアにOTAでファームウェア更新を配信する
  • リソースが限られたボード上で小規模なREST APIを提供する

クイックスタート

  1. 1

    mongoose.c と mongoose.h をプロジェクトにコピーします

  2. 2

    mongoose.h をインクルードし、イベントループを設定する main.c を作成します

  3. 3

    C コンパイラでプログラムをビルドします

    cc main.c mongoose.c

使う前に知っておきたいこと

  • GPLv2 または商用ライセンスのデュアルライセンスです。そのため、クローズドソース製品には有償の商用ライセンスが必要です。
  • 商用サポートとセキュリティ修正の先行提供は、有償ライセンスでのみ利用できます。

収録されている特集

トピック

よくある質問

mongoose とは?
マイコン向けに、TCP/IPスタック、TLS 1.3、HTTP、WebSocket、MQTT、ファームウェアのOTA更新を提供するC製の2ファイル構成ネットワーキングライブラリ。 Mongooseは、組み込みC/C++プロジェクト向けのネットワーキングライブラリです。TCP/IPスタックとドライバー、TLS 1.3、HTTP、WebSocket、MQTT、ファームウェアのOTA更新を、外部依存なしでmongoose.cとmongoose.hの2つのソースファイルにまとめています。ベアメタルでもRTOS上でも動作し、lwIPやZephyrなど既存のスタック上で利用することもできます。
mongoose は無料で使えますか?ライセンスは?
mongoose は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
mongoose は今もメンテナンスされていますか?
活発にメンテナンス中。mongoose の最終コミットは 2026年10月23日 です。
mongoose は何に使えますか?
マイコンベースのデバイスにWeb設定ダッシュボードを追加する IoTデバイスからMQTTブローカーへテレメトリーを送信する 組み込みハードウェアにOTAでファームウェア更新を配信する リソースが限られたボード上で小規模なREST APIを提供する
mongoose のインストール方法は?
mongoose.c と mongoose.h をプロジェクトにコピーします mongoose.h をインクルードし、イベントループを設定する main.c を作成します C コンパイラでプログラムをビルドします: cc main.c mongoose.c
mongoose はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/cesanta/mongoose

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト