A place users can post their projects. If you have a small project and would like your own dedicated place to post and have others chat about it then this is your spot.

User avatar
By bennyborn
#8713 Hi there,

I had a couple of ESP-01 modules lying around since months and began working with them for the last two weeks using the NodeMCU firmware. First of all I started off building myself a little programmer board since I found fiddling around with my breadboard all the time was just too time consuming. Plugging a module in and attaching a UART-Module seemed to be a little more comfortable :)

Image

After trying out some sample scripts I came up with the idea to hook up one of my SSD1306 0.96inch OLED displays to display some messenges - paired with a neat little webinterface, I'm a webdeveloper for living, this could be a funny little device too exchange some messages with my friends.

After trying to get the OLED working on the ESP alone I hooked up one of my Pro Mini clones - it seems to me that the NodeMCU firmware is taking up a little bit too much RAM to hold a full character font. Said and done everything was prototyped on a breadboard.

Image

With the basics up and running I thought about a viable solution to get everything doing it's stuff by it's own.
As you all surely know, you basically need to hook up the ESP to a UART connection at least once to get your Wifi credentials in there but using UART would'nt be possible for everyday Joe :D

While trying out some stuff and getting to know the limitations of the firmware and the ESP itself, I found that I could automatically set up an AP and a webserver to give the user the possibility to configure the connection via a little webpage.

Once I had everything done for a first "real" prototype (at least from the software side) I started figuring out how to build a neat little board to get everything together and as small as possible. Because I don't have any experience in PCB design and manufacturing yet I also build this up on a little 5x7cm VIA protoboard.

Image

Sidenote: The back of the pcb shown in the follwing picture does not show the final board, it's just an photo I've taken in the middle of the process so it lacks nearly all wire connections. If asked for I can sure attach some photos of the "final" product ;)

Image

A little explanation for the ones who are interested:
The whole board is powered by an LM117T 1A 3.3V voltage regulator which is fed from an Mini-B-USB port - I found that Mini-USB was the smallest I could get on a VIA protoboard. I have two jumpers on the right which birdge the TX and RX lines from the ESP to the Arduino. Splitting them up is needed to flash ESP and Arduino independently. On the front side you can see some single pins from the ESP on the left and a little header for the arduino on the right. Both are obviously needed to flash them and thats also why the OLED is still socketed - easy access, right? :D

Everything is still in development but a least it's working and for those who are interested or need some parts of my code feel free to take a look at my Github repository on https://github.com/bennyborn/uMessenger

And now you're more than welcome for some questions, ranting or flaming :D

PS: I've attached a screenshot from the webinterface - responsive layout, webfonts, AJAX and all that stuff :)
You do not have the required permissions to view the files attached to this post.
User avatar
By Fr4gg0r
#8719
bennyborn wrote:After trying to get the OLED working on the ESP alone I hooked up one of my Pro Mini clones - it seems to me that the NodeMCU firmware is taking up a little bit too much RAM to hold a full character font.


ESP free RAM with nodemcu is 20x the size of arduino's. ._.

Looks nice, but I don't see the point of the arduino (unless you need the extra analog inputs and pwm capabilities).
User avatar
By bennyborn
#8721
Fr4gg0r wrote:ESP free RAM with nodemcu is 20x the size of arduino's. ._.
Looks nice, but I don't see the point of the arduino (unless you need the extra analog inputs and pwm capabilities).

Thats true but as soon as I start building up a table for the font like https://github.com/adafruit/Adafruit-GFX-Library/blob/master/glcdfont.c I get a message saying that I can not load the module (built the oled driving as a module) because of not enough RAM. If you find a workaround for this I'd be more than happy to integrate it :)