UNO + Ethernet Shield + LCD + RGB + ESP8266?

Hi guys

new to the forum here. Absolutely loving arduino and IoT related stuff. I’m new to electronics but have a fairly strong background in programming.

I would like to ask if my current plan is feasible:

As you can see from the picture I have an UNO with an internet shield on top. I am aware that D10-D13 are used by the ethernet and that my current LCD uses like 7 pins. After hooking up an RGB to A0-A3 and a DHT22 to the other 2 analog pins that is me completely out of GPIO’s.

While this is fine with the little 16x2 LCD I would love to get a better one, perhaps a larger touch panel that seem to be real cheap on ebay… are there any decent ones that don’t require so many digital pins so I can free up some space?

oh P.S. I also want to attach an ESP8266… I think I read they consume D0-D1(tx-rx) right? so I’m safe there if that is the case

Very new to all this so any input would be extremely appreciated and I will be happy to release code to any other newbies once it is all nice and working.

Thanks!

For starters you can get an LCD with i2C backpack. It needs 2 GPIO pins viz A4 (SDA) & A5 (SCL).

If u keep adding hardware and plan on using the SD Card on the Ethernet shield as well, be prepared to start looking at a Mega for additional flash/sram memory.

Thanks for the reply.

I Went ahead and purchased a 320x240 SPI LCD. It appears to only require 5 digital IO's should should work nicely for my scenario.

I actually already have a DUE which is getting used for the main project, this uno is simply the "receiver" via ethernet / esp8266 wifi.

I will probably be back to the forum soon complaining about struggling to get the esp8266 working haha :) just waiting on some 3.3 voltage regulators coming on the slow boat so I can get that hooked up. a simple resistor setup I assume would not work to drop the tx & rx to 3.3? Still need to read up on the esp8266 to be honest so I will go ahead and do that now

thanks anyway bud

I am not sure which ESP8266 you are using, there are a variety of them. The ESP8266 chip requires quite a bit of power and the Arduino does not have enough oomph to drive it. You need to check the data sheet for the rating of your specific module. For the I/O pins resistors can be used in series, but you can also use a level shifter.

aisc: I am not sure which ESP8266 you are using, there are a variety of them. The ESP8266 chip requires quite a bit of power and the Arduino does not have enough oomph to drive it. You need to check the data sheet for the rating of your specific module. For the I/O pins resistors can be used in series, but you can also use a level shifter.

The module is a ESP8266-12... I have already soldered it to the breakout board so fingers crossed it works when I get my 3.3v regulators.

http://g02.a.alicdn.com/kf/HTB1pvdzHXXXXXaYXXXXq6xXFXXX2/221601881/HTB1pvdzHXXXXXaYXXXXq6xXFXXX2.jpg

I'm sure I have seen video's where people ran the module directly from an arduino, isn't the 0.5A draw from a USB port enough for the arduino and module combined?

If I do need an external power source how do you recommend I wire it all up so I don't have to use multiple plugs? When the project is complete the arduino will be powered via the 5v adapter socket.

.

Scottish_Jason: I'm sure I have seen video's where people ran the module directly from an arduino, isn't the 0.5A draw from a USB port enough for the arduino and module combined?

If I do need an external power source how do you recommend I wire it all up so I don't have to use multiple plugs? When the project is complete the arduino will be powered via the 5v adapter socket.

Probably not a good idea to just blindly follow others - do your own research. Consideration is not only the USB port capacity, also The Arduino pin ratings. Connection will depend on your setup and how you want to package it.

Here are the ESP8266 current draw ratings - Note the Tx ratings.

Here are the Arduino pin ratings.

You should probably read through these

I am testing an ESP8266 module on an iBoardex. The board runs much hotter with the module than without - I am still investigating.

aisc: . Probably not a good idea to just blindly follow others - do your own research. Consideration is not only the USB port capacity, also The Arduino pin ratings. Connection will depend on your setup and how you want to package it.

Here are the ESP8266 current draw ratings - Note the Tx ratings.

Here are the Arduino pin ratings.

You should probably read through these

I am testing an ESP8266 module on an iBoardex. The board runs much hotter with the module than without - I am still investigating.

I appreciate the help, thank you.

I didn't intend on blindly following others but as much input as possible to my newbie electronic mind is likely advantageous. I was already aware that the ESP2866 consumed 200ma but was under the impression that the arduino could support that. Obviously I have further research to do, but it is early days as I only just got into electronics recently.

Maybe a silly question, but you mention that it also comes down to pin ratings other than current draw. I have seen many video's of people using these modules with arduino uno's so how do they manage it if the UNO pin's are not compatible?

But anyway, thanks again.

Scottish_Jason: Maybe a silly question, but you mention that it also comes down to pin ratings other than current draw. I have seen many video's of people using these modules with arduino uno's so how do they manage it if the UNO pin's are not compatible?

In response to your earlier question I said that not only the USB's current supply capacity should be considered but also the rating of the Arduino pins, by which I meant voltage (5V) and current capacity (40mA max, 20mA recommended) - refer the link I provided.

From memory, the ESP8266 pins are rated at 3.3V.

I would say videos are short term demonstrations to show something is possible. Question to ask - how long will that configuration continue to operate?

Most things can be used at values above their ratings, but inevitably they will break down. Generally in engineering, when u do design, u take the criteria given in the spec sheets and u ensure your design is within the limits of the manufacturer's specifications i.e. u do not exceed max voltages or current capacities.

aisc: In response to your earlier question I said that not only the USB's current supply capacity should be considered but also the rating of the Arduino pins, by which I meant voltage (5V) and current capacity (40mA max, 20mA recommended) - refer the link I provided.

From memory, the ESP8266 pins are rated at 3.3V.

