{"id":7807,"date":"2023-07-31T16:59:40","date_gmt":"2023-07-31T14:59:40","guid":{"rendered":"https:\/\/willem.aandewiel.nl\/?p=7807"},"modified":"2023-08-04T14:28:20","modified_gmt":"2023-08-04T12:28:20","slug":"virtuele-p1-kabel","status":"publish","type":"post","link":"https:\/\/willem.aandewiel.nl\/index.php\/2023\/07\/31\/virtuele-p1-kabel\/","title":{"rendered":"virtuele P1 Kabel"},"content":{"rendered":"\n<p>[ 8,697 keer bekeken \/ views ]<\/p>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>Wat is het<\/strong><\/h1>\n\n\n\n<p>Het is een (h\u00e9\u00e9l lang) \u201cverlengsnoer\u201d voor de P1 poort van de Slimme Meter \u2026<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/realCable.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/realCable-1024x348.png\" alt=\"\" class=\"wp-image-7808\" width=\"512\" height=\"174\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/realCable-1024x348.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/realCable-300x102.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/realCable-768x261.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/realCable.png 1166w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>\u2026 maar dan zonder fysieke kabel!<\/p>\n\n\n\n<p>Door de <em>Virtual P1 Cable<\/em> kan een DSMR-uitlees apparaat (bijvoorbeeld een DSMR-logger) op afstand de telegrammen van de Slimme Meter lezen.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>Waarom<\/strong><\/h1>\n\n\n\n<p>Ik heb een aantal variaties van de DSMR-logger (\u201cSlimme Meter uitlezer\u201d) ontwikkeld en op deze website beschreven. De laatste iteratie is de DSMR-logger32 die als processor een ESP32 gebruikt. Ik heb deze DSMR-logger32 ontwikkeld om meer mogelijkheden (processing power, geheugen, programma grootte en de aansluitingen voor een shield) te hebben. De ESP32 zit gewoon een stuk ruimer \u201cin z\u2019n jasje\u201d dan de voorheen gebruikte ESP8266.<\/p>\n\n\n\n<p>Maar toen de DSMR-logger32 klaar was en ik hem op mijn Slimme Meter aansloot wilde hij niet opstarten. Wat bleek is dat de opstart stroom (<em>inrush current<\/em>) van de ESP32 vele malen hoger is dan de stroom die de Slimme Meter kan leveren.&nbsp;<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>The operating voltage of ESP32 ranges from 2.3 V to 3.6 V. When using a single-power supply, the recommended voltage of the power supply is 3.3 V, and its <strong>recommended output current is 500 mA or more<\/strong>.<br>See <a href=\"https:\/\/www.espressif.com\/sites\/default\/files\/documentation\/esp32_datasheet_en.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">here<\/a>.<\/p>\n<\/blockquote>\n\n\n\n<p>De consequentie hiervan is dat je de DSMR-logger32 alleen met een externe voeding kunt gebruiken. Voor veel mensen geen probleem, maar als je geen stopcontact in de meterkast hebt, heb je opeens w\u00e9l een probleem.<\/p>\n\n\n\n<p>De <em>Virtual P1 Cable<\/em> is de redder in nood!&nbsp;<\/p>\n\n\n\n<p>Hij bestaat uit twee delen. Een Zender (Transmitter) en een Ontvanger (Receiver).&nbsp;<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/virtualCable.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/virtualCable-1024x195.png\" alt=\"\" class=\"wp-image-7809\" width=\"512\" height=\"98\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/virtualCable-1024x195.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/virtualCable-300x57.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/virtualCable-768x147.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/virtualCable.png 1200w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>De Zender sluit je via een RJ12 kabeltje aan op de P1 poort van de Slimme Meter. Hij wordt gevoed met pin 1 van de RJ12 connector van de Slimme Meter.<\/p>\n\n\n\n<p>Het DSMR-uitlees apparaat dat je normaal gesproken op de P1 poort van de Slimme Meter aansluit (en dat waarschijnlijk in een andere ruimte staat waar je een stopcontact hebt) sluit je nu via een RJ12 kabeltje op de Ontvanger aan. De Ontvanger wordt gevoed via pin 1 van de RJ12 connector (het \u201cDSMR-uitlees\u201d apparaat moet 5 volt op pin 1 van de RJ12 connector naar buiten voeren).&nbsp;<\/p>\n\n\n\n<p>De Zender en de Ontvanger zullen nu verbinding met elkaar zoeken. Als dat is gelukt, worden de door de Slimme Meter gegenereerde telegrammen via de virtuele kabel doorgestuurd naar het DSMR-uitlees apparaat.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>Ontwerp doelstelling<\/strong><\/h1>\n\n\n\n<p>Het is mijn plan om \u00e9\u00e9n ontwerp van een PCB te maken die, door middel van een schakelaar, zowel \u00f3f als Zender \u00f3f als Ontvanger kan werken. Het PCB moet zo klein mogelijk worden, dus er zal waar mogelijk gebruik gemaakt worden van SMD componenten.<\/p>\n\n\n\n<p>Voor de Micro Processor (MCU) wil ik de AVR128DB28 gaan gebruiken omdat dit een moderne MCU is die ruim in het geheugen zit, meerdere UARTS en voldoende GPIO pinnen heeft terwijl het SSOP-28 formaat n\u00e9t niet t\u00e9 klein is om handmatig te solderen.<\/p>\n\n\n\n<p>De firmware wil ik in <em>PlatformIO<\/em> (met de <em>Visual Studio Code<\/em> IDE) ontwikkelen en niet met de Arduino IDE.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>Hoe werkt de Virtual P1 Cable<\/strong><\/h1>\n\n\n\n<p>De virtual P1 Cable maakt gebruik van transceiver (zender en ontvanger) modules van het type NRF2401L+PA\/LNA (maar de \u201cgewone\u201d NRF2401L kunnen ook gebruikt worden).&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-medium\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/NRF24L01_PA_LNA_b.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"142\" data-id=\"7815\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/NRF24L01_PA_LNA_b-300x142.jpg\" alt=\"\" class=\"wp-image-7815\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/NRF24L01_PA_LNA_b-300x142.jpg 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/NRF24L01_PA_LNA_b-1024x485.jpg 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/NRF24L01_PA_LNA_b-768x364.jpg 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/NRF24L01_PA_LNA_b.jpg 1200w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-medium\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/NRF24L01.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"224\" data-id=\"7816\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/NRF24L01-300x224.jpg\" alt=\"\" class=\"wp-image-7816\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/NRF24L01-300x224.jpg 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/NRF24L01-1024x764.jpg 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/NRF24L01-768x573.jpg 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/NRF24L01.jpg 1200w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<p>Dit zijn transceivers die (net als WiFi) op de 2.4 \u2013 2.5GHz ISM band werken. Voor het verzenden en ontvangen van data maken de modules gebruik van GFSK modulatie.&nbsp;<\/p>\n\n\n\n<p>De NRF24L01 kan pakketjes van maximaal 32 bytes sturen en ontvangen, waarbij de logica om CRC checks en bevestiging van een correct ontvangen pakketje, in de bordjes aanwezig is. Dit zorgt voor een betrouwbare verbinding tot meer dan 800 meter \u201cline of sight\u201d tussen twee NRF24L01 transceivers. De uitgebreidere NRF24L01+AP\/LNA kunnen zelfs een afstand van meer dan 1000 meter overbruggen.&nbsp;<\/p>\n\n\n\n<p>Staan er obstakels tussen de twee transceivers dan wordt de maximaal overbrugbare afstand direct een stuk kleiner. Tijdens het testen heb ik, op maximaal zendvermogen, een betrouwbare verbinding tussen de meterkast en mijn kantoor waarbij de afstand zo\u2019n 12 meter is en het signaal door drie muren heen moet.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Zender<\/strong><\/h2>\n\n\n\n<p>De telegrammen van de Slimme Meter komen binnen op de RJ12 plug waarna deze wordt ge\u00efnverteerd en door de MCU wordt ingelezen. Omdat we weten dat ieder telegram begint met een \u201c<strong>\/<\/strong>\u201c en eindigt met een \u201c<strong>!<\/strong>\u201d is het vrij eenvoudig om een heel telegram in een buffer op te slaan. Omdat je nooit weet waar de Slimme Meter in een telegram zit, als je begint met lezen, leest de Zender alles in een buffer t\u00f3t hij een \u2018!\u2019 tegen komt. Voor DSMR 4+ volgt er nu nog een checksum van 4 characters die we na het \u2018<strong>!<\/strong>\u2019 nog inlezen en in de buffer stoppen.<\/p>\n\n\n\n<p>Vervolgens kijkt de Zender terug in de buffer tot hij een \u2018<strong>\/<\/strong>\u2018 tegenkomt. D\u00e1t is dus het beg\u00edn van het telegram.<\/p>\n\n\n\n<p>Nu wordt het complete telegram verstuurd in pakketjes van 20 bytes. Als het hele telegram verstuurd is wordt nog een pakketje met als inhoud \u201c<strong>*EOT*<\/strong> verstuurd waarna het proces van voren af aan begint.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Ontvanger<\/strong><\/h2>\n\n\n\n<p>De Ontvanger leest de ontvangen pakketjes in tot hij een pakketje ontvangt waar een \u2018<strong>\/<\/strong>\u2018 (het begin van een telegram) in zit. Vanaf dat moment plakt hij alle volgende pakketjes achteraan in een buffer t\u00f3t hij een pakketje ontvangt dat begint met \u201c<strong>*EOT<\/strong>*\u201d, wat het einde van de data aangeeft. In de buffer staat nu een volledig telegram die de MCU van de Ontvanger vervolgens ge\u00efnverteerd naar de RJ12 plug stuurt en wat uiteindelijk binnen komt bij het DSMR-uitlees apparaat.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>De Code uitgelegd (hoofdlijnen)<\/strong><\/h1>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>setup()<\/strong><\/h2>\n\n\n\n<p>In <em>setup()<\/em> worden \u00e9\u00e9n GPIO pin (<em>powerMode<\/em>) uitgelezen aan de hand waarvan het zendvermogen (LOW of MAX) wordt ingesteld. Vervolgens worden drie GPIO-pinnen uitgelezen die bepalen op welk kanaal de communicatie plaatsvindt (<em>channelNr<\/em>). Ook de functie van de hardware (Zender of Ontvanger) wordt bepaald aan de hand van de toestand van een GPIO pin (<em>isReceiver<\/em>). Tenslotte wordt de DSMR standaard bepaald aan de hand van weer een andere GPIO pin (<em>isDSMR_4Plus<\/em>).<\/p>\n\n\n\n<p>Met deze opzet hoeft er maar \u00e9\u00e9n programma geschreven en onderhouden te worden voor zowel de Zender als voor de Ontvanger. In <em>setup()<\/em> wordt na het lezen van de verschillende GPIO-pinnen&nbsp; de NRF24L01 geconfigureerd.<\/p>\n\n\n\n<p>Daarna wordt, afhankelijk van de variabele \u201c<em>isReceiver<\/em>\u201d de functie <em>setupReceiver()<\/em> of <em>setupTransmitter()<\/em> aangeroepen waarin voor de taak specifieke instellingen worden gedaan.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/==============================================================\nvoid setup() \n{\n  \/\/\u2014 set pinMode() for GPIO-Input pinnen \n\n  Serial.begin(115200);\n  while(!Serial) { delay(10); }\n  Serial.flush();\n  Serial.println(\"\\n\\n\\nAnd then it begins ....\");\n  Serial.printf(\"Firmware version v%s\\r\\n\", _FW_VERSION);\n\n  readSettings();\n\n  \/\/\u2014- set Serial1 to &lt;BAUD&gt;, &lt;BITS ETC&gt; (isDSMR_4Plus)\n\n  \/\/--- now setup radio's ----\n  \/\/-- Set Transmitter Power (powerMode)\n  \/\/-- Min speed (for better range I presume)\n  \/\/-- 8 bits CRC\n  \/\/-- Enable dynamic payloads \n  \/\/-- save on transmission time by setting the radio to only transmit the\n  \/\/-- number of bytes we need to transmit\n  \/\/-- increase the delay between retries and # of retries \n  \/\/-- set Channel\n \n  if (isReceiver)\n  {\n   setupReceiver();\n  }\n  else  \n  {\n   setupTransmitter();\n  }\n  \n} \/\/  setup()\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>loop()<\/strong><\/h2>\n\n\n\n<p>De <em>loop()<\/em> functie is zo mogelijk n\u00f3g eenvoudiger:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/==============================================================\nvoid loop() \n{\n  if (isReceiver) loopReceiver();\n  else            loopTransmitter();\n\n} \/\/  loop()\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>loopTransmitter()<\/strong><\/h2>\n\n\n\n<p>In <em>loopTransmitter() <\/em>wordt de P1-in poort uitgelezen en in een buffer gestopt tot er een \u2018<strong>!<\/strong>\u2019 (einde telegram) wordt ontvangen.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><em>\/\/-- read until \"<strong>!<\/strong>\" (\"!\" is not in p1Buffer!!!) --<\/em>\nint len = Serial1.readBytesUntil('!', p1Buffer, (_MAX_P1BUFFER -15));<\/code><\/pre>\n\n\n\n<p>Het \u2018<strong>!<\/strong>\u2019 komt niet in de buffer terecht, dus die wordt er \u201chandmatig\u201d aan toegevoegd, waarna er nog een aantal characters worden gelezen (tot de eerste \u2018<strong>\\r<\/strong>\u2019) en achter de buffer geplakt. Als het een DSMR-4+ telegram betreft wordt hierdoor de checksum ingelezen anders is de \u2018<strong>!<\/strong>\u2019 het laatste teken in het telegram en is het eerstvolgende teken direct al een \u2018<strong>\\r<\/strong>\u2019.<\/p>\n\n\n\n<p>Na een aantal validity checks wordt de functie <em>transmitTelegram()<\/em> aangeroepen.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><strong>transmitTelegram<\/strong>(&amp;p1Buffer&#091;startTelegramPos], p1BuffLen);<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>transmitTelegram()<\/strong><\/h2>\n\n\n\n<p>Deze functie verstuurt het telegram in blokjes via de NRF24L1 module.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>  while(startTelegramPos&lt;telegramLen)<br>  {<br>    memset(payloadBuff, 0, _PAYLOAD_SIZE+10);<br>    for(int i=0; i&lt;_PAYLOAD_SIZE; i++)<br>    {<br>      payloadBuff&#091;i] = telegram&#091;i+startTelegramPos];<br>    }<br>    \/\/---- ending \"0\" activates autoACK &amp; Retry<br>    errCount = 0;<br>    do<br>    {<br>      transmitOk = radio.write(&amp;payloadBuff, _PAYLOAD_SIZE, 0);<br>      if (!transmitOk) { delay(10); errCount++; }<br>      else <br>      { <br>        if (startTelegramPos==0) <br>        { delay(50); }  \/\/-- give receiver time to check start<br>        else          <br>        { delay(5); }<br>      }<br>    }<br>    while (!transmitOk &amp;&amp; (errCount &lt; _MAX_TRANSMIT_ERRORS));<br>    if (!transmitOk) <br>    {<br>      Serial.println(\"\\r\\nMax Transmit errors.. Bailout!\");<br>      blinkLed(15, 70);<br>      return;<br>    }<br>    startTelegramPos += _PAYLOAD_SIZE;<br>    delay(10);<br>  }<\/code><\/pre>\n\n\n\n<p>Als het hele telegram is verstuurd wordt er nog een laatste blokje met \u201c<em>end-of-telegram<\/em>\u201d informatie verstuurd.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>  snprintf(payloadBuff, _PAYLOAD_SIZE, \"*EOT* %04x\", calcCrc);<br><br>  errCount = 0;<br>  do<br>  {<br>    transmitOk = radio.write(&amp;payloadBuff, _PAYLOAD_SIZE, 0);<br>    if (!transmitOk)  { delay(10); errCount++; }<br>    else              { delay(5); }<br>  }<br>  while (!transmitOk &amp;&amp; (errCount &lt; _MAX_TRANSMIT_ERRORS));<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>loopReceiver()<\/strong><\/h2>\n\n\n\n<p>In deze functie worden alle binnenkomende berichten van de zender opgevangen. Zodra er een bericht binnenkomt waar een \u2018<strong>\/<\/strong>\u2018 in staat (het begin van een telegram) \u2026<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>    radio.read(&amp;payloadBuff, bytesRead);\n\n    int posSlash = findChar(payloadBuff, '\/');\n    if (posSlash &gt;= 0)\n    {\n      Serial.println(\"\\r\\nFound '\/' \u2026\u201d);\n\t.\n\t.\n    }<\/code><\/pre>\n\n\n\n<p>\u2026 worden de berichten aan een buffer toegevoegd tot er een bericht binnenkomt met de string \u2018<strong>*EOT*<\/strong>\u2019. Dit bericht geeft aan dat er een compleet telegram is ontvangen.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>  while(!foundEOT &amp;&amp; (p1BuffPos &lt; (_MAX_P1BUFFER -15)) )\n  {\n    uint8_t bytesRead = radio.getDynamicPayloadSize();\n    radio.read(&amp;payloadBuff, bytesRead);\n    if (strncmp(payloadBuff, \"*EOT*\", 5) == 0)\n    {\n      foundEOT = true;\n      digitalWrite(PIN_LED, LOW); \n    }\n    else\n    {\n      \/\/-- plak payload achteraan telegram\n      memcpy(&amp;p1Buffer&#091;p1BuffPos], payloadBuff, bytesRead);\n      p1BuffPos += bytesRead;\n    }\n  }<\/code><\/pre>\n\n\n\n<p>Vervolgens wordt dit complete telegram naar de P1-out poort verstuurd.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>Het schema<\/strong><\/h1>\n\n\n\n<p>Het is niet gelukt om voor de twee taken (Zender en Ontvanger) \u00e9\u00e9n schema en uiteindelijk ook \u00e9\u00e9n printplaat te ontwerpen. Dat zou alleen mogelijk zijn met een hoop draadbruggen, omdat (bijvoorbeeld) pin 5 van de RJ12 plug in het ene geval een <em>invoer-<\/em> en in het andere geval een <em>uitvoer-<\/em> van het DSMR signaal is. Ook de ruimte voor het inverter circuit (transistor schakeling) van de Zender en het inverter circuit (OptoCoupler schakeling) van de Ontvanger nemen beide zoveel ruimte in dat het, samen met benodigde draadbruggen en\/of een schakelaar, niet goed past in een \u201c<em>zo klein mogelijk<\/em>\u201d ontwerp van een PCB.<\/p>\n\n\n\n<p>Het schema is ontworpen in KiCad (7.0.0) en is verdeeld over drie pagina\u2019s. De eerste pagina geeft de links naar pagina 2 (Transmitter) en pagina 3 (Receiver).<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/virtualP1Cable_Schematic_v10.pdf\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/virtualP1Cable_KiCad-1024x730.png\" alt=\"\" class=\"wp-image-7811\" width=\"512\" height=\"365\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/virtualP1Cable_KiCad-1024x730.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/virtualP1Cable_KiCad-300x214.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/virtualP1Cable_KiCad-768x548.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/virtualP1Cable_KiCad.png 1200w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Voor de 3v3 spanning-rail voor de NRF24L01 is gekozen voor een RT9080 (SOT23-5). Deze LDO kan 500mA leveren. Ruim voldoende voor de NRF24L01 die tijdens het zenden maximaal 20 \u00e1 30mA verbruikt.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>De printplaat<\/strong><\/h1>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/virtalP1CablePCB.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/virtalP1CablePCB.png\" alt=\"\" class=\"wp-image-7863\" width=\"421\" height=\"370\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/virtalP1CablePCB.png 841w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/virtalP1CablePCB-300x264.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/virtalP1CablePCB-768x676.png 768w\" sizes=\"auto, (max-width: 421px) 100vw, 421px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Nadat de printplaat is ontworpen moet het ontwerp (in de vorm van Gerben bestanden) naar een PCB fabrikant worden gestuurd. Ik maak graag gebruik van <img loading=\"lazy\" decoding=\"async\" width=\"120\" height=\"44\" class=\"wp-image-7271\" style=\"width: 120px;\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/10\/PCBWay-Logo.png\" alt=\"\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/10\/PCBWay-Logo.png 1200w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/10\/PCBWay-Logo-300x110.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/10\/PCBWay-Logo-1024x374.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/10\/PCBWay-Logo-768x280.png 768w\" sizes=\"auto, (max-width: 120px) 100vw, 120px\" \/> en KiCad heeft een mooie plugin waarmee dit proces geautomatiseerd kan worden. De plugin heet &#8220;<em><strong>PCBWay<\/strong><\/em>&#8221; (hoe k\u00f3m je erop). Installatie gaat via de &#8220;<em>Plugin and Content Manager<\/em>&#8221; van KiCad:<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/KiCadPluginManager.png\"><img loading=\"lazy\" decoding=\"async\" width=\"743\" height=\"614\" data-id=\"7864\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/KiCadPluginManager.png\" alt=\"\" class=\"wp-image-7864\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/KiCadPluginManager.png 743w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/KiCadPluginManager-300x248.png 300w\" sizes=\"auto, (max-width: 743px) 100vw, 743px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/installPCBWayPlugin.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"529\" data-id=\"7865\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/installPCBWayPlugin-1024x529.png\" alt=\"\" class=\"wp-image-7865\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/installPCBWayPlugin-1024x529.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/installPCBWayPlugin-300x155.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/installPCBWayPlugin-768x397.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/installPCBWayPlugin.png 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<p>Na installatie heeft de toolbar van KiCad een nieuwe knop. <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/StartPCBWayPlugin.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/StartPCBWayPlugin.png\" alt=\"\" class=\"wp-image-7866\" width=\"560\" height=\"70\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/StartPCBWayPlugin.png 746w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/StartPCBWayPlugin-300x37.png 300w\" sizes=\"auto, (max-width: 560px) 100vw, 560px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Door op deze knop te klikken worden alle, voor PCBWay, benodigde bestanden in een <em><strong>.zip<\/strong><\/em> bestand gezet en wordt, via de browser, naar de website van PCBWay gesprongen.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/PCBWay-Quote.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/PCBWay-Quote-1024x711.png\" alt=\"\" class=\"wp-image-7867\" width=\"512\" height=\"356\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/PCBWay-Quote-1024x711.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/PCBWay-Quote-300x208.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/PCBWay-Quote-768x533.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/PCBWay-Quote.png 1200w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Vervolgens geef je op hoeveel printplaten je van dit ontwerp wil laten maken en hoe je wil dat de printplaat eruit komt te zien (kleur van het soldermask en van het silkscreen).<\/p>\n\n\n\n<p>Na controle door de engineers van <img loading=\"lazy\" decoding=\"async\" width=\"120\" height=\"44\" class=\"wp-image-7271\" style=\"width: 120px;\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/10\/PCBWay-Logo.png\" alt=\"\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/10\/PCBWay-Logo.png 1200w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/10\/PCBWay-Logo-300x110.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/10\/PCBWay-Logo-1024x374.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/10\/PCBWay-Logo-768x280.png 768w\" sizes=\"auto, (max-width: 120px) 100vw, 120px\" \/> kun je de produceer- en verzendkosten betalen. Na ongeveer een week worden je printplaten geleverd en vind je ze in je brievenbus!<\/p>\n\n\n\n<p>Om kosten te sparen zijn de printplaten voor de Zender en Ontvanger tot \u00e9\u00e9n printplaat gecombineerd. Deze printplaat moet door midden gezaagd worden om de twee afzonderlijke printplaten te verkrijgen.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/PCB_OnProxxon_c.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/PCB_OnProxxon_c.png\" alt=\"\" class=\"wp-image-7868\" width=\"500\" height=\"375\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/PCB_OnProxxon_c.png 1000w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/PCB_OnProxxon_c-300x225.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/PCB_OnProxxon_c-768x576.png 768w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h1 class=\"wp-block-heading\">Instellingen<\/h1>\n\n\n\n<p>Voor de selectie van het kanaal waarop de communicatie plaatsvindt en voor de selectie van het zendvermogen wordt gebruik gemaakt van een DIL-8 4x schuif schakelaar (sw-1,2,3 voor kanaal selectie en sw-4 voor zendvermogen).<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/DIL-8-4xSPST.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/DIL-8-4xSPST.png\" alt=\"\" class=\"wp-image-7813\" width=\"299\" height=\"242\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/DIL-8-4xSPST.png 597w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/DIL-8-4xSPST-300x243.png 300w\" sizes=\"auto, (max-width: 299px) 100vw, 299px\" \/><\/a><\/figure>\n<\/div>\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Sw 3<\/strong><\/td><td><strong>Sw 2<\/strong><\/td><td><strong>Sw 1<\/strong><\/td><td><strong>Channel<\/strong><\/td><\/tr><tr><td><strong>off<\/strong><\/td><td><strong>off<\/strong><\/td><td><strong>off<\/strong><\/td><td>12<\/td><\/tr><tr><td><strong>on<\/strong><\/td><td><strong>off<\/strong><\/td><td><strong>off<\/strong><\/td><td>28<\/td><\/tr><tr><td><strong>off<\/strong><\/td><td><strong>on<\/strong><\/td><td><strong>off<\/strong><\/td><td>44<\/td><\/tr><tr><td><strong>on<\/strong><\/td><td><strong>on<\/strong><\/td><td><strong>off<\/strong><\/td><td>60<\/td><\/tr><tr><td><strong>off<\/strong><\/td><td><strong>off<\/strong><\/td><td><strong>on<\/strong><\/td><td>76<\/td><\/tr><tr><td><strong>on<\/strong><\/td><td><strong>off<\/strong><\/td><td><strong>on<\/strong><\/td><td>92<\/td><\/tr><tr><td><strong>off<\/strong><\/td><td><strong>on<\/strong><\/td><td><strong>on<\/strong><\/td><td>108<\/td><\/tr><tr><td><strong>on<\/strong><\/td><td><strong>on<\/strong><\/td><td><strong>on<\/strong><\/td><td>124<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Switch 4<\/strong><\/td><td><strong>Transmit Power<\/strong><\/td><\/tr><tr><td><strong>off<\/strong><\/td><td>LOW<\/td><\/tr><tr><td><strong>on<\/strong><\/td><td>MAX<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Voor de selectie van de DSMR-variant is een twee positie pin-header aanwezig. Door hem open te laten wordt DSMR-4+ gebruikt, door er een jumper op te zetten wordt een Pr\u00e9DSMR 4 standaard gebruikt.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/DSMR_baud.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/DSMR_baud.png\" alt=\"\" class=\"wp-image-7839\" width=\"500\" height=\"375\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/DSMR_baud.png 1000w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/DSMR_baud-300x225.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/DSMR_baud-768x576.png 768w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Er is een 3 positie pin-header waar een seri\u00eble TTL terminal (115200 baud) op kan worden aangesloten waarop debug informatie afgedrukt wordt.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/UART_interface.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/UART_interface.png\" alt=\"\" class=\"wp-image-7840\" width=\"500\" height=\"375\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/UART_interface.png 1000w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/UART_interface-300x225.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/UART_interface-768x576.png 768w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Voor het programmeren is een 3 positie pin-header aanwezig waarmee met een UPDI programmer de firmware naar de MCU geflasht kan worden.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/UPDI_interface.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/UPDI_interface.png\" alt=\"\" class=\"wp-image-7841\" width=\"500\" height=\"375\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/UPDI_interface.png 1000w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/UPDI_interface-300x225.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/08\/UPDI_interface-768x576.png 768w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Het schema spreekt verder voor zichzelf.&nbsp;<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">De virtuele P1 Kabel afbouwen<\/h1>\n\n\n\n<p>Alle relevante documenten staan op <a rel=\"noreferrer noopener\" href=\"https:\/\/github.com\/mrWheel\/virtualP1Cable\" target=\"_blank\">github<\/a>!<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-3 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/buildVirtualP1Cable_P1.gif\"><img loading=\"lazy\" decoding=\"async\" width=\"832\" height=\"469\" data-id=\"7819\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/buildingVp1C_P1.png\" alt=\"\" class=\"wp-image-7819\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/buildingVp1C_P1.png 832w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/buildingVp1C_P1-300x169.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/buildingVp1C_P1-768x433.png 768w\" sizes=\"auto, (max-width: 832px) 100vw, 832px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/buildVirtualP1Cable_P2.gif\"><img loading=\"lazy\" decoding=\"async\" width=\"832\" height=\"469\" data-id=\"7820\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/buildingVp1C_P2.png\" alt=\"\" class=\"wp-image-7820\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/buildingVp1C_P2.png 832w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/buildingVp1C_P2-300x169.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/buildingVp1C_P2-768x433.png 768w\" sizes=\"auto, (max-width: 832px) 100vw, 832px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-4 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/github.com\/mrWheel\/virtualP1Cable\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"649\" data-id=\"7826\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/githubPage-1024x649.png\" alt=\"\" class=\"wp-image-7826\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/githubPage-1024x649.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/githubPage-300x190.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/githubPage-768x487.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/githubPage.png 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/IMG_1616.png\"><img loading=\"lazy\" decoding=\"async\" width=\"732\" height=\"874\" data-id=\"7824\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/IMG_1616.png\" alt=\"\" class=\"wp-image-7824\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/IMG_1616.png 732w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/IMG_1616-251x300.png 251w\" sizes=\"auto, (max-width: 732px) 100vw, 732px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/IMG_1617.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"884\" data-id=\"7825\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/IMG_1617-1024x884.png\" alt=\"\" class=\"wp-image-7825\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/IMG_1617-1024x884.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/IMG_1617-300x259.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/IMG_1617-768x663.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/IMG_1617.png 1054w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"750\" data-id=\"7828\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/vP1Receiver.png\" alt=\"\" class=\"wp-image-7828\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/vP1Receiver.png 1000w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/vP1Receiver-300x225.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2023\/07\/vP1Receiver-768x576.png 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n<\/figure>\n\n\n\n<h1 class=\"wp-block-heading\">Het Lek van Willem <\/h1>\n\n\n\n<h3 class=\"wp-block-heading\">(vrij naar &#8220;het lek van elektuur&#8221;)<\/h3>\n\n\n\n<p>Bij het bedenken van de virtual P1 Cable ben ik teveel uitgegaan van de DSMR-logger32 (dat was immers de aanleiding om deze virtuele kabel te ontwikkelen). Hierdoor vervangt de Ontvanger niet de Slimme Meter in die zin, dat de Slimme Meter 5 volt levert aan de P1 poort waar een aangesloten apparaat mee gevoed kan worden. De Ontvanger zou dus een 5 volt externe aansluiting moeten hebben, zodat de Ontvanger een aangesloten apparaat kan voeden. Nu moet dat &#8220;<em>aangesloten apparaat<\/em>&#8221; een eigen (externe) 5 volt voeding hebben, waarmee hij de Ontvanger kan voeden. Een beetje de omgekeerde wereld.<\/p>\n\n\n\n<p>Gelukkig is het niet moeilijk om die externe 5 volt voeding toch op de Ontvanger aan te sluiten. Voor gebruik van de DSMR-logger32 is die aanpassing niet nodig.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>[ ] Wat is het Het is een (h\u00e9\u00e9l lang) \u201cverlengsnoer\u201d voor de P1 poort van de Slimme Meter \u2026 \u2026 maar dan zonder fysieke kabel! Door de Virtual P1 Cable kan een DSMR-uitlees apparaat (bijvoorbeeld een DSMR-logger) op afstand &hellip; <a href=\"https:\/\/willem.aandewiel.nl\/index.php\/2023\/07\/31\/virtuele-p1-kabel\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":7828,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2,169,170,157,143,10,115],"tags":[],"class_list":["post-7807","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-arduino","category-avrxdbx","category-dsmr-logger","category-esp32","category-firmware","category-hardware","category-kicad"],"views":8697,"_links":{"self":[{"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/posts\/7807","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/comments?post=7807"}],"version-history":[{"count":21,"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/posts\/7807\/revisions"}],"predecessor-version":[{"id":7871,"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/posts\/7807\/revisions\/7871"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/media\/7828"}],"wp:attachment":[{"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/media?parent=7807"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/categories?post=7807"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/tags?post=7807"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}