Useful External Documentation - FujiNetWIFI/fujinet-firmware GitHub Wiki

PlatformIO General Documentation

FujiNet uses the PlatformIO cross-platform development environment to ease firmware development. PlatformIO is currently built on libraries, tools, and extensions to Microsoft Visual Studio Code.

PlatformIO General Documentation

ESP-IDF Documentation

FujiNet is built on Espressif's "IoT Development Framework", or ESP-IDF for brevity. Note that the documentation web site defaults to the latest available version of the framework, and this is sometimes a pre-release version not yet available to PlatformIO users. Make sure you choose the "latest stable" version from the menu hidden at the bottom-left of the page. The "latest prerelease" version is usually chosen by default.

ESP-IDF Documentation

PlatformIO ESP-IDF Guidelines

PlatformIO provides specific documentation and notes on each of the platforms it targets, including ESP-IDF. These notes are useful in understanding the features and tools specific to ESP-IDF development on PlatformIO:

PlatformIO ESP-IDF Framework Notes

FreeRTOS Reference

ESP-IDF currently uses a build (or "port") of the FreeRTOS 8.2.0 multitasking RTOS for its kernel. This port includes some additional functionality - partly from backports of FreeRTOS 9.0 features and partly from ESP-specific features.

Here's a PDF of the FreeRTOS 8.2.3 reference manual: FreeRTOS 8.2.3 Reference Manual

Mastering the FreeRTOS Kernel (pre v9.0.0 version): Mastering the FreeRTOS Real Time Kernel

The following is a link to FreeRTOS 9.0.0 documentation. The majority of it is applicable to the FreeRTOS 8.2.0 used in ESP-IDF: FreeRTOS 9 Documentation

ESP-IDF Changes to FreeRTOS

"Various features specific to ESP-IDF FreeRTOS have been added. The features are as follows:"

FreeRTOS Additions

"The ESP-IDF FreeRTOS is a modified version of vanilla FreeRTOS which supports symmetric multiprocessing (SMP). ESP-IDF FreeRTOS is based on the Xtensa port of FreeRTOS v8.2.0. This guide outlines the major differences between vanilla FreeRTOS and ESP-IDF FreeRTOS."

ESP-IDF FreeRTOS SMP Changes

GNU Compiler Collection 8.2.0

ESP-IDF currently uses a GCC 8.2-based toolchain to build ESP32 binaries. This version of GCC supports the "C11" version of the C language and "C++14".

GCC 8.2.0 Documentation

Espressif Bluetooth Documentation

Details on Espressif's Bluetooth implemenation.

Espressif Bluetooth Documentation

Altirra Hardware Reference Manual

Avery Lee's (phaeron on AtariAge) invaluable documentation on practically every aspect of how Atari 8-bit machines work.

Altirra Hardware Reference Manual