mongoose/examples/stm32/nucleo-h743zi-baremetal
2023-02-07 21:35:37 +00:00
..
link.ld Add STM32H743ZI driver and example 2023-02-03 18:04:29 -03:00
main.c Move mip/ -> src/tcpip/, rename mip_ -> mg_tcpip_ 2023-02-07 21:35:37 +00:00
Makefile Move mip/ -> src/tcpip/, rename mip_ -> mg_tcpip_ 2023-02-07 21:35:37 +00:00
mcu.h Add STM32H743ZI driver and example 2023-02-03 18:04:29 -03:00
README.md Move mip/ -> src/tcpip/, rename mip_ -> mg_tcpip_ 2023-02-07 21:35:37 +00:00
startup.c Add STM32H743ZI driver and example 2023-02-03 18:04:29 -03:00
syscalls.c Add nucleo-h743zi-baremetal boilerplate, with HW test 2023-01-22 11:48:56 +00:00

Baremetal webserver on NUCLEO-H743ZI

This firmware uses MIP, an experimental TCP/IP stack of the Mongoose Network Library, which implements the following:

  • A complete HTTP device dashboard with:
    • User authentication
    • Real-time device data graph
    • Coninfiguration display and update
    • MQTT communication with a remote MQTT server
  • No dependencies: no HAL, no CMSIS, no RTOS
  • Hand-written mcu.h header based on the datasheet
  • Interrupt-driven Ethernet driver
  • Debug log on UART3 (st-link)

Requirements

The links above will send you to tutorials on how to install each of those tools in your workstation for Linux, Mac, and Windows.

Usage

Plugin your Nucleo board into USB, and attach an Ethernet cable. To build and flash:

$ make clean flash

To see debug log, use any serial monitor program like picocom at 115200 bps and configure it to insert carriage returns after line feeds:

$ picocom /dev/ttyACM0 -i -b 115200 --imap=lfcrlf

There is also a tutorial on a similar example but for the NUCLEO-F746ZG board

For more details and benchmark data on MIP, check the F746ZG example