Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 22:26 12 Nov 2025 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : Playing with the ESP’s

Author Message
Quazee137

Guru

Joined: 07/08/2016
Location: United States
Posts: 600
Posted: 05:37am 03 May 2019
Copy link to clipboard 
Print this post


Here is a bit of fun I've had playing with ESP's and ESP Easy.
The ESP-07 and 12's are easy to get the 4 relays working. While
waiting for my burner for them (very slow boat from CHINA).
I went back to play with the ESP-01's. I found out that you can
turn off serial port freeing up Tx = GPIO 1, Rx = GPIO 3 now I
can use them to drive the relays. Well except the startup chatter
will fire off GPIO1. Not good !!! But wait what if the relays had
a slow start function. Then the ESP-01 can power up and not affect
them. So here is the basic concept.





I liked the circuit from Grogster post Grogsters post


I remembered seeing this post Grogsters post while looking for the other one.
Had 10 of them I got to top off and order (free shipping LOL). Looking at the
MP2307 data sheet I saw that there is two pins of intrest 7 (EN) and 8 (SS).
Getting these out to play with was 20 min's of hit and misses but got them.





First played with pin 8 but even with a big cap not as much time for the
ESP-01 to get settled. So on to pin 7 and the works with adding Diode and
220uF cap now a few sec's delay while the ESP-01 powers up.





and the sender is so simple




To make this easier there are these modules



5 on order to play with.

This concept can be used any time a micro has pins that toggle at power up.
And if your project has a stable on power up pin it can be used to drive the
enable pin when needed.

Thanks for this GREAT forum.

And after thought on using the 4 bit level shifter one could hold the 3.3v at
bay for a few sec's may work for both input and output delaying.


Edited by Quazee137 2019-05-04
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3470
Posted: 11:56am 03 May 2019
Copy link to clipboard 
Print this post

4 I/Os on an ESP-01. Cool. How do you turn off Tx & Rx?

Also, do you have a link for the module shown in the last image?

