Ever since the ESP8266 WiFi-enabled microcontroller came on the scene, it seemed like suddenly everyone came up with WiFi-enabled projects. But the ESP8266 is not the only game in town! Reader [PuceBaboon] notified us of a new product released by Seeed Studios: the imaginatively called Air602 WiFi Development Board.
The core of this board is the tiny WinnerMicro W600 MCU, which integrates a 32-bit ARM Cortex M3 CPU, along with dual UARTs, I2C, SPI and I2S interfaces, as well as a real-time clock (RTC). Add to this hardware crypto, seven I/O pins (five broken out on the development board) and you have a very capable WiFi-enabled MCU which can be programmed using the usual ARM development tools (e.g. Keil) using the provided SDK.
The W600 module can be bought by itself, in all its diminutive 12 mm x 10 mm glory, for a mere $1.90 as of time of writing – without antenna – as noted in [PuceBaboon]’s thoughts on this MCU and the development board.
62 thoughts on “Tiny WiFi-Enabled ARM MCU For Tiny Projects”
Hmm, interesting device and on a small development form factor too. Great for travelling distractions to keep busy, nice post a d great prices for the capabilities, thanks
ESP8266 for now has great price, support is also great (arduino/libraries). I think next big step/switch to other chip will be when 802.11ax is released and new chips that support deep sleep and battery operation for next wave of iot devices.
Agreed. And 5 GHz.
Most of my current needs are being met with ESP9266’s. This new part is pretty neat though, especially with RTC. I love the size too. And of course the price. I’ll wait 4 months for the community and codebase to build up. ;-)
Hi Ken! Here is the latest wiki page for Air602, http://wiki.seeedstudio.com/Air602_WiFi_Development_Board/ hope this will help you know more details about Air602
Yeah, the existing sleep mode is pathetic.
I find this chip interesting because of its built-in USB interface (at least, it appears to be built-in), which could allow the device to be arbitrary USB gadgets, with a WiFi upstream.
For example a UVC webcam talking to an IP camera, for all the video conferencing apps that can’t comprehend that one might want to use a non-directly connected camera.
I think it has no USB-Interface. In the upper left of the dev board, you can see a CH330N chip, which is a cheap USB-serial Interface Chip. So I suppose the communication to the chip is done via UART..
USB is also not mentioned in the WinnerMicro block diagram.
Indeed, doesn’t appear you can access specific USB device internal registers (well maybe by at commands back through the slave device) and as it shows on this link it appears as both com and lpt ports.
Didn’t know about the ch330 device, looks very cheap and goodies small opens a few opportunities if reliable and low power, hope no IP issues on windows/android access, can only find English data on the ch340 though.
Not seen options on device comms for lpt before in a USB interface, should therefore get around having to set UART serial speeds and perhaps thus always be at max through put ?
Though is that therefore output only, would be a shame if no input from external devices, bidirectional would be great, hmm
Hi there, please check here for Air602 witout USB! Great price at $1.9, hope this will help you guys :)
Nice feedback thanks Elaine,
I’m looking for the smallest USB device with minimal parts such as the 8 pin smd type where I can access some of the internal registers from the host pc, mainly for serial comms later on as if ttl rs232 but, dont necessarily want the host pc to automatically interpret the USB device as serial or parallel device types when plugged in. Ie. Our specific software on the host pc or android will access the USB to serial chip and take it from there without having the operating system assume it’s a serial or parallel device in the default list (as that could impose limitations etc) ?
I think there might be others who would be curious about that too, thanks
I wonder how much of that 128k RAM is available to user code, I suspect the wifi stack grabs a big chunk of it.
Their website displays the device as having 288KB RAM, with a 128KB block and a 160KB block — I would assume the 160KB block is used for the WiFi-stack and whatever. Also, there’s a 1MB Flash, which should still leave a reasonably large amount of space for the executable code.
Crypto hardware support. Nice.
Brb, gonna go mine some ethereum.
Does it make much of a difference how small the board is for wifi, when you’re gonna need a decent hunk of mAh for more than an hour operation?
Yeah, the overall size is smaller.
More space for batteries!
Great device on paper but stupid implementation. If you are going with this form factor why not use a chip capable of allowing it to act as a programmable USB device. I know almost nothing of the requirements or hardware to act as a USB profiled class device, so maybe it isn’t that simple. My understanding is that there are single chip solutions that only require to be fed the required meta data before activation, and worse case there definitely are single chip solutions that just require memory access that is setup before they are powered/reset.
That’s just the dev board. The bare chip doesn’t natively support usb. You’d have to come up with a board that connected the data lines to the chip and then use a software implementation.
Surprising it doesn’t, because lack of USB is one of the biggest annoyances with the ESP32, and adding low speed probably would have been easy.
I wonder if they left it out because of licensing issues? Gotta love Proprietary protocols!?
Possibly an added complication? It does have an interesting set of peripherals. I2S, SDIO and ISO 7816 are the main ones that catch my eye.
The only reason I can think of for the smartcard interface would as use in a smart card terminal. That may also explain the hardware crypto. I’d have thought that it might have had an RFID interface, though.
i was excited, a cheap wifi chip with ARM! and then i was disappointed, yet another with only chinese datasheet.
There are lot of funny chips with only a chinese datasheet. Unfolding these through google translate or simular will reveal real gems. I did it with a 0.42 usd arm cortex m0 in tsop8 package. Find the details here: http://smdprutser.nl/blog/the-arm-chip-that-wont-cost-an-arm-and-a-leg/
Thanks, didn’t know about this one. FWIW. It’s at that price point in those qty’s and maybe enough grunt too as front end for some USB memory sticks. I understand there are still a few less ethical 4Gbyte USB memory sticks which are really 8G with code to filter data going to the 4G half with selected copies into the remainder but, hidden 4G eg things like web site references, personal data etc Then when suitably ‘activated’ (apps to make your system more efficient) read the hidden copy, encrypt and upload to benign looking IPs or even mildly fudged so called safe common urls. Think this was first uncovered 6 yrs back but, not well touched on till a ted talk or article on Phys.org
The even less ethical USB sticks are the other way around. They advertise as, say, 8GB and only have 4GB…
Hmm, yikes living in Pollyanna land my friend, take your sticks to work maybe in a design co ???
Evident you have your idea of ‘less’ ethical fully dah other way around !
ie Takes a min or so to discover the stick has less memory than claimed (and often essy to get recompense) whereas buying a 4G that filches your data copying the juicy bits over several months or even years is somehow better for you (really ?) as in more ethical and even maybe pleasing it appears you got what you paid for yet being wilfully ignorant that without your knowledge your data can be stolen or commercial/banking seriously compromised. IOW Its clearly less ethical there is sureptitious means to steal and at what opportunity and over interminable periods with nil respite, yikes !
Now you know what can you do about it – that’s the troubling issue and I assess more prevalent than most people have ever appreciated, if also sponsored by state programs of industrial espionage (heard of Russia, China etc), how ethical is that – more or less ethical than merely superficially losing 4G dead space ?
In any caee who says it stops at 4G, you could well get an 8G stick which has 24G hidden – couple that with rather more crafty smarter host software too and having it one of your tech design backups, how will you find out, who yah gonna call ?
Flash sticks require more space than the use to do wear levelling and take care of bad blocks. I did a search of “Fake USB sticks” (With quotes) and the majority of the first 20 or so were of drives reporting to be much larger than they actually were with one BBC article on Jeep owners getting fake software updates to steal information.
Hi Greg! Please check the latest API document: http://wiki.seeedstudio.com/luatApi/ Wiki Page :http://wiki.seeedstudio.com/Air602_WiFi_Development_Board/ and join the forum : https://forum.seeedstudio.com/viewforum.php?f=106&sid=7e1d0b853195f6c58ddb3d2145df59f5 to talk about Air602 together! Hope all of these could help you :)
It´s 2.90$ not 1.90$ … accuracy …
Well, no, the dev board is 2.90, not the single module which is 1.90$. My bad!
No problem. I could have noted the price of the dev board as well, but figured that the price of the bare expander board would be enough of a hint :)
I2C seems to be available as alt func on UART1 RX+TX.
Interesting part, its like an 8266 but with an ARM core which is personally preferable. Also welcome aboard Maya!!!!
Thank you :)
Having used the ESP8266 extensively, I can definitely see the RTC and crypto peripherals being very useful on the W600. Also being able to use regular ARM embedded dev tools instead of the cobbled together ‘SDK’ for ESP8266.
That said, this chip is somewhat cramped for I/O if you need it, but that’s where a few GPIO expanders on the I2C bus could come in handy.
I can’t seem to tell if this thing has any sort of JTAG of SWD support, the main reason I would like to ditch the ESP chips is for a proper debugger, but I cant tell if this has that.
JTAG or* SWD
It seems to be using standard JTAG for programming, as far as I can tell based on the limited information. Since it also supports IDEs like Keil and has a standard ARM core, that would suggest that one would get full on-chip debugging capabilities.
The exposed pins seem to indicate a serial bootloader, and the dev board has a USB-serial
So, what’s the development environment to get Wifi like? The esp8266 didn’t get all that attention because of the hardware but because it could actually be programmed by mere mortals. There have been many ‘esp8266 killer’ offerings but none of them have been easily programmed. I remember the EMW3165 which required the use of the WICED framework to get the WIfi stack – a total #fail.
Keil as the “usual development setup” ? What about gcc ? All I have ever used for ARM is gcc, so I am not eager to jump to another development environment. Is Keil free ?
I’ll note that in general, the software development tools are a bigger issue than anything else in dealing with a new controller.
May be a problem since closed source libraries are involved. Some commercial compilers use a proprietary format, but usually it can be converted with some effort.
So, is Keil free or commercial software?
Very, very much not free! It’s (AFAIK) close to IAR in license cost, i.e. some 5000$ or so. Also (like IAR) Windows Only, bloated IDE and the usual HW dongles and license key mess. A real far cry from a plain, simple GCC/GDB/Makefile setup.
But, YMMV – it’s been years (several) since I tested some IAR & Keil setups. Can promise that they’re not free, though. They do offer some crippled ‘evaluation’ versions, maybe 32kB limited or similar; which are most probably also “not for commercial use” (for some arbitrary definitions of Commercial and/or Use)
Feel free to correct me if I’m wrong or outdated
I’ve used both Keil and IAR in the past before there were decent open source alternatives. Keil for 8051, IAR for H8S.
(Also used the HEW C++ compiler for a product)
The Keil brochure suggests that the toolchain and debugger for the lite version are limited to 32kB and M0, M0+, M3, M4 and M7 processors.
CH330 looks very interesting (datasheet: https://datasheet.lcsc.com/szlcsc/Jiangsu-Qin-Heng-CH330N_C108996.pdf ) Surprisingly you can’t buy it on Aliexpress or eBay.
I will prefer something similar, small, with ARM core, for few bucks, but with wired Ethernet interface instead of WiFi. It makes no sense to use WiFi if you have to provide wired power to the device. However there are still nothing on market…. You could find a lot of nice tiny modules with ENC28J60 or some WizNet chip, but absolutely nothing with user programmable processor in same form-factor.
Too expensive and too large kit with magnetics. It can’t be comapred with above W600 board (or ESP8266), nor in price, nor in size. I’m talking about something like typical small-footprint ENC28J60/WizNet module with some small ethernet-capable MCU instead of ENC28J60. Something like that: https://www.ebay.com/itm/311565490532 with same price…
If you can’t use gcc to write code for it and the libraries aren’t open, I’m not interested — I’ll stick with the ESP8266, much as I like ARM.
Check PSF-A85 or PSF-B85
A Cortex-M3 WiFi SoC isn’t that new. Seeed tried with RTL8710 based modules last year (https://www.seeedstudio.com/RTL8710-WiFi-Module-p-2793.html) but they don’t seem to have really gotten that popular. The ESP8266 and ESP32 are still far more widespread.
Looks nice, though can’t quite locate a PDF tech spec/manual or equivalent on it, possibly buried elsewhere incl detail on tool chain etc ?
Nice .. these kinds of things are almost cheap enough to embed in “quotidian” objects .. and that wort of thing will ultimately change the entire concept of what networking is.
“The Invisible Computer (1998) by Donald A. Norman”
C SDK for W600 avaliable here: https://github.com/cmheia/w600_sdk_thingsturn
Tested with GCC, Scons, VSCode and Eclipse in Windows.
Debug with JLinkGDBServer via SWD connection.
OK. I’ve gotten myself a handful of these devices. I have more than a handful of ARM processor devices that I can program from my Linux workstation. That includes full linux systems like raspberry PIs, orange PIs, pi nanos. And embedded processors from ST microelectronics: the STM32 family.
One little thing. I stopped using Windows sometime in the last century. So how do I get a binary into these chips? I no longer have a Windows machine.
It looks like there is a Python base serial flasher that uses x-modem in the link that “cmheia” provided above
I think that can run on Linux.
I’m wondering what’s the power consumption of this new chip looks like. ESP8266 is drawing 70mA-100mA while being in server mode. I’d love to use something that uses less power.
Ho già ordinato un ESP8266, qualcuno può darmi un collegamento alle specifiche PDF?
I wonder how much of that 128K RAM is available to user code, I suspect the WiFi stack grabs a big chunk of it.
Please be kind and respectful to help make the comments section excellent. (Comment Policy)