The WiPy: The Internet of Things Taken to the Next Level
>>> UPDATE: We have added a new super expansion board for only 10 EURO, making the WiPy the Swiss army knife of the Internet of Things!
>>> Dear backer: we have posted a number of interesting updates, please check them, and help us spread the word about the WiPy
>>> Sending an email with the WiPy (video tutorial), check it out!
>>> Ultra low power WiFi, demonstrated!
>>> As see in
>>> The Internet Of Things
It's concept is quite simple; the idea is to provide intelligence to everything that surrounds us, connect it to the internet, bring it to life, and make lots of cool things happen. Sounds nice, but how do you that? Here is the answer...
>>> Meet the WiPy
A small, super low power, inexpensive, and 100% Python programmable IoT development board. The WiPy takes the wireless freedom of WiFi and combines it with the power, flexibility, and ease of use of Python. We designed the WiPy from the ground up, with one goal in mind: "Let's make IoT development fun both for beginners and professionals".
- Inexpensive, small and breadboard friendly.
- Ultra low power (850uA with the WiFi connection active)
- 100% PYTHON PROGRAMMABLE.
- Lots of GPIOs, interfaces and peripherals.
- Powerful CPU and state of the art WiFi radio.
>>> High level language with low level control
The core of the software running in the WiPy is MicroPython, a lean and mean implementation of Python 3, specifically optimized in terms of speed and memory to be able to run efficiently on microcontrollers.
MicroPython implements the entire Python 3.4 syntax (including exceptions, "with", "yield from", and so on). Most of the core datatypes are provided: str (including basic Unicode support), bytes, bytearray, tuple, list, dict, set, frozenset, array.array, collections.namedtuple, classes and instances. You named it, it's likely there. MicroPython is in constant development, so new features are added all the time (for example, it already has some of the features of the upcoming Python 3.5).
>>> Why Python?
Python is a novice friendly language, very often selected by many schools to teach kids the basics of computer software, and yet, it's in the core of professional applications and frameworks which drive the modern Internet (e.g: Django and Flask). Python offers high-level language features and libraries, yet it allows to go low level when fine grain control and real time behavior are needed, and MicroPython takes full advantage of all that.
>>> Infinite possibilities
MicroPython has already changed the way microcontroller programming is done, and the WiPy extends it to the realm of the Internet Of Things. We want you to be part of this revolution, and we will be right next to you on every step of the way.
The WiPy is all about openness and freedom. The whole software has been open source since the beginning, and it will always be. When this campaign gets successfully funded, we will make the hardware open source as well. You can already fork the source code directly from the MicroPython official repository.
So what about the freedom? One of the best things about the WiPy is that it works stand alone.You only need to apply power, before you can start hacking. Forget about needing cloud services to program the board, or special tools to compile your code before it can run on the hardware. The WiPy executes your Python scripts in real time. The only thing you need to start having fun with the WiPy is... a WiFi connection. You can use any independent cloud service to interconnect your devices, there are no strings attached, the only limit is your imagination. What you do with the WiPy, is completely up to you!
>>> Developing is now fun!
How do you start developing with the WiPy? Very simple. Apply power to the board (almost any 3.6 - 5.5V source would do), the WiPy will boot the complete WiFi subsystem and the Python interpreter in less than a second. You will see a new wireless network called "wipy-wlan". Connect to it, the default password is: www.wipy.io. Enjoy the ride!
>>> Wireless programming
- Start a telnet session, and get access to the Python interactive shell, which is perfect for testing your code on the fly.
- Open your favorite FTP client and connect to the WiPy's full blown FTP server, which gives you complete access to the file system. You can add and remove files or directories, and of course upload your Python scripts.
>>> OTA updates
Over The Air updates are super easy via the FTP server. Upload the new firmware to the WiPy and reset it, that's it. You can even try your own tweaks on the MicroPython interpreter. You don't have to worry about bricking the WiPy, because the factory firmware is always preserved and you can always roll back using the safe boot pin.
>>> Everything you already love, in a shinny new package
Other WiFi boards have appeared during the last year directed to IoT. And you might think, "yet another platform...", guess what? it's not. Because it runs Python, and it works just like the Python you are used to work with on a computer, so the learning curve is minimal, if there's any at all. Simply put, the WiPy is all about Python and the internet, but taken to the next level.
>>> Flexible stack-able design
>>> Top notch hardware
- Size: 25mm x 45mm (1.0" x 1.77")
- MCU: Cortex-M4 @ 80MHz (TI CC3200)
- WiFi: 802.11b/g/n 16Mbps (AP, Station and WiFi-Direct)
- RAM: 256 KBytes
- Flash: 2 MBytes
- GPIO: Up to 25
- Interfaces: UART (x2), SPI, I2C, I2S, SD card
- Analog channels: 3x12 bit ADCs
- Timers: 4x16 bit with PWM and input capture
- RTC: Of course
- Hash and encryption engines: SHA, MD5, DES, AES
- DMA: All over the place
- 3.3V output: Capable of sourcing up to 250mA
The heart of the WiPy hardware is the CC3200 from TI, a powerful Cortex-M4 MCU combined with a state of the art WiFi network processor. The CC3200 is also the first system on chip to have achieved chip-level WiFi certification.
The CC3200 is fully loaded with features, including SSL, and TLS, meaning that you connect everything to the cloud, safely and reliably.
The WiPy is also breadboard friendly, and there is an ultra low noise voltage regulator that provides a 3.3V output that you can use to power external components. The supply input has a reverse voltage protection, to make your life easier.
>>> Ultra-Low Power (with WiFi still connected!)
The WiPy has some impressive low power modes, being capable to maintain the WiFi connection active while only consuming 850uA. When in suspended mode, the WiPy can wake up when receiving internet data, or because a client has connected. This means you can even build an ultra low power server.
A battery powered device built with the WiPy can wake from suspended mode in less than 5 ms, send a bunch of internet packets, and go back to sleep immediately, all that within a second. An application using such a scheme can run with a single battery charge for years.
>>> State of the art WiFi
>>> HTTP, XMPP, MQTT, SMTP, FTP and so on
Out of the box the WiPy supports BSD sockets, and everything else can be easily built on top of that using Python. We are preparing a nice set of Python libraries customized for Micro Python to support HTTP, SMTP, XMPP, FTP and MQTT among other network protocols which are essential for the Internet Of Things.
You got it! Connecting everything to the internet is super fun, as long as it's safe. The WiPy has you covered with complete SSL and TLS support.
>>> Master or slave
>>> Beautiful Python API
All those hardware specs are nice, but the coolest part is that they are super easy to use, because we have written an powerful and intuitive Python API to take advantage of every feature of the hardware. Here are a few examples:
- Controlling GPIO pins:
- Configuring I2C:
- ...and SPI:
- Setting up interrupts is a piece of cake:
Interrupts can wake the device from suspended mode, including WiFi interrupts (current in this mode is only 850uA, wicked! isn't it?)
- How about connecting to the internet?
- Want to send an email?
>>> Things you can build with the WiPy
- Internet connected lights.
- WiFi controlled robots.
- Cloud connected sensors.
- Smart fridge magnets.
- WiFi remote controls.
- Smart power sockets.
- Security systems.
- And much more!
>>> New stretch goals
- Help us reach 50K, and we will add an RF switch to the WiPy that will allow software selection between the internal chip antenna and the external one attached to the U.FL connector. Example:
- Help us reach 60K and we will throw in an EMI shield, making one step forward to apply for FCC and CE certifications.
- We reach 90K? The WiPy will ship FCC and CE certified, ready to be integrated into professional and commercial products with minimum effort.
>>> Expandable to your heart's content
You already have lots of expansion and breakout boards, excellent! bring 'em in, because the WiPy is breadboard friendly, and it has plenty of GPIO pins and communication ports so that you can easily connect anything you want without soldering a single wire.
You want custom shields? No problem, select our highest reward and we will design a snake board for the WiPy according to your requirements.
>>> Because of popular demand, we do have an expansion board
- Micro USB connector and battery connector.
- FT234XD USB to serial converter.
- BQ24040 LiPo battery charger.
- TPS2115A power switch, so you can power the system through the USB port and charge the battery at the same time.
- MicroSD card socket.
- JST style battery connector.
- Reverse voltage protection.
- 2 user LEDs.
- 1 User switch.
- Power LED and charge status LED.
- 2 extra female headers a 2 extra male headers.
- 2 Mounting holes.
- Lots of jumpers to enable/disable features and change pin selection.
- Solder mask color will be beautiful matte black just like the WiPy.
- Dimensions: 118.5 x 48.5 mm. The length of the central area is 50.25 mm.
>>> Where are we?
In The Netherlands, and we will be manufacturing the WiPy right here in Eindhoven with the best possible quality, only 5Km away from the High Tech Campus, where the Philips Research Center is located. This is the same place where many great inventions that have changed our lives were conceived, like the Cassette, the LaserDisc, the CD and DVD, but also the Senseo coffee maker, the Blu-ray disc, and many more.
>>> Would you like to know who is our manufacturer?
The name is Bestronics.
>>> Why Kickstarter?
The WiPy is a powerful and super flexible IoT development board and we want to share it with the whole world. Making a hardware products is expensive, and delivering quality software takes a lot of time and effort. With your support we will be able to complete the software, take the WiPy to the production line and give back to you a true piece of art.
We believe that Python running on microcontrollers is the future of embedded systems. Not so long ago, embedded software was written almost entirely in assembly, and everyone was very skeptical about C. Now we are witnessing the dawn of a new era, and Python is the star of the show. There is still a lot to be done before we can get there, so we are asking you to join us in what's going to be a really fun journey. MicroPython has built a strong community and we want to make it bigger. With your help, we can continue improving it and expanding it to more platforms.
>>> The Team
- Daniel: C/C++ developer and big time Python fan.
- Tim: Analog and digital electronics guru.
- Marta: Logistics and purchasing specialist.
>>> Got questions or suggestions?
The video was recorded and edited by Patrick Eerhart (firstname.lastname@example.org). We are truly thankful for his help!
Risks and challenges
The WiPy software has been under development for many months, and it's built on top of MicroPython which was a very successful Kickstarter campaign back in 2013, and now has a large and growing community of users and contributors. This means that the WiPy software has been carefully crafted with precision and has a strong and high quality code base.
We are also building an Automatic Integration Test setup to run nightly tests directly on the WiPy to make sure that every feature stays rock solid.
We entered negotiations with several manufacturing houses and suppliers at the same time that we began working on the first prototype, and right now everything is clear and defined, we only need to know the exact quantity of boards that we will manufacture on the first run based on the final amount pledged. We have chosen a Dutch assembly house, located in Eindhoven, and we will be present when the first boards come out of the manufacturing line, making sure that everything is perfect.
Component parts availability and lead times are well taken into account, that's why we have in our planning 3 months time between the end of the campaign and the delivery of the boards. We have even negotiated the shipping with the PostNL and they offered to give us full support during the whole process.
We are confident that we have addressed every important aspect of the project and we have worked very hard to make sure that we had everything under control before showing the WiPy to the world. Technical risks are super low at this stage since the hardware has been extensively tested and the software is almost complete.Learn about accountability on Kickstarter
- (30 days)