It's probably not possible to use this system on regular computers/servers since you need gadget trees to configure the kernel for this and most computer systems do not have kernel-managed GPIO pins obtainable to hook up a change. This seems to work simply effective but the final design does have that capacitor added. The pairs between the transformer and the RJ45 jack has it's personal ground plane that's coupled to the main floor through a capacitor. The pairs after the transformer are simply on the main board ground fill. Connect with the smart power meter using off the shelf RJ12 cables instead of soldering wires on the board. In accordance with the P1 specs the ability supplied by most power meters will not be enough to reliably run the ESP32 module so there's all the time to choice to power it from the USB-C port. There may be pin configuration to pick from one in every of two eeprom measurement ranges however doesn't further specify what this setting really changes.
Specifically I had a capacitor in the feedback path for the switching regulator that was two orders of magnitude too giant. In my test setup the capacitor simply does not exist and all the center taps float. What I did unsuitable on my preliminary board revision was forgetting the capacitor that connects the middle taps of the transformer on the change side to floor making the indicators on that aspect referenced to board floor. I left out all the leds since making that configurable would be pretty laborious. I've additionally added a footprint for a USB Type-C connector to have a straightforward solution to energy it without bringing out the DuPont wires. There may be only some legitimate decisions for pins for UART1 for example and there's no strategy to swap RX and TX on a board with out using a soldering iron. Usually there will likely be random gadget like a router close by that has a powered USB connection to run the module. There can also be a solder jumper on the board to select whether it is powered from the USB connection or from the P1 port itself. The RJ12 connectors already cross the border of the case in KiCad so there shall be holes generated for them routinely in the case primarily based on the connector define on the fabrication layer.
I managed to fit everything on a small 40x40mm PCB by having the the two RJ12 connectors hang off the board. To make it match I've also moved the power regulator and a few passives to the underside side of the board. This might be one of few occasions I've ever ordered 5000 of something. One of the specs inside DSMR is P1 which is the document for the RJ12 connector for plugging third occasion monitoring instruments. This all glued collectively implies that the DSMR module will get the information from the P1 port after which despatched it out over WiFi to my MQTT server with a separate topic for every discipline. The other mode connects the information request line to the cross-through port so the gadget linked after the DSMR module can select when the information must be sent, in this case the module will simply be passively sniffing the traffic each time it's despatched.
However, the press board™ comes outfitted with a library containing straightforward-to-use capabilities and an instance code that can be utilized, as a reference, for additional improvement. It seems the seeed and adafruit code may be very similar and doubtless copied from eachother and had the interfacing code changed. In the top of the code there's additionally three GPIOs outlined, rs485 cable these hyperlink as much as SDA/SCL and Reset on the switch PCB to make the communication work. Make the design handsolderable as an alternative of utilizing JLCPCB meeting service for the boards. Normally it could be pretty costly to do this but since I'm hand soldering these boards using both sides of the board is free. Within the DSMR design I'll only be using a single GPIO pin configured to be the RX of one of many hardware UARTS so it may possibly obtain the information. Another neat function is that this chip has a completely linked I/O mux inside which implies I can mainly decide any random GPIO pin and later configure in software which hardware block in the chip it hooks up to. This system hooks into lots of the Linux networking so it Just Works(tm) with plenty of tooling.