Skip to content

Commit

Permalink
Update landing pages
Browse files Browse the repository at this point in the history
Promote HardwareSPI, Graphics, UPnP and related libraries (unique and Sming-specific)
  • Loading branch information
mikee47 committed Dec 8, 2021
1 parent c9ed151 commit c7a072b
Show file tree
Hide file tree
Showing 3 changed files with 53 additions and 25 deletions.
7 changes: 5 additions & 2 deletions README.md
Expand Up @@ -61,7 +61,10 @@ Please note Version 4 documentation is at [sming.readthedocs.io](https://sming.r
* Fast and user friendly development.
* Simple yet powerful hardware API wrappers.
* Compatible with standard [Arduino Libraries](https://sming.readthedocs.io/en/latest/libraries.html) - use any popular hardware in few lines of code.
* Built-in file system: [spiffs](https://github.com/pellepl/spiffs).
* Installable file systems:
[SPIFFS](https://sming.readthedocs.io/en/latest/_inc/Sming/Libraries/Spiffs/index.html),
[LittleFS](https://sming.readthedocs.io/en/latest/_inc/Sming/Libraries/LittleFS/index.html) and
[FWFS](https://sming.readthedocs.io/en/latest/_inc/Sming/Components/IFS/index.html)
* Built-in powerful wireless modules.
* Powerful asynchronous (async) network stack.
* Async TCP and UDP stack based on [LWIP](http://savannah.nongnu.org/projects/lwip/).
Expand All @@ -77,7 +80,7 @@ Please note Version 4 documentation is at [sming.readthedocs.io](https://sming.r
* Based on Espressif NONOS SDK. Officially suppored NON SDK version is >= 3.0.1.
* Support for a [thin No-Wifi-SDK](https://sming.readthedocs.io/en/latest/_inc/Sming/Arch/Esp8266/Components/esp_no_wifi/index.html). Helpful when a project does not require WiFi (or networking) and reduces code size and memory usage signficantly.
* Linux/Windows features
* Sming has a [host emulator](https://sming.readthedocs.io/en/latest/arch/host/index.html) that allows libraries and sample applications to be compiled on a Linux/Windows host system and be tested before uploading them to an actual microcontroller.
* Sming has a [host emulator](https://sming.readthedocs.io/en/latest/arch/host/index.html) that allows libraries and sample applications to be developed and tested on a Linux/Windows host system before uploading them to an actual microcontroller.

## Compatibility

Expand Down
2 changes: 1 addition & 1 deletion Sming/Arch/Esp32/Components/esp32/README.rst
Expand Up @@ -51,7 +51,7 @@ Background
An empty ESP IDF project is built which generates a set of libraries and headers
which the framework can then be built against.

The project is located in ``project/{SMING_SOC}`.
The project is located in ``project/{SMING_SOC}``.

The code for this project is copied from ``sdk/project``.

Expand Down
69 changes: 47 additions & 22 deletions docs/source/index.rst
Expand Up @@ -5,9 +5,8 @@ Welcome to Sming Framework

**Let's do smart things!!!**

Sming is an asynchronous C/C++ framework with superb performance and multiple network features.
Sming is open source and is tailored towards embedded devices.
It supports multiple architectures as ESP8266 for example.
Sming is an asynchronous embedded C/C++ framework with superb performance and multiple network features.
Sming is open source, modular and supports :doc:`multiple architectures <features>` including ESP8266 and ESP32.

|samples|_

Expand All @@ -19,31 +18,57 @@ Summary
-------
- Superb performance and memory usage (Sming compiles to native firmware!)
- Fast and user friendly development
- Simple yet powerful hardware API wrappers
- Compatible with standard :doc:`libraries` - use any popular hardware in few lines of code
- Multiple file system support: :component:`IFS`, :library:`Spiffs`, :library:`LittleFS`
- Integrated :doc:`host emulator <arch/host/index>` to assist with developing, testing and debugging
libraries and applications on a PC before uploading them to an actual microcontroller.
Try it out online `here <https://www.katacoda.com/slaff/scenarios/sming-host-emulator>`__.
- Built-in powerful wireless modules
- Powerful asynchronous (async) network stack.
- Compatible with standard :doc:`libraries` - use popular hardware in few lines of code
- Simple yet powerful hardware API wrappers

- Standard Arduino-style wrappers for simplicity and flexibility
- :library:`HardwareSPI` library provides advanced asynchronous SPI device master capability
including use of ESP8266 'overlapped' mode for reduced pin usage and dual/quad I/O support.
- :library:`Graphics` implements asynchronous display control model with low memory usage,
transparency (alpha-blending) and flexible scripted resource management.

- Modular C++ installable file system interface

- Supports popular :library:`SPIFFS <Spiffs>` and :library:`LittleFS <LittleFS>` filing systems
- New :component:`FWFS <IFS>` read-only filesystem can be used as base file system,
with read/write filesystems mounted in sub-directories
- Integrated metadata support (file times, security descriptors, user metadata)
- Access to Host (linux / Windows / MacOS) filing system via same API
- Integrated streaming archival system to support backups or file system compaction operations

- Powerful asynchronous (async) :doc:`network stack </_inc/Sming/Components/Network/index>` including:

- Async TCP and UDP stack based on `LWIP <http://savannah.nongnu.org/projects/lwip/>`__.
- With clients supporting: HTTP, MQTT, WebSockets and SMTP.
- And servers for: DNS, FTP, HTTP(+ WebSockets), Telnet.
- With :doc:`SSL support <_inc/Sming/Components/ssl/index>` for all network clients and servers.
Based on `axTLS <http://axtls.sourceforge.net/>`__ and `BearSSL <https://www.bearssl.org/>`__.
- Over-The-Air (OTA) firmware upgrades via HTTP(S) and MQTT(S).

- :library:`UPnP <Universal Plug and Play (UPnP)>`
framework supports both standard and custom devices with full ControlPoint support.

- Generates C++ code from standard UPnP XML schema.
- Companion :library:`SSDP` library independently supports discovery on local network.
- :library:`GoogleCast` library allows control of ChromeCast devices or smart TVs supporting the GoogleCast protocol.
- :library:`HueEmulator` provides simple way to implement devices compatible with Amazon Alexa.

- Async TCP and UDP stack based on `LWIP <http://savannah.nongnu.org/projects/lwip/>`__.
- With clients supporting: HTTP, MQTT, WebSockets and SMTP.
- And servers for: DNS, FTP, HTTP(+ WebSockets), Telnet.
- With :doc:`SSL support <_inc/Sming/Components/ssl/index>` for all network clients and servers.
Based on `axTLS <http://axtls.sourceforge.net/>`__ and `BearSSL <https://www.bearssl.org/>`__.
- Over-The-Air(OTA) firmware upgrades via HTTP(S) and MQTT(S).
- ESP8266 features

- ESP8266 specific features
- Integrated boot loader :component:`rboot` with support for 1MB ROMs, OTA firmware updating and ROM switching.
- :doc:`Crash handlers <information/debugging>` for analyzing/handling system restarts due to fatal errors or WDT resets.
- :component-esp8266:`PWM support <driver>` based on `Stefan Bruens PWM <https://github.com/StefanBruens/ESP8266_new_pwm.git>`__.
- Optional :component-esp8266:`custom heap allocation <heap>` based on `Umm Malloc <https://github.com/rhempel/umm_malloc.git>`__.
- Based on :component-esp8266:`Espressif NONOS SDK Version 3 <esp8266>`.

- Integrated boot loader :component:`rboot` with support for 1MB ROMs, OTA firmware updating and ROM switching.
- :doc:`Crash handlers <information/debugging>` for analyzing/handling system restarts due to fatal errors or WDT resets.
- :component-esp8266:`PWM support <driver>` based on `Stefan Bruens PWM <https://github.com/StefanBruens/ESP8266_new_pwm.git>`__.
- Optional :component-esp8266:`custom heap allocation <heap>` based on `Umm Malloc <https://github.com/rhempel/umm_malloc.git>`__.
- Based on :component-esp8266:`Espressif NONOS SDK <esp8266>`. Tested with versions 1.5, 2.0 and 3.0.
- ESP32 features

- Linux/Windows features
- Based on :component-esp32:`ESP IDF SDK <esp32>`

- Sming has a :doc:`host emulator <arch/host/index>` that allows libraries and sample applications to be compiled on a Linux/Windows host system
and be tested before uploading them to an actual microcontroller.

.. toctree::
:caption: Contents:
Expand Down

0 comments on commit c7a072b

Please sign in to comment.