CT003 + tweede P1-lezer op een passieve splitter: opgelost met één Schottky-diode
Ik had hetzelfde probleem als een aantal mensen hier: de CT003 en een tweede P1-lezer (bij mij een SmartGateways P1-gateway) op één passieve RJ12-splitter. Elk apparaat werkt alleen, maar samen krijgt de tweede lezer geen telegrammen meer. De CT003 blijft wel werken.
Getest in België, op een digitale meter van Landis+Gyr (DSMR 5). Elk apparaat heeft een eigen 5V-voeding.
TL;DR:
plaats een Schottky-diode in de datalijn (pin 5) naar de CT003, met de kathode (de kant met de streep) naar de meter en de anode naar de CT003. De andere pinnen blijven zoals ze waren.
Not Too Long, Want to read:
https://github.com/cvdabbeele/marstek-ct003-p1-splitter
Oorzaak (gemeten met een scoop)
De datalijn (pin 5) is open collector: de meter trekt de lijn alleen laag, de lezer moet ze hoog trekken met een pull-up. De ingang van de CT003 klemt die lijn echter op ongeveer 1,0 V. Met de tweede lezer erbij komt het hoge niveau maar tot 1,5 V. Dat is veel te laag voor een geldige "1", dus de tweede lezer ziet niets.
Beide apparaten, zonder diode: het hoge niveau blijft hangen rond 1,5 V.
Oplossing
Eén Schottky-diode in de datalijn (pin 5) naar de CT003, met de kathode (de kant met de streep) naar de meter en de anode naar de CT003. De andere pinnen blijven zoals ze waren.
Als de meter de lijn laag trekt, geleidt de diode en ziet de CT003 een "0". Als de meter de lijn loslaat, spert de diode en kan de CT003 de lijn niet meer vastklemmen. De pull-up van de andere lezer trekt de lijn dan gewoon hoog.

Beide apparaten, met de diode: het hoge niveau is terug op ongeveer 3,4 V.
Ik heb getest met de helft van een MBR20100CT (veel te zwaar, maar ikhad die hier loggen van uit een out ATX computer voeding). Een kleine signaal-Schottky zoals de BAT85 (of BAT43/BAT46) is de betere keuze: minder capaciteit, dus mooiere flanken en minder negatieve pieken aan de CT003-kant. De BAT85 zelf heb ik nog niet getest.
Beide apparaten lezen nu tegelijk, met dezelfde waarden per fase en dezelfde energietellers. Geen actieve splitter nodig.
Kanttekeningen
Ik had hetzelfde probleem als een aantal mensen hier: de CT003 en een tweede P1-lezer (bij mij een SmartGateways P1-gateway) op één passieve RJ12-splitter. Elk apparaat werkt alleen, maar samen krijgt de tweede lezer geen telegrammen meer. De CT003 blijft wel werken.
Getest in België, op een digitale meter van Landis+Gyr (DSMR 5). Elk apparaat heeft een eigen 5V-voeding.
TL;DR:
plaats een Schottky-diode in de datalijn (pin 5) naar de CT003, met de kathode (de kant met de streep) naar de meter en de anode naar de CT003. De andere pinnen blijven zoals ze waren.
Not Too Long, Want to read:
https://github.com/cvdabbeele/marstek-ct003-p1-splitter
Oorzaak (gemeten met een scoop)
De datalijn (pin 5) is open collector: de meter trekt de lijn alleen laag, de lezer moet ze hoog trekken met een pull-up. De ingang van de CT003 klemt die lijn echter op ongeveer 1,0 V. Met de tweede lezer erbij komt het hoge niveau maar tot 1,5 V. Dat is veel te laag voor een geldige "1", dus de tweede lezer ziet niets.
- Alleen de gateway: 0,16 V / 4,88 V, mooi signaal
- Alleen de CT003: hoog niveau ~1,0 V (de CT003 leest wel)
- Beide, zonder diode: hoog niveau 1,52 V, de gateway leest niets
- Beide, met Schottky-diode: 0,24 V / 3,44 V, beide lezen

Beide apparaten, zonder diode: het hoge niveau blijft hangen rond 1,5 V.
Oplossing
Eén Schottky-diode in de datalijn (pin 5) naar de CT003, met de kathode (de kant met de streep) naar de meter en de anode naar de CT003. De andere pinnen blijven zoals ze waren.
Als de meter de lijn laag trekt, geleidt de diode en ziet de CT003 een "0". Als de meter de lijn loslaat, spert de diode en kan de CT003 de lijn niet meer vastklemmen. De pull-up van de andere lezer trekt de lijn dan gewoon hoog.

Beide apparaten, met de diode: het hoge niveau is terug op ongeveer 3,4 V.
Ik heb getest met de helft van een MBR20100CT (veel te zwaar, maar ikhad die hier loggen van uit een out ATX computer voeding). Een kleine signaal-Schottky zoals de BAT85 (of BAT43/BAT46) is de betere keuze: minder capaciteit, dus mooiere flanken en minder negatieve pieken aan de CT003-kant. De BAT85 zelf heb ik nog niet getest.
Beide apparaten lezen nu tegelijk, met dezelfde waarden per fase en dezelfde energietellers. Geen actieve splitter nodig.
Kanttekeningen
- 3,44 V is minder marge dan 4,88 V. Bij een lezer met een zwakkere pull-up of een lange kabel kan het misschien niet werken.
- Het gedrag van de CT003-ingang is gemeten, niet gedocumenteerd. Een andere hardwareversie kan anders reageren.
- Werk alleen in de splitter of in een breakout box, nooit in de meter.
/f/image/Qjkx3cmb1bdrycCKEbPCU9ur.png?f=fotoalbum_large)
/f/image/p7hbMdWrjXs32dUSB2voTitn.png?f=fotoalbum_large)