-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Including Smart Meter Interface breaks hardware serial bridge (at least receiving). #9592
Comments
did you read the sml documentation ? https://tasmota.github.io/docs/Smart-Meter-Interface/ this driver defines all used GPIO in the driver or script. when not using a script the default descriptor is used which occupies pin3 for serial input thus conflicting with serial bridge. (if enabled on pin 3) when using an sml script you can define the GPIO you want to use for serial meters in the script and choosing another pin would free GPIO3 for serial bridge. |
I read the docs. Now again. Nowhere does it talk about default GPIOs. Instead it says if a configured smart meter inteferes with an otherwise configured PIN it will produce a "duplicate GPIO defined" error in the log and the meter descriptor will be ignored. But I said to reproduce the above mentioned problem you just need to compile SMI into Tasmota and don't configure any meter. And the problem is not sending messages, it only block receiving messages. |
ok, it has to be clarified in the docs that the checking of duplicate GPIOs is only true for the script driven driver. the "old" hardcoded interface should normally no longer be used. it is left over for special purposes. |
docs updated! |
I find the whole SML doc to be quite unstructured but at least my case is now documented which explains why this issue is not a bug. |
The firmware and the documentation both open source and are maintained by volunteers, i.e., unpaid. We encourage users like you to enhance the documentation. |
@meingraham: Once I fully understood what is what I might contribute. @gemu2015: I need to reopen because when I reconfigure my meter to use GPIO2 (means don't touch 1+3) I still can't see a response (SerialReceived log) until I reboot with GPIO2-config. |
@TheChatty by the way you should not use GPIO2 for input. dig the net about pins better not to use for input on an ESP if you still have problems you need to describe more in detail what you are doing (post descriptor, logs etc) |
I'm using this board. I just retested it to be sure. I have Tasmota 9.0.0.2 with SML installed, no GPIO configured.
After the no-script situation has been clarified by gemu, I think the reconfiguration of script GPIOs needs to free unused GPIOs. Also as a new user I'd rather prefer to have "the old behavior" removed. My real intention is to be able to use TCP bridge (see #9586) and SMI simultaneously on the same modbus device. |
exactly that is the normal behavior i made a note in docs about a required restart |
Not handled in my desired direction but nevertheless handled thus closed. @gemu2015: Is there any documentation (besides the code itself) about the
? |
as already said the old interface makes only sense in case you want to use rules and not scripts together with sml from the source code see below // this descriptor method is no longer supported // select this meter |
@gemu2015: Initializing all belonging consts with empty values leads to my expected behavior: no undocumented feature is enabled by default and claims the rxd GPIO. And having TCP bridge and SMI in one image with one active at a time works. In my opinion this should be condition in git. |
now there is a hardcoded Meter NO_OP in the meter list ill do a pull request soon |
PROBLEM DESCRIPTION
Compiling SMI into the build breaks hardware serial bridge (cannot receive data).
REQUESTED INFORMATION
Make sure your have performed every step and checked the applicable boxes before submitting your issue. Thank you!
Backlog Template; Module; GPIO 255
:Backlog Rule1; Rule2; Rule3
:Status 0
:(Please use
weblog 4
for more debug information)TO REPRODUCE
Compile build with no changes to source to find SerialReceived working.
Compile build with SMI included to find SerialReceived NOT working.
Prior configuration just includes connecting to WiFi, set baudrate and initial
serialsend5 00
.EXPECTED BEHAVIOUR
Hardware SerialReceived to be working, e.g. receiving the data which is sent from the other device.
The text was updated successfully, but these errors were encountered: