# Frequency fluctuates from 0 to 50 Hz) after transmitting a stream to another PDC

**URL:** <http://discussions.gridprotectionalliance.org/t/frequency-fluctuates-from-0-to-50-hz-after-transmitting-a-stream-to-another-pdc/1280>\
**Category:** openPDC\
**Created:** [June 27, 2024, 3:50pm UTC](http://discussions.gridprotectionalliance.org/t/frequency-fluctuates-from-0-to-50-hz-after-transmitting-a-stream-to-another-pdc/1280 "2024-06-27T15:50:50Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Korunekosama](http://discussions.gridprotectionalliance.org/user_avatar/discussions.gridprotectionalliance.org/korunekosama/32/708_2.png) [@Korunekosama](http://discussions.gridprotectionalliance.org/u/Korunekosama)\
**Post date:** [June 27, 2024, 3:50pm UTC](http://discussions.gridprotectionalliance.org/t/frequency-fluctuates-from-0-to-50-hz-after-transmitting-a-stream-to-another-pdc/1280/1 "2024-06-27T15:50:50Z")

</div>

Hello !  
I’ve got a strange behavior on my ‘development’ environnement :

- PDC\_A on SERVER\_A receive PMU\_A and PMU\_B data from a PDC\_SOURCE.  
– PMU\_A is natively at 50Hz/10fps on PDC\_SOURCE and PMU\_B is natively 50Hz/50fps ; but PDC\_SOURCE send them to PDC\_A in a single stream at 50Hz/50fps ; upscalling automatically the PMU\_A data.  
Everything is OK on PDC\_A :  
 ![image](http://discussions.gridprotectionalliance.org/uploads/default/original/2X/1/1be705acff86c9fe43f0d328d97a8c979819141d.png)  
Blue for PMU\_A and green for PMU\_B

- I have made a Concentrator Output Stream declared with ‘Nominal Frequency = 50 Hz’ and ‘Frames Per Second’ = 50, that include this two PMU\_A and PMU\_B data to send them to PDC\_B on SERVER\_B. To made this I configured the output stream like this on SERVER\_A :  
 ![image](http://discussions.gridprotectionalliance.org/uploads/default/original/2X/4/43683fa7f8fb41a4accdecde7160b4e3ceb26513.png)  
 ![image](http://discussions.gridprotectionalliance.org/uploads/default/original/2X/a/ae1599f47b322ecaf331395e0acd582013c9a951.png)

- On this SERVER\_A, I’m using StreamSplitter to push the data to the destination SERVER\_B (instead of making SERVER\_B pulling them ; because SERVER\_A is on a more secure network area than SERVER\_B so no incoming connections are allowed), on a specific port 4750 :  
 ![image](http://discussions.gridprotectionalliance.org/uploads/default/original/2X/a/ac9ed09a0df4c10cafe8471e834968b06f0675b9.png)

- On SERVER\_B, I use PMU Connection Tester to check if the stream is OK and this is what I’ve got for Frequency :  
– PMU\_A  
 ![image](http://discussions.gridprotectionalliance.org/uploads/default/original/2X/4/46c9bbe4e3b5c2b56d076376b542b37634c02cb1.png)

–PMU\_B  
 ![image](http://discussions.gridprotectionalliance.org/uploads/default/original/2X/7/7a57212185555e2bb00f52355f40c2970e1399c9.png)

When selecting PMU\_A, after a few seconds the PMU selector on the left switch automatically to the first one of the list (PMU\_B which is OK).

Why does the frequency of PMU\_A continuously oscillate between 0 and 50 on PDC\_B (as it is OK on PDC\_A) ; and the PMU\_B frequency is OK both on PDC\_A and PDC\_B ?  
Note that I’ve configured the PMU\_A and PMU\_B in OpenPDC on SERVER\_B and the result is the same :  
 ![image](http://discussions.gridprotectionalliance.org/uploads/default/original/2X/d/da0ef3e7e2f044777f55619ab15898631e4be9e3.png)  
PMU\_A (blue) is not OK as PMU\_B (green on the top of the graph) is OK.

If you have some times to help …

Regards,

Stephane.

---

<div class="post-metadata">

**Author:** ![ritchiecarroll](http://discussions.gridprotectionalliance.org/user_avatar/discussions.gridprotectionalliance.org/ritchiecarroll/32/2_2.png) [@ritchiecarroll](http://discussions.gridprotectionalliance.org/u/ritchiecarroll)\
**Post date:** [June 27, 2024, 6:00pm UTC](http://discussions.gridprotectionalliance.org/t/frequency-fluctuates-from-0-to-50-hz-after-transmitting-a-stream-to-another-pdc/1280/2 "2024-06-27T18:00:56Z")

</div>

I do not believe upscaling is happening as you expect. When you set the output frame rate to 50Hz, every four samples of the 10Hz input data will be missing. Generally speaking, the openPDC will not “invent” new measurements from a phasor data source, i.e., down-sampling options exist, but currently, up-sampling options do not.

If you want to reuse the last frequency value until a new value is received, I would suggest using a `DynamicCalculator` setting the `CalculationInterval` to `0.02` seconds (for 50Hz), `UseLatestValues` set to `true`, `TimestampSource` set to `RealTime`, `VariableList` set like `x=PMU_A:FREQ` and `ExpressionText` set to `x`. You should create a new frequency output for the calculation result then manually use this new frequency as the input for output stream, replacing the default 10Hz signal.

Haven’t tested this exact scenario, but I suspect it would work. Additionally, you would need to repeat this manual process for each incoming measurement that needed up-sampling, such as phasor angles and magnitudes, any analogs, digital, status flags, etc.

Certainly the “best” option would be to modify the concentrator code to handle up-sampling options in a similar manner to how it currently handles down-sampling options. We can take a note to add such a feature in the future.

Thanks,  
Ritchie