(Meanwhile I'm having fun with the Wemos D1 mini & clones--so easy with Annex.)

PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
Quazee137

Guru

Joined: 07/08/2016
Location: United States
Posts: 600
Posted: 03:12pm 03 May 2019
Copy link to clipboard 
Print this post

Here's a few links I went through. There was many more but theses show the concept.

TX and RX as GPOI'

A Youtube exp

Another way

With ESP Easy you can use the check box Under
TOOLS > Advance_settings.

Then Under HARDWARE set the GPOI'S as needed.


Have FUN
Quazee137

On the sending ESP Easy unit I didnt add resistors in line with RX and TX
while testing but may be needed if you have pins to make use of serial port.


Here's a few
Droking

amazon

alibaba


Edited by Quazee137 2019-05-05
 
MikeO
Senior Member

Joined: 11/09/2011
Location: Australia
Posts: 275
Posted: 07:46am 21 May 2019
Copy link to clipboard 
Print this post

I also have been playing around with Annex. Seems to work very well. I recently updated all my remote sensors that had ESP8266 with ESPeasy firmware and for most cases was all I needed to read most sensors. the ESPeasy also works great wifi is no longer a problem with loosing comms as the ESPeasy manages to reconnect with no problems. I just have one esp8266/micromite (mx170) combination where the mx170 decodes the data stream from a wind sensor and the ESPpeasy sends the data via UDP with the data coded in json.





I have a Node-mcu module running Annex as a tiny data monitor. the Annex software decodes the UDP data and displays it on a 2.8" SPI LCD display. This is a very simple setup and I was surprised how simple it was to code and so far it seems bullet proof.


'Udp Display
ver$="v0.6"
tft.init 16, 4, 4
TFT.FILL TFT.RGB(0,0,0)
TFT.TEXT.size 2
tft.text.col &hffffff, &h00
TFT.TEXT.POS 10,10
tft.print "Udp Display "+ver$
TFT.TEXT.size 1
tft.text.col tft.rgb(255, 255, 0), &h00
TFT.TEXT.POS 10,35
tft.print "Outside"
TFT.TEXT.POS 10,135
tft.print "Greenhouse"
TFT.TEXT.POS 10,175
tft.print "Garden Solar"
TFT.TEXT.POS 10,215
tft.print "House Power"
TFT.TEXT.size 2
tft.text.col &hffffff, &h00

'end basic display
ot$= "not found"
oh$= "not found"
ora$= "not found"
op$= "not found"
gt$= "not found"
gh$= "not found"
bv$= "not found"
pw$= "not found"
sw$= "not found"

wd$= "not found"
ws$= "not found"
wg$= "not found"

Touch.Setup 15
OnTouch touchme
udp.begin 5001
onudp goudp


'screen update loop
do
update=1
tft.text.col &hffffff, &h00
if ot$ <> "not found" then
TFT.TEXT.POS 10,50
tft.print str$(val(ot$))+"C"+" "+str$(val(oh$))+"% ";
TFT.TEXT.POS 10,70
tft.print str$(val(ws$))+"kph G:"+str$(val(wg$))+"kph ";
TFT.TEXT.POS 10,90
tft.print str$(val(wd$))+"deg "+str$(val(op$))+"hPa ";
TFT.TEXT.POS 10,110
tft.print "Rain Today:"+str$(val(ora$))+"mm ";
end if
if gt$ <> "not found" then
TFT.TEXT.POS 10,150
tft.print str$(val(gt$))+"C"+" "+str$(val(gh$))+"% ";
end if
if bv$ <> "not found" then
TFT.TEXT.POS 10,190
tft.print "Battery: "+bv$+" vdc ";
end if
if pw$ <> "not found" then
TFT.TEXT.POS 10,230
tft.print "Usage: "+pw$+" watts ";
end if
if sw$ <> "not found" then
TFT.TEXT.POS 10,250
tft.print "Solar: "+sw$+" watts ";
end if
TFT.TEXT.size 3
TFT.TEXT.POS 10,295
tft.text.col tft.rgb(255, 255, 0), &h00
tft.print time$;
TFT.TEXT.size 2
tft.text.col &hffffff, &h00
pause 5000
update=0
loop
wait

goudp:
v$ = udp.read$
print v$
ret$=json$(v$,"otemp")
if ret$<>"not found" then
ot$=ret$
end if
ret$= json$(v$,"hum")
if ret$<>"not found" then
oh$=ret$
end if
ret$= json$(v$,"rain")
if ret$<>"not found" then
ora$=ret$
end if
ret$= json$(v$,"gtemp")
if ret$<>"not found" then
gt$=ret$
end if
ret$= json$(v$,"ghum")
if ret$<>"not found" then
gh$=ret$
end if
ret$= json$(v$,"bv")
if ret$<>"not found" then
bv$=ret$
end if
ret$= json$(v$,"powerW")
if ret$<>"not found" then
if ret$="0" then
pw$="Solar"
else
pw$=ret$
end if
end if
ret$= json$(v$,"solar")
if ret$<>"not found" then
sw$=ret$
end if
ret$= json$(v$,"pres")
if ret$<>"not found" then
op$=ret$
end if

ret$=json$(v$,"dir")
if ret$<>"not found" then
wd$=ret$
end if
ret$=json$(v$,"speed")
if ret$<>"not found" then
ws$=ret$
end if
ret$=json$(v$,"gust")
if ret$<>"not found" then
wg$=ret$
end if
return




touchme:

wlog "touched x/y "+str$(touch.x)+" "+str$(touch.y)
wlog ramfree
return

Codenquilts
 
CaptainBoing

Guru

Joined: 07/09/2016
Location: United Kingdom
Posts: 2171
Posted: 10:26am 21 May 2019
Copy link to clipboard 
Print this post

perhaps you could "slug" the chattering relay by placing a large lump of metal close to the coil. Telephone network used to do this so the line relay didn't chatter during rotary/pulse dialling...

there's a discussion here that may just get the juices flowing


http://www.rfcafe.com/references/electronics-world/time-delay-relays-apr-1967-electronics-world.htm Edited by CaptainBoing 2019-05-22
 
Quazee137

Guru

Joined: 07/08/2016
Location: United States
Posts: 600
Posted: 10:26am 21 May 2019
Copy link to clipboard 
Print this post



That is SWEET man.

I'll need to check out Annex. MikeO can Annex have two ESP-01s talking only
to each other nothing else required? Also can you make use of RX and TX as
GPio pins?

My next ESP-01 project is for my Three Wheel E-bike.

I have a 12volt wifi router and two wifi cameras I am adding to my bike.
The idea is to have longer range in sending data to my phone along with
random junk to make it more difficult for any one tapping in. The ESP-01
will add two sensors also letting me arm / disarm the bike and control the
cameras from my phone. The cameras have app's but need internet access so
cant use them.

Been thinking of adding two way sound. One camera has a mic but to use it
the maker wants me to use their app and I want this to be only local stuff
no internet. With a beep every few 10's of sec's going to my phone I'll
know if I've gone to far or there may be wifi jamming.

I have seen where a free wifi is jammed for some where around 30 sec's then
the jammer turns on a higher powered wifi. becoming a man in the middle and
mostly goes unnoticed. I myself never make use of free wifi. Thats just me.

Places offering free wifi need to monitor it in away that if all of a sudden
all connections are dropped it needs to turn off and look to see if the wifi
is still up at a higher power. How many users are shopping and check the bank
account or even move money around. Not realizing they left the phone on auto
wifi connect.

So many think that security is just built in.

 
MikeO
Senior Member

Joined: 11/09/2011
Location: Australia
Posts: 275
Posted: 12:17pm 21 May 2019
Copy link to clipboard 
Print this post

Annex implements the Espressif "ESP-NOW" protocol, so the answer is yes here . Regards using the RX/TX pins , the answer is no.

Bike sounds Wild!

Mike


Codenquilts
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3470
Posted: 12:20pm 21 May 2019
Copy link to clipboard 
Print this post

  Quazee137 said  can Annex have two ESP-01s talking only to each other nothing else required? Also can you make use of RX and TX as GPio pins?

Yes and yes.
PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
MikeO
Senior Member

Joined: 11/09/2011
Location: Australia
Posts: 275
Posted: 12:24pm 21 May 2019
Copy link to clipboard 
Print this post

Hi Yes you can address the RX/TX as GPIO pins but I am not sure you can isolate them from the console serial ? I may be wrong.
Codenquilts
 
Quazee137

Guru

Joined: 07/08/2016
Location: United States
Posts: 600
Posted: 12:17am 22 May 2019
Copy link to clipboard 
Print this post



DANG !!! Annex with the "ESP-NOW" protocol looks good only 2 problems for me.

1. The compiled object code (the .bin file) for the Annex firmware is free software:
you can use or redistribute it as you please except for commercial purposes.
It is not allowed to distribute or embed it into products that are sold or for
any other activity making or intended to make a profit.

2. I did not see that Tx and Rx can be truly disconnected from consul usage in
the ESP-NOW protocol.

Well I'll play with it on my bike.
 
MikeO
Senior Member

Joined: 11/09/2011
Location: Australia
Posts: 275
Posted: 04:12am 22 May 2019
Copy link to clipboard 
Print this post

Hi its the same CC licence as MMbasic.

Mike
Codenquilts
 
cicciocb
Regular Member

Joined: 29/04/2014
Location: France
Posts: 72
Posted: 08:59am 22 May 2019
Copy link to clipboard 
Print this post

Hi Mike,
happy to see that you were able to make a nice project with Annex.

About the license, only the manual is distributed with a CC license but the firmware is distributed as stipulated here .
 
Print this page


To reply to this topic, you need to log in.

The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025