Wireless Microcontroller - Software Development Kit 3.2
Quick Start Guide
Document Classification: Proprietary Information
August 24, 2015, Doc Status
Not Approved by Document Control. For Review Only.
The device and the AP then perform the negotiation, and follow a defined process. The
end result of the process is that the device gets the configuration of the target Wi-Fi
network. While this method is the easiest, not all APs may support this mechanism
because of some known security issues. This method can be used along with the Marvell
Provisioning method defined below to address this problem.
1.3.2.2 HTTP/HTTPS Web Server
The WMSDK includes a HTTP Web Server. This server has been designed to work with all the
commonly available browsers on most platforms. The web server has the following features:
1. Serve Files: The webserver can serve HTML/JS files to connected clients. These files
can be stored on the flash of the device. Application developers can create web apps that
can provide the end-users with meaningful workflows. Such web applications are useful
since they allow the end-user to start interact with the device without having them to
install any application on their systems. A collection of files from the given folder is
bundled up to create an FTFS image. This FTFS image is then flashed along with the
MCU firmware. Note that the FTFS is read-only file system. No files can be
added/updated.
2. Caching Support: WMSDK web server includes partial support of RFC 7234 standard
for HTTP caching. This enables developers to use this feature to speed up page loading
times for the end user.
3. Web Server Gateway Interface: The applications can write custom WSGI handlers
associated with specific URIs. Applications register with the web server to get a callback
for specific paths and HTTP methods GET, POST, PUT and DELETE. This allows
applications to expose rich functionality through web APIs. This can be used to create
RESTful web services for e.g.
The WSGI handlers are provided with the entire environment in which the HTTP request
is received along with any data that was part of the HTTP request. Utility functions are
available to be used by WSGI handlers for quick development of data processing
functionality, be it in the form or URL-encoded parameters, HTTP form data or POST
data in the body of the request. Functions are also available for the WSGI handlers to
generate the different HTTP response codes, encodings and data formats.
4. HTTP Secure (https): With appropriate configuration, the HTTP server also can serve
content on a TLS connection i.e. https over port 443.
5. HTTP Persistent Connections and Pipelining: Multiple simultaneous open connections
are supported and appropriate context is provided for each open socket connection,
1.3.2.3 Filesystem (FTFS)
The Flash Table File System (FTFS) is a read-only flash filesystem used to store static content to
be served by the web server. Other applications can also use FTFS to store permanent
configuration data The FTFS exposes standard file handling APIs viz. fopen, fread, ftell, fclose,
etc.
1.3.2.4 Secure Boot
The 88MW300’s BootROM can load images that are encrypted (AES-CCM) and/or signed (RSA).
The SDK support a trusted chain of booting such that:
a. The BootROM can decrypt and/or verify the boot2 boot-loader (AES-CCM-256 / RSA-2048)
b. The boot-loader can decrypt and/or verify the microcontroller firmware (AES-CTR-128 / RSA-
2048)
c. The Microcontroller firmware can store encrypted values into the PSM (AES-CTR-128)
d. Additionally, support is also available for locking out JTAG and disabling other boot options