Metadata-Version: 1.2
Name: micropython-cloudmanager
Version: 0.0.165
Summary: Micropython client that allows network attached boards to be controlled from a central redis server
Home-page: https://github.com/dhubbard/micropython-cloudmanager
Author: Dwight Hubbard
Author-email: dwight@dwighthubbard.com
Maintainer: Dwight Hubbard
Maintainer-email: dwight@dwighthubbard.com
License: MIT
Description: 
        .. image:: https://readthedocs.org/projects/micropython-cloudmanager/badge/?version=latest
            :target: http://micropython-cloudmanager.readthedocs.io/en/latest/?badge=latest
            :alt: Documentation Status
        
        Description
        ***********
        
        Cloudmanger provides a single point of managment for micropython systems that minimizes the security attack surface and
        offloads resource intensive operations from the micropython clients to the server.
        
        Quickstart
        ==========
        
        Here is a quickstart for setting up cloudmanager with popular esp8266 boards
        
        Install
        -------
        
        Use pip to install the server and client flash utility::
        
            $ pip install micropython-cloudmanager micropython-cloudmanager-esp8266
            $
        
        Start Server
        ------------
        
        Start the server process with the default settings::
        
            $ mbm server-start
            Cloudmanager service is listening on: 192.168.1.127:18266
            $
        
        Flash and Configure esp8266 board as a client
        ---------------------------------------------
        
        Plug in the esp8266 board, into the usb port.
        
        NOTE: Some boards may need to be manually put into flash mode per the vendor instructions.
        
        The flash tool will generally determine the correct serial device to flash as long as only one usb serial device
        is connected to the system.
        
        Flash and configure the board specifying the wifi connection settings::
        
            $ flash_esp_image --wifi_ssid mywifi --wifi_password mywifipassword
            esptool.py --port /dev/ttyUSB0 --baud 115200 erase_flash
            esptool.py v1.2.1
            Connecting...
            Running Cesanta flasher stub...
            Erasing flash (this may take a while)...
            Erase took 9.0 seconds
            esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash --verify --flash_size=32m --flash_mode=qio 0 /tmp/cloudmanager-micropython-esp8266/local/lib/python2.7/site-packages/cloudmanager_micropython_esp8266/firmware/firmware-combined.bin
            esptool.py v1.2.1
            Connecting...
            Running Cesanta flasher stub...
            Flash params set to 0x0040
            Writing 557056 @ 0x0... 557056 (100 %)
            Wrote 557056 bytes at 0x0 in 48.3 seconds (92.3 kbit/s)...
            Leaving...
            Verifying just-written flash...
            Verifying 0x8734c (553804) bytes @ 0x00000000 in flash against /tmp/cloudmanager-micropython-esp8266/local/lib/python2.7/site-packages/cloudmanager_micropython_esp8266/firmware/firmware-combined.bin...
            -- verify OK (digest matched)
            >>>
            >>> import os
            >>> os.mkdir('etc')
            >>> from bootconfig.config import get, set
            >>> set('wifi_ssid', 'mywifi')
            >>> set('wifi_password', 'mywifipassword')
            >>> set('redis_server', '192.168.1.127')
            >>> import bootconfig.service
            >>> bootconfig.service.autostart()
            >>> import redis_cloudclient.service
            >>> redis_cloudclient.service.autostart()
            >>> import machine
            >>> machine.reset()
        
        
        NOTE: At this point some boards need to be manually reset.
        
        Verify the board is registered with the server
        ----------------------------------------------
        
        After a few seconds the board should connect to the wifi network and register with the cloudmanager server::
        
            $ mbm board-list
            Name       Platform                                           State
            esp8266-1  esp8266                                            idle
            $
        
        See the full documentation to use cloudmanager to install packages, upload files or execute commands on the board.
        
Platform: UNKNOWN
