A card for the Internet of Things programmed in MicroPython
Wypi is an Internet of Things board programmable in python and being compact, low energy, affordable. The board is programmable in MicroPython (support for Python 3 syntax), a version of python specially optimized to increase performance and reduce the memory footprint. MicroPython is capable of operating on microcontrollers having reached a certain power. No need for a compiler on a PC, with MicroPython, it's your microcontroller that directly interprets your script file. Because it uses Python, it works as you are used to on your computer, the learning curve is minimal ... if we can consider that there is one!
The module is completely OpenSource (and Open Hardware for hardware).
Before starting your hacking session, you will need a power source (between 3.6 and 5.5v) and a WiFi connection. You can use the WiPy expansion board to more easily support power requirements.
WiPy is autonomous and doesn't need a Cloud service, No need to compile and accumulate the library code to execute your programs, the platform interprets and directly executes your scripts written in Python.
What WiPy offers you:
- You can use your favorite code editor, just send your python file to the board.
- You can easily debug your code using the interactive shell of the board (REPL) accessible via the serial port or via Telnet.
- Upload your scripts (and other files) to WiPy via the FTP server
- You can reset your WiPy locally (via the Reset button) or remotely using Telnet.
WiPy works thanks to a Cortex-M4 MCU including WiFi support, it's the CC3200 module (chip-level WiFi certification). The CC3200 module supports SSL and TLS enough to allow WiPy to connect reliably and securely to the Internet (or a Cloud infrastructure).
WiPy has a low energy mode to maintain an active WiFi connection by consuming 850µA. WiPy can return to "active" mode when it receives data or receives a connection from a client. This means that it is possible to make a very low energy "server".
A WiPy device powered by a battery can return from "sleep" mode in 5 ms, send a series of packets to the Net, then return to sleep mode immediately, all in one second. A project strongly focused on optimizing and regulating communications can work for long months (or even years) with a battery.
- Size: 25mm x 45mm
- MCU: Cortex-M4 @ 80MHz (TI CC3200)
- WiFi: 802.11b/g/n 16Mbps (AP in access point, STA in client/station and WiFi-Direct)
- Security: support SSL/TLS, WPA
- RAM: 256 KBytes
- Flash: 2 MBytes
- Up to 25 inputs/outputs (25)
- 2 x UART (serial port),
- SPI bus,
- I2C bus,
- I2S bus
- SD card (support for hardware interface, the connector isn't present)
- Analog channels: 3× Analog/Digital converter - 12-bit resolution
- Timers: 4× 16-bit resolution timers (with PWM and submit capture)
- RTC: a real time clock
- Encryption and hash motors: SHA, MD5, DES, AES
- DMA: Direct Access Memory
- 3.3V output: Capable of delivering up to 250mA
- Integrated antenna
- µFl connector to connect an external antenna
Using a µFL to SMA convertor + adaptateur SMA to RP-SMA adapter and a SMA WiFi antenna
- WiPy uses a CC3200 module as core. According to the document "CC31xx & CC32xx Radio Certification" Texas Instrument, the FCC ID of the CC3200 is Z64-CC3200MODR1.
- FCC ID: Z64-CC3200MODR1 (fccid.io)
What is the consumption of a WiPy?
WiPy consumes only 14 mA (official doc) 30-35mA (measurements) with WiFi activated and the processor operating at full speed (full clock speed). It is possible to go down to 5µA in hibernation mode (HIBERNATING). The most interesting energy saving mode is the SUSPENDED mode (standby "suspended") which lowers consumption to 850µA and keeps the WiFi connection active (thus allowing internet traffic to "wake up" the WiPy in less than 5 milliseconds).
Where can I find support for WiPy?
If you need help with MicroPython (Python for Microcontroller), you can go to the MicroPython Forum: forum.micropython.org
For more specific points on WiPy (hardware support), you can consult the WiPy forum: wipy.io/forums
How to get started?
- Connect a power supply to WiPy
3.6 to 5.5V on VIN
Ground on GND
- Use your PC and search for a WiFi network starting with wipy-lan
- With your PC, connect using the password www.wipy.io
- To get the REPL (python command evaluator), make a telnet on 192.168.1.1 (user = micro, password = python)
- The file system is accessible via FTP on the same IP address (and with the same login and password)