I would say videos are short term demonstrations to show something is possible. Question to ask - how long will that configuration continue to operate?

Most things can be used at values above their ratings, but inevitably they will break down. Generally in engineering, when u do design, u take the criteria given in the spec sheets and u ensure your design is within the limits of the manufacturer's specifications i.e. u do not exceed max voltages or current capacities.

Thanks, I understand now after reading the links that you provided. I was unaware that the logic levels on the UNO would be up to 5v and also that the arduino provided so little current.

My current conundrum is getting both an (SPI) Ethernet Shield & (SPI) LCD to function together on this UNO, if it is even possible. I am looking into software SPI for the LCD as I won't really have to refresh very quickly but was wondering if Chip Select would work to alternate between devices?

And in relation to the ESP8266 would a 3.3v regulator (AMS1117) in line with large capacitors do the trick in order to be powered directly from an arduino with a 5V/2A DC power supply (on a DUE)?

There a tossup about the esp2866 see from the datasheet it tells one thing one place and something else later on the pins can handle up to 6 volts then they disconnect. Then it said under 5.8 volts there no disconnect. So you have people using tx and rx from there uno without doing anything sounds good right. Problem is you don't know what's going to happen in the long run. Now this is what I no the tx pin works good with a voltage of 3.3 to 4.3 without any problems and at the chip max serial speed you have to be 3.3 and higher for it to work good. So this is what I did I grabbed my uno and tested it guess what it's not 5 volt just cause it said it is it's less 4.5 volt tops but to be safe I use a diode to drop it .7 volts works great just hook it up right or you'll not be getting anything. The rest of the pins get 3.3 and the ADC pin 1 volt

The AMS1117 will work fine I have two boards with them On them works great

Scottish_Jason: My current conundrum is getting both an (SPI) Ethernet Shield & (SPI) LCD to function together on this UNO, if it is even possible. I am looking into software SPI for the LCD as I won't really have to refresh very quickly but was wondering if Chip Select would work to alternate between devices?

You can use more than 1 device on an SPI buss, u just need to have different CS pins. The LCD+backpack I suggested in fact uses I2C.

And in relation to the ESP8266 would a 3.3v regulator (AMS1117) in line with large capacitors do the trick in order to be powered directly from an arduino with a 5V/2A DC power supply (on a DUE)?

If I understand u correctly, then IMHO no - not a good idea.

The AMS1117 can be used to supply power to the ESP8266 directly i.e. not via the Arduino. For the logic levels, you would normally use a shift register (e.g. 74HC595) to change voltages. Doesn't the breakout board you have now, have on-board voltage shifting?

Usually breakout boards or adapters will provide the necessary shifting - u need to check the datasheet.

Edit : Above was written with Uno in mind. I just read the Due specs.... Why not just power the ESP8266 direct from the 3.3V pin? - it can supply 800mA. Also the DUE I/O voltage level is 3.3V, so you don't need any shifting.

aisc are you reading something I’m not the Op is saying he going to use the power supply of 5 volt with a AMS1117 to get 3.3 volts for his esp2866 that will work.
Theres know shifting on the boards esp2866 from china. They didn’t even make them bread board friendly.

He’s talking about the 5 volt pin On the due

DC Current for 5V Pin 800 mA

be80be: aisc are you reading something I'm not the Op is saying he going to use the power supply of 5 volt with a AMS1117 to get 3.3 volts for his esp2866 that will work. Theres know shifting on the boards esp2866 from china. They didn't even make them bread board friendly.

He's talking about the 5 volt pin On the due

Well actually ideally, I would like to get an ESP2866 working on both my UNO and DUE if possible but it's more important that I get it working on the DUE which of course is 3.3v power and 3.3v logic levels which should be fine without any voltage dividers, right?

And in relation to the power draw for the ESP2866 I read that a capacitor is required to hold some power required on TX bursts to prevent drop outs. You say you don't recommend this, may I ask why? Just trying to get a clearer picture in my head of how this is all going to work.

Many sources are often contradictory and it gets confusing.

The Due is 3.3 volt it would work fine and if your powering from a wall adapter that is 2 amps your good to go.

And I would use caps On the power line I did on mine like I said the esp2866 likes sold 3.3 plus on the uart lines I have mine set to just under 3.8 volts But 3.3 works too just I have had problem when the uart lines was lower then 3 volts I could send but receive would error at high speed these things can send data fast and way faster then the buffer setting on a ardunio is set now the due I don't know.

Scottish_Jason: You say you don't recommend this, may I ask why? Just trying to get a clearer picture in my head of how this is all going to work.

I think you misread my reply. My "not good idea" was in relation to powering the ESP8266 via the Arduino (I assumed Uno). Caps are used for a "quick discharge" power boost - which is sometimes needed. They are not essential but will improve operation such that you will probably have less loss of packets. So by all means add it - make sure you get the polarity right if u use a polarized one.

Thank you all for the replies.

I decided to try a nrfl2401+ module to update my data to thingspeak. It's all hooked up now but I am trying to find appropriate code to send data to a website. Is this TCP operation possible with these modules? or do I need to get the module to send the sensor data to an external receiver device which would then upload the data via an ethernet shield?

I have the code working fine for ethernet but struggling to find how to send data to a website via the wi-fi modules. I did find related code for the ESP8266 but would love to get this module working due to the lower power draw and the no need for an extra external power supply.

Thanks again

Scottish_Jason:
I have the code working fine for ethernet but struggling to find how to send data to a website via the wi-fi modules.

An Ethernet connection is a hard-wired link to your router/LAN.
An WiFi connection is a wireless link your router/LAN i.e. one replaces the other.

In essence the code for posting to a web site should be the same irrespective of the type of link to the router.

Is the web site a remote (online) web site?

If u post your code, someone could review it.