Shipping to United States starts at $3.50
This is a small (18 mm x 15 mm) board with Espressif's ESP8266 SoC with Tensilica's Xtensa 32-bit, 80 MHz low-power processor and an integrated wifi engine (integrated TCP/IP stack) that is designed to mount directly onto the Teensy 3.2 and use the Teensy UART Serial2 port to provide wireless communication to any Teensy-based project.
I designed this board without an LDO voltage regulator since Teensy 3.2 already has enough current to support operation of this device. It won't work on Teensy 3.1 since to start wifi operations requires current of >200 mA during transmission. 3V3, GND, RX2 and TX2 line up with the corresponding pins at the non-USB end of the Teensy 3.2; this way the board may be mounted directly onto the Teensy 3.2 for the most compact package.
Of course, you can also use this on a breadboard and connect it to any microcontroller, but there are many cheaper alternatives for the ESP8266. It's true, these alternatives tend to be large and not the appallingly small size of this ESP8266 board. Even though this board is designed as a Teensy 3.2 add-on you still might find it useful off the Teensy if space is at a premium and your project can benefit from a very small-sized wifi solution. I have broken out all of the GPIO pins of the ESP8266 except the RTC_OUT (not sure what this does). As a standalone board, this means you can have a UART port and an I2C port (I use GPIO 0 and 2 since they already have 4K7 pullups) and still have seven GPIOs left over which can be used to access PWM, SPI, or even an I2S peripheral. There's a lot of versatility available on this very small board! You will need an external power source able to supply 3V3 to the board with at least 300 mA.
I loaded the most recent firmware (i.e., AT21SDK95-2015-01-24.bin) onto the 8 Mbit WINBOND W25Q80BLUXIG SPI flash which allows AT commands so I could verify the proper function of the flash memory and that the wifi engine is working. Here is a very basic Teensy sketch that allows AT commands to be entered in a serial monitor (change Serial 1 to Serial2). With 8 Mbit, the flash can hold the latest firmware providing the capability for over-the-air firmware updates. There is also a nice Arduino overlay allowing the Arduino IDE to be used to program the ESP8266. I have use the Arduino IDE to read a BMP280 pressure sensor over I2C (SDA/SCL on GPIO 0 and 2) using the ESP8266 as a stand-alone microcontroller. The data is then sent to both the serial monitor and a web server where it can be displayed on the local network. This is a bare bones example of how to use the ESP8266 as a microcontroller to manage sensors and as a wifi server. The full capability of the ESP8266 Arduino IDE is discussed here. The ESP8266 is a remarkably versatile device by itself; it is even more useful when combined with a Teensy 3.2.
It should be possible to use the Teensy 3.2 to read sensors or gather data from any Teensy 3.2 peripheral, send it to the ESP8266 via Serial2 and the send the data to a web server or smartphone. It should be possible to use the ESP8266 to update the Teensy flash over-the-air. The Teensy program pin is broken out on the ESP8266 board and tied to GPIO5. The user can choose to solder GPIO5 to a Teensy GPIO pin (Teensy 3.2 pin 8 if mounted on the Teensy 3.2) OR solder the ESP program pin to the Teensy 3.2 program pin so the ESP8266 can activate the Teensy boot loader to update the Teensy flash program. This Teensy OTA re-flashing has yet to be worked out, but this is one of the uses envisioned for this board.
Why did you make it?
The Teensy is a great platform for prototyping but it lacks connectivity. I wanted to take advantage of the inexpensive ESP8266 and all of the development work going on around this chip and provide a means to get easy wifi connectivity for my Teensy-based projects. I still have a lot to learn about how best to use the ESP8266, but I was able to produce a web page using the Teensy to construct the content and the ESP8266 to send it to the web. This is exactly the kind of capability I am after. I want to be able to use the Teensy to read sensors or process sensor data, and send the results to a web server or smart phone. The ESP8266 makes this a piece of cake, and this small ESP8266 add-on makes it convenient to do this for all Teensy-based projects!
Additionally, the ESP8266 has several GPIO pins available providing additonal peripheral ports to augment those of the Teensy. These include RTS/CTS for UART with flow control, an SPI peripheral, and an I2C peripheral capability. The ESP8266 even has an I2S audio port!. Providing Teensy-based projects with an additional SPI port might be possible to augment the one and only hardware SPI port available on the Teensy 3.2. This would require having the ESP8266 manage the SPI communications but then report them to the Teensy via serial2, or maybe just send the data to a server via wifi. I am not sure how best to use the extra GPIOs made available by the ESP8266 but someone is going to be tempted to do so in their Teensy-based project.
Lastly, the ESP8266 can provide an over-the-air program update for the Teensy 3.1 itself. Paul Stoffregen is working on this, since it requires some changes to the Teensy bootloader and firmware, etc. But the idea is to use the wifi connectivity provided by the ESP8266 to allow Teensy reprogramming without having to connect a USB cable! Over-the-air Teensy programming...now that would be useful!
What makes it special?
It is small, designed to mount right onto the Teensy 3.2, which provides enough current to run the wifi engine at full speed. In my limited testing I was getting -50 dbm at my desk 20 feet away from the wifi router in my house. I've done away with the pcb antenna and replaced it with a solder pad for a wire. I did some simple testing comparing a pcb antenna, ceramic chip antenna, and a wire antenna using the RSSI reported by the ESP8266 itself and I got the best reception (strongest signal) with a wire either clipped or soldered onto the solder pad. This is great because it allows a smaller and cheaper board as well as the most compact application solution. The board comes with the bare pad so you will have to clip or solder on your own 1.2-inch-long wire. I recommend stranded 24 or 26 gauge copper wire, but almost anything will do. The ESP8266 is very forgiving in the RF realm.
This add-on is not as cheap as the ESP8266 modules you can buy elsewhere on Tindie or on ebay, etc. If you don't care how much wire it takes to connect to your Teensy, don't buy this ESP8266 add-on board, you'll be paying too much! However, if you want a compact wifi solution to your Teensy 3.2-based connectivity problems, with all of the ESP8266 GPIOs broken out, this is the add-on for you.
Order the board from OSH Park and assemble your own ESP8266 add-on, or buy the fully assembled and tested board from me and see how easy it is to add wifi connectivity to your Teensy-based projects!
|Shipping Rate||First item||Additional items|
United States Postal Service: Standard Ground Rate with tracking
United States Postal Service: Priority Mail with tracking
Priority mail for faster delivery only available withing the US.
We recognize our top users by making them a Tindarian. Tindarians have access to secret & unreleased features.
We look for the most active & best members of the Tindie community, and invite them to join. There isn't a selection process or form to fill out. The only way to become a Tindarian is by being a nice & active member of the Tindie community!
One-man maker shop with a focus on appallingly small, value-added products. Specialties include motion sensing and motion control applications.
If you don't see what you want, let me know what it is, I might be able to help!
See here for my story: https://www.maker.io/en/interviews/2016/interview-with-kris-winer---pesky-products