# Fake Victron dbus gridmeter in Node-Red

**URL:** https://discourse.nodered.org/t/fake-victron-dbus-gridmeter-in-node-red/70287
**Category:** General
**Created:** [8 November 2022 21:25 UTC](https://discourse.nodered.org/t/fake-victron-dbus-gridmeter-in-node-red/70287 "2022-11-08T21:25:59Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![Becker](https://avatars.discourse-cdn.com/v4/letter/b/c77e96/32.png) [@Becker](https://discourse.nodered.org/u/Becker)
#### Post date: [8 November 2022 21:25 UTC](https://discourse.nodered.org/t/fake-victron-dbus-gridmeter-in-node-red/70287/1 "2022-11-08T21:25:59Z")

</div>

Hi,  
Node-Red is integrated in Victrons "VenusOS large".  
Is it possible to fake a gridmeter directly from Node-Red, respectively to write dbus ?

In github there are always python scripts, which fakes Smartmeters:

> **[GitHub - timostark/venus.dbus-iobroker-smartmeter: Wrapper for integrating a...](https://github.com/timostark/venus.dbus-iobroker-smartmeter)**
>
> Wrapper for integrating a IObroker energy meter into Victron's Venus OS - GitHub - timostark/venus.dbus-iobroker-smartmeter: Wrapper for integrating a IObroker energy meter into Victron's V...

> **[GitHub - mitchese/shm-et340: Sunny Home Manager emulator in a Victron ESS...](https://github.com/mitchese/shm-et340)**
>
> Sunny Home Manager emulator in a Victron ESS System (replaces ET340) - GitHub - mitchese/shm-et340: Sunny Home Manager emulator in a Victron ESS System (replaces ET340)

> **[GitHub - stormmurdoc/victron\_sdm630\_bridge: MQTT-dbus Bridge for Victron...](https://github.com/stormmurdoc/victron_sdm630_bridge)**
>
> MQTT-dbus Bridge for Victron CerboGX (Venus) and Eastron SDM630 Power Meter - GitHub - stormmurdoc/victron\_sdm630\_bridge: MQTT-dbus Bridge for Victron CerboGX (Venus) and Eastron SDM630 Power Meter

> **[GitHub - akabza/VE.bus-SMA-Sunny-Home-Manager-service](https://github.com/akabza/VE.bus-SMA-Sunny-Home-Manager-service)**
>
> Contribute to akabza/VE.bus-SMA-Sunny-Home-Manager-service development by creating an account on GitHub.

I think it´s always the same:

```auto
 # send data to DBus
            total_value = next(
                (x for x in meter_data if x['id'] == self._getSmartMeterOverallConsumption()), None)['val']
            phase_1 = next((x for x in meter_data if x['id'] ==
                            self._getSmartMeterPhase1Consumption()), None)['val']
            phase_2 = next((x for x in meter_data if x['id'] ==
                            self._getSmartMeterPhase2Consumption()), None)['val']
            phase_3 = next((x for x in meter_data if x['id'] ==
                            self._getSmartMeterPhase3Consumption()), None)['val']
            grid_sold = next((x for x in meter_data if x['id'] ==
                              self._getSmartMeterGridSold()), None)['val'] - self.grid_sold_start
            grid_bought = next((x for x in meter_data if x['id'] ==
                                self._getSmartMeterGridBought()), None)['val'] - self.grid_bought_start
            voltage = next((x for x in meter_data if x['id'] ==
                            self._getSmartMeterVoltage()), None)['val']

            # positive: consumption, negative: feed into grid
            self._dbusservice['/Ac/Power'] = total_value
            self._dbusservice['/Ac/L1/Voltage'] = voltage
            self._dbusservice['/Ac/L2/Voltage'] = voltage
            self._dbusservice['/Ac/L3/Voltage'] = voltage
            self._dbusservice['/Ac/L1/Current'] = phase_1 / voltage
            self._dbusservice['/Ac/L2/Current'] = phase_2 / voltage
            self._dbusservice['/Ac/L3/Current'] = phase_3 / voltage
            self._dbusservice['/Ac/L1/Power'] = phase_1
            self._dbusservice['/Ac/L2/Power'] = phase_2
            self._dbusservice['/Ac/L3/Power'] = phase_3

            self._dbusservice['/Ac/Current'] = total_value / voltage
            self._dbusservice['/Ac/Voltage'] = phase_3

            ##self._dbusservice['/Ac/L1/Energy/Forward'] = (meter_data['emeters'][0]['total']/1000)
            self._dbusservice['/Ac/Energy/Forward'] = grid_bought
            self._dbusservice['/Ac/Energy/Reverse'] = grid_sold

```

I´ve my Smartmeter already in Node-Red, I want to send it from Node-Red to dbus without python scripts.

> **[@victronenergy/node-red-contrib-victron](https://flows.nodered.org/node/@victronenergy/node-red-contrib-victron#Installation-and-Usage)**
>
> Custom Node-RED Nodes for Victron Energy

=\> the gridmeter is only a input node.

Is this possible ?

It should look like this:

 ![grafik](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/8/8/882c398a30c207937917a24cd4d4d0fdfc247f8d.png)

---

<div class="post-metadata">

### Author: ![Becker](https://avatars.discourse-cdn.com/v4/letter/b/c77e96/32.png) [@Becker](https://discourse.nodered.org/u/Becker)
#### Post date: [17 November 2022 06:25 UTC](https://discourse.nodered.org/t/fake-victron-dbus-gridmeter-in-node-red/70287/2 "2022-11-17T06:25:34Z")

</div>

you can fake devices with:

> **[GitHub - freakent/dbus-mqtt-devices: A driver for Victron Venus GX devices to...](https://github.com/freakent/dbus-mqtt-devices)**
>
> A driver for Victron Venus GX devices to support use of dbus-mqtt - GitHub - freakent/dbus-mqtt-devices: A driver for Victron Venus GX devices to support use of dbus-mqtt

👍

 ![grafik](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/4/1/41010b6c104fdaa93a03ab46b745fea6b8d981df.png)  
 ![grafik](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/2/e/2e8bf9d40b245878ac54d3cce71f5b4bdcea1fc8.png)

---

<div class="post-metadata">

### Author: ![SolarFrosch](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/solarfrosch/32/71181_2.png) [@SolarFrosch](https://discourse.nodered.org/u/SolarFrosch)
#### Post date: [22 November 2022 09:55 UTC](https://discourse.nodered.org/t/fake-victron-dbus-gridmeter-in-node-red/70287/3 "2022-11-22T09:55:00Z")

</div>

Hi Becker,

As I also have my smartmeter data already available in node-red, I would also like to show them as grid meter dat in venus OS.

Could you please share the node details for nodes U1 and UL1?  
At this point I'm missing more details to proceed.

Thank you and best regards  
Dirk

---

<div class="post-metadata">

### Author: ![Becker](https://avatars.discourse-cdn.com/v4/letter/b/c77e96/32.png) [@Becker](https://discourse.nodered.org/u/Becker)
#### Post date: [22 November 2022 12:18 UTC](https://discourse.nodered.org/t/fake-victron-dbus-gridmeter-in-node-red/70287/4 "2022-11-22T12:18:11Z")

</div>

[Venus.json](https://discourse.nodered.org/uploads/short-url/zhUTiVAQWMR5R3bkKAcFOUhj6dl.json) (68.3 KB)

you have to replace "xxx" with your ID.

---

<div class="post-metadata">

### Author: ![Zippo205](https://avatars.discourse-cdn.com/v4/letter/z/eada6e/32.png) [@Zippo205](https://discourse.nodered.org/u/Zippo205)
#### Post date: [24 November 2022 14:08 UTC](https://discourse.nodered.org/t/fake-victron-dbus-gridmeter-in-node-red/70287/5 "2022-11-24T14:08:56Z")

</div>

Hi Becker, really nice.  
Is it possible also to set the CustomName and other props for e.g.: the Inverter from NodeRed?  
Regards Zippo

---

<div class="post-metadata">

### Author: ![Becker](https://avatars.discourse-cdn.com/v4/letter/b/c77e96/32.png) [@Becker](https://discourse.nodered.org/u/Becker)
#### Post date: [24 November 2022 16:19 UTC](https://discourse.nodered.org/t/fake-victron-dbus-gridmeter-in-node-red/70287/6 "2022-11-24T16:19:09Z")

</div>

I think not, but i´m not sure.  
you can set the name in Venus remote console.

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/1X/d073cd938eafa2e558d7c2cd59003b3ef4963033.png) [@system](https://discourse.nodered.org/u/system)
#### Post date: [8 December 2022 16:19 UTC](https://discourse.nodered.org/t/fake-victron-dbus-gridmeter-in-node-red/70287/7 "2022-12-08T16:19:37Z")

</div>

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.
