Been working putting a wired Mbus circuit for a while now for both the master and the slave.
For the slave, I am using the ON Semi NCN5150 Slave Chip and built the circuit just as the development board - NCN5150SOICGEVB.
I also have another MBus slave device (used to communicate with energy meters) and its working fine. This is just to test my master circuit. So we call this "Meter test Slave".
For the slave circuit, everything seems to look good, and well as for the master. I am getting the required voltage for the Bus, and my slave device is powered on. Where I am yet to get an headway is with communication.
When testing, this is what i observed,
- I connect my master circuit to the "meter test slave" and it powers on the slave. As this slave was programmed, it ought to send some configuration code for handshaking with a master once connected. My master received this information, and I view this Hex value on a Serial Terminal (1 start bit, 8 data bits, even parity, and 1 stop bit). So i can at least conclude that my master receives information. And this happens to both circuit above.
However, I can not test that the master transmits any information because I do not yet know data the slaves expects.
- For the slave circuit i built, I observed a different thing. Yes! The bus master also powers the slave but communication does not look successful. Connecting both ends of the master and slave to separate serial terminal, I observed that when I send a string of information to the master, I get the information back on the slave serial terminal and not on the master terminal. Its like an echo as what i send out is coming back. And this only happens when the Mbus link is connected. And again this happens for both master circuit i built.
I need to know if I am doing something wrong here. How do I get this to work?
TEST UPDATE: I observed that the Echo response was expected according to the datasheet of the NCN5150. Its states that "Because the M-BUS protocol is specified as half-duplex, an echo function will cause the transmitted signal on RX or RXI to appear on the receiver outputs TX and TXI. Should the master attempt to send at the same time, the bitwise added signal of both sources will appear on these pins, resulting in invalid data".
Also I tested the "Meter test slave", and I observed that the echo also occurred on the receive line.
So i guess i need help as to why the information is not getting to the Master UART interface.