Files
ESP-Nodes/ESP-Mongoose_UI
2025-04-04 21:48:56 -04:00
..
2025-04-04 21:48:56 -04:00
2025-03-30 02:37:21 -04:00
2025-03-30 02:37:21 -04:00
2025-03-30 02:37:21 -04:00
2025-03-30 02:37:21 -04:00
2025-03-30 02:37:21 -04:00

Mongoose Wizard Project

This project is generated by Mongoose Wizard, https://mongoose.ws/wizard/

Build and flash

If your target IDE is GCC+Make

Option 1. Build and flash online a) Click on the "build" button, wait for the compiler to finish. b) Click on the "flash" button; or, click on the "bin" button to download to your workstation

Option 2. Download generated project to your workstation a) Click on the "sync" or ".zip" button to download the project to your workstation b) Setup your build environment: https://mongoose.ws/documentation/tutorials/tools/ c) Open a terminal/command prompt, go to the destination directory, and type make

Other target IDEs

Step 1. Download generated project to your workstation Click on the "sync" or ".zip" button to download the project to your workstation

Step 2. Build and run the project If your target IDE is CubeIDE, then start Cube IDE (use Cube 1.16.0 or later), then: a) Choose File / Import b) Choose "Existing Projects into Workspace", click Next, c) Click on "Directory", choose dir with generated files, click Finish If your target IDE is MCUXpresso, follow instructions for Cube IDE above If your target IDE is Arduino, open wizard.ino in the Arduino IDE If your target IDE is other - follow your IDE's guide

Copying functionality to an existing firmware

In order to move this functionality to some existing firmware code, copy only the following ("purple") files:

  • mongoose.{c,h} - This is Mongoose Library, a full TCP/IP + TLS stack
  • mongoose_config.h - (only if present). Mongoose settings file
  • mongoose_fs.c - Embedded filesystem. Contains Web UI files and TLS certs
  • mongoose_impl.c - Generated network functionality
  • mongoose_glue.{c,h} - A "glue", or "binding" functions for your code

Note, the only file you should edit to integrate with your code, is mongoose_glue.c. That file "glues" your firmware with the networking functionality generated by the Mongoose Wizard. It contains functions that return device data. Generated functions use "fake" mock data; you need to edit those functions and return "real" device data.

Once you copy these files, add the following snippet somewhere in your code:

#include "mongoose_glue.h"

...
run_mongoose(); // This function blocks forever. Call it at the end of main(),
                // or in a separate RTOS task. Give that task 8k stack space.

For Ethernet hardware details, check this tutorial

OTA firmware update

This feature uses binary images

Documentation and Tutorials