5 May 2020 at 7:57 #8759
I agree with PICmicro675, the use of esp per se relatively easy to connect and operate for small tests ,to how in our case if you want to connect it to communicate in ntp to a httpps server it becomes a real wall according to tests done with friends.
the problem e’ something does not work as communication logic, the router, internet, AT commands! you are not in control with them. Ai only the question / answer pair and the answer must always be YES.
Straight wires transmit commands from the PC's TX to the Arduino serial RX and connected to the ESP RX that receives them and transmits them over the air
The other way around, the answers that ESP receives via radio sends them on TX which e’ mirrored on the Arduino USB TX, which is’ connected to the PC RX
A) The PC sends a command on the TX pin to be sent in Wifi
B) Arduino receives it on the USB RX wire and inside it “it mirrors him” sul Pin RX
C) ESP receives it on its RX wire and interprets it as a command to transmit via radio and this it does!
D) Inverse path for replies from Wifi to the PC then basically:crossed cables you have to go if you want Arduino and ESP to talk, straight cables you have to go if you want to use Arduino as a tool to program ESP.
put the TX cables straight –> TX e RX –>RX put RESET ->GND
on ESP remove EN –> 3.3v and IDE goes straight into ESP
I'm not,(we are ) managed to conclude and positive and above all stable towards this type of communication, found super reliable solutions on the web.
and also taking into account the latency of the signal, I am concerned about the accuracy of the info received, which I presume maybe they don't arrive in real time, but it is my assumption since I was unable to do this type of test. Perhaps returning to the old speech of the GPS / GSM module or just NEO (in fact less reliable as an antenna) perhaps receiving in NMEA exact time GPS is the winning solution… I repeat it is only to open any new solution if the ESP8266 becomes too problematic.5 May 2020 at 7:58 #87617 May 2020 at 6:05 #8775Picmicro675Moderator
I started doing some tests.
From my experiments I found that if you turn ESP on-01 first it is likely to enter a boot failure situation. However it is not excluded that it can happen.
You need to keep a reset button just in case to bring us back to a calm condition.
It pays to feed with at least 500 mA, during ignition, for attempting to connect, it requires much more current than normal, it depends on whether it applies more power to establish the connection. Arduino's power supply cannot meet the request. Too many restarts may occur due to voltage drop.
This connection is automatically enabled once the access data has been defined. They are stored.
I developed this circuit, taking inspiration from the Arduino UNO wiring diagram.
Right click and view the image to see the original dimensions.
Pullup resistors can be placed on almost all inputs, CH_PD, GPIO0, GPIO2 e RESET, although I think they are not completely necessary. Maybe the system is programmed with internal pullups. Values from 3k3 to 10k can be fine.
Put a capacitor of at least one milliFarad, to compensate for current peaks.
If you were using a USB-UART adapter, i think its power output a 3,3 V is sufficient for the purpose, Only agree that the USB port is at least 1 A.
I have to say that I need to get familiar and understand how to plan. Especially if programming is not good and / or interrupted. I suppose the firmware has a boot loader that checks the GPIO status at startup. So if you have not changed the boot loader it would still be possible to repeat the flash programming,7 May 2020 at 11:07 #8784gvsoftParticipant
The first programming tests of ESP_01 made me despair: he could not connect while programming the sketch and he always gave me not sync error
Then sifting through the net I understood how it should be done: The ESP must enter programming mode leading to “0” logical GPIO_0 and after giving voltage bring to “0” reset pin and then release it. This is the only way to carry out all the programming. I also made a PCB just to facilitate these operations.7 May 2020 at 13:11 #8787Just4FunParticipant
For this reason, using a single nodeMCU module I think it would simplify the HW part quite a bit…9 May 2020 at 2:40 #8815Picmicro675Moderator
As you can see I cut the subject for what concerns little with a nixie watch.
There is talk of how to want to program an ESP.
Then sifting through the net I understood how it should be done: The ESP must enter programming mode bringing GPIO_0 to logic "0" and after powering up bring the reset pin to "0" and then release it.
I would be happy if it were really the procedure. Now my tests give me that you immediately enter the programming phase, also by connecting GPIO0 fixed to the negative. In fact, I loaded mycropython.
Although I have two USB-UART interfaces I wanted to try arduino. The method used, in fact it excludes arduous from interfering on the serial. As can be seen, ATmega328 is kept constantly at mass and does not become operative. The internal interface of the arduino board remains on line D0 and D1 (an ATmega8 programmed for UNO and an FTI232 for NANO). The diagram shows that the lines are crossed to D0 and D!, therefore contrasting with the serigraphy on the Arduino board.
You can also put arduino as an interpreter for communication, for this reason a software serial is needed, but not recommended to put it to 115200 baud, because there may be difficulties in synchronism. For this reason, if it is possible to communicate with ESP, you need to program ESP to use a much lower baud rate. Since even a soft serial is subject to interrupts, to hear the falling edge of the start bit.
So to write on ESP, once started in write mode, it can be accessed via arduino IDE or with epstool which uses python as an interpreter.
It is agreed that such a development board is convenient, slightly wider than arduino Nano. There are still small obstacles to interfacing with TTL circuits, but I remember that there has already been talk of using shift level, transistors or opto-couplers.9 May 2020 at 11:04 #8827Just4FunParticipant
The convenience of the nodeMCU card (actually the name of the hardware would be DevKit, but it is commonly called nodeMCU) more than its physical size, it is related to the greater ease of programming (already has USB for use with Arduino IDE) and higher GPIO numbers, comparable with that available using Arduino nano and the like.
As for interfacing with TTL logics, as I said, nothing is needed (in the reverse from ESP8266 to TTL).
Finally, as regards the programming mode, you can choose various “roads”, but leaving out more or less solutions “imaginative” the mode “classical” and more comfortable is to use Arduino IDE. Of course it is necessary to load the appropriate “core”, which is also very trivial because it is enough to use the Board Manager having loaded the appropriate .json string. This will automatically load everything you need, examples included.
It all seems very simple and straightforward.9 May 2020 at 12:31 #8831AmilcareKeymaster
@Just4Fun thank you I am in the process of using this module which I will have to prepare in late summer and I have enough time to learn how to use it.
I have three available and expendable for my big and small mistakes.
- You must be logged in to reply to this topic.