new WEMOS Oled shield

All ESP8266 boards running MicroPython.
Official boards are the Adafruit Huzzah and Feather boards.
Target audience: MicroPython users with an ESP8266 board.
Post Reply
mianos
Posts: 84
Joined: Sat Aug 22, 2015 6:42 am

new WEMOS Oled shield

Post by mianos » Mon Mar 14, 2016 8:51 pm

http://www.aliexpress.com/store/product ... 87079.html

How cool is this. Wifi, MCU and a display for 13 bucks.
(Now if my original wemos arrived, I ordered them during CNY :( )

woodat
Posts: 20
Joined: Wed Feb 17, 2016 9:24 pm

Re: new WEMOS Oled shield

Post by woodat » Tue Mar 15, 2016 4:23 pm

If you can stomach one a bit bigger and do some soldering, you can get Wifi, power adapter/charger, LCD and SD card reader for only 6.71 (USB-Serial not included)

ESP-12e: $2.33
ST7735: $3.78
TP4056: $0.32
AMS1117: $0.28

I'm currently using those to build a little wrist-mounted device similar to that seen in various popular games (see attached). Am hoping to port it to upython though without an existing RFID reader library that's on the backburner (sadly don't have time to try porting a library as well).

All this said, I'd never heard of the Wemos. That's one cute little dev board! Love the form factor. Think I need to get one :)
Attachments
6db04e87-ef37-4417-b95d-c19fbd0cf991.jpg
6db04e87-ef37-4417-b95d-c19fbd0cf991.jpg (66.63 KiB) Viewed 6767 times

User avatar
platforma
Posts: 258
Joined: Thu May 28, 2015 5:08 pm
Location: Japan

Re: new WEMOS Oled shield

Post by platforma » Tue Mar 15, 2016 4:27 pm

That's a brilliant pip-boy if I've seen one! What is the shell made of? It looks like cookies :)

woodat
Posts: 20
Joined: Wed Feb 17, 2016 9:24 pm

Re: new WEMOS Oled shield

Post by woodat » Tue Mar 15, 2016 7:01 pm

3d-printed on my m3d printer then covered in what turned out to be a very grainy rustoleum spraypaint. Video of its current state. https://www.youtube.com/watch?v=fuKOwVGkJzc

Still only half done though. It's going to do tracking of other ESPs (range based off of signal strength), RFID scavenger hunting, and hopefully mp3 playing. Most the coding time (using the Arduino IDE) is taken up just building systems to handle all the arrays and objects its taking to create the functionality; which is why I'm here. What takes me an hour to code in C could be done in just a couple lines of python. In either event, it certainly highlights just how stunningly flexible the ESP8266 is for less than $2.50.

and Wemos ordered btw :) Now comes the waiting game for that (though I did just get in a shipment of ten 12e's last night so I have plenty to play with in the meanwhile)

User avatar
deshipu
Posts: 1388
Joined: Thu May 28, 2015 5:54 pm

Re: new WEMOS Oled shield

Post by deshipu » Fri Jun 17, 2016 9:34 am

Some fun with that shield:
IMG_20160617_112945.jpg
IMG_20160617_112945.jpg (203.38 KiB) Viewed 6223 times
And the code for that (very inefficient):

Code: Select all

from machine import Pin, I2C
import ssd1306

logo = (
    0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00000001, 0b10000000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00000000, 0b00010000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00000001, 0b10001000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00000010, 0b01100000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00000100, 0b01010000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00000100, 0b00001000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00000101, 0b00001000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00001101, 0b01001000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00011110, 0b01001000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00011111, 0b10011100, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00111111, 0b11111100, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00111111, 0b11111100, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00111111, 0b11111100, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00111011, 0b11111100, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00011011, 0b01111000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00011111, 0b01111000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00001111, 0b11111000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00000111, 0b11110000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00000111, 0b11110000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00000110, 0b01100111, 0b00000000, 0b00000000,
    0b00000000, 0b00000001, 0b11001010, 0b01101111, 0b11100000, 0b00000000,
    0b00000000, 0b00000111, 0b11111010, 0b11111111, 0b01110000, 0b00000000,
    0b00000000, 0b00001101, 0b11110110, 0b11111100, 0b11110000, 0b00000000,
    0b00000000, 0b00011110, 0b01100100, 0b11110011, 0b11110000, 0b00000000,
    0b00000000, 0b00011111, 0b10010001, 0b11001111, 0b11101000, 0b00000000,
    0b00000000, 0b00010111, 0b11101101, 0b11111111, 0b11001000, 0b00000000,
    0b00000000, 0b00011011, 0b11000001, 0b11111110, 0b00111000, 0b00000000,
    0b00000000, 0b00111010, 0b11100001, 0b11010010, 0b01111100, 0b00000000,
    0b00000000, 0b00111100, 0b01011101, 0b11100011, 0b11111110, 0b00000000,
    0b00000000, 0b00111110, 0b01000001, 0b11111111, 0b11111110, 0b00000000,
    0b00000000, 0b00111111, 0b11100001, 0b11111111, 0b11111010, 0b00000000,
    0b00000000, 0b11111111, 0b11110010, 0b11111111, 0b11110011, 0b00000000,
    0b00000001, 0b11111011, 0b11111100, 0b01100100, 0b10010111, 0b10000000,
    0b00000001, 0b01111101, 0b01010001, 0b11001001, 0b00111110, 0b10000000,
    0b00000000, 0b10011111, 0b10001110, 0b10001011, 0b11111001, 0b00000000,
    0b00000001, 0b10100111, 0b11111111, 0b11111111, 0b11100101, 0b10000000,
    0b00000001, 0b01101001, 0b11111111, 0b11111111, 0b10010110, 0b10000000,
    0b00000010, 0b01011010, 0b01111111, 0b11111110, 0b01011010, 0b01000000,
    0b00000000, 0b10010110, 0b10011111, 0b11111001, 0b01101001, 0b00000000,
    0b00000000, 0b00100101, 0b10100111, 0b11100101, 0b10100100, 0b00000000,
    0b00000000, 0b00001001, 0b01101001, 0b10010110, 0b10010000, 0b00000000,
    0b00000000, 0b00000010, 0b01011010, 0b01011010, 0b01000000, 0b00000000,
    0b00000000, 0b00000000, 0b10010111, 0b11101001, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00100101, 0b10100100, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00001000, 0b00010000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000,
    0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000, 0b00000000,
)

i2c = I2C(Pin(5), Pin(4))
display = ssd1306.SSD1306_I2C(48, i2c)
display.fill(True)
for y in range(48):
    for x in range(48):
        display.pixel(40 + x, y, not logo[y * 6 + x // 8] & (1<<(7 - x % 8)))
display.show()

Post Reply