File sink result is wrong after add FMCOMMS2 blocks

I construct a simple flowgraph that save real and imaginary data from a signal source. The flowgraph is QT GUI with amplitude set to 0.5 and frequency is 1000 as shown in figure below. Then I verify the data from .dat files by run python scripts and show similar and consistent value what I expected. Where I can calculate magnitude is ~0.5.

Then I added FMCOMMS2 source / sink into same flowgraph as shown in figure below. I did a similar verification process. I found that the result is wrong. I believe the Head block is the root cause , but if i removed this Head block, I will get/ need to process a huge amount of .dat file generated ( xxMByte).

Then I verify again using Time Sink after FMCOMMS2 Source ( remove head block ), the waveform is look good with magnitude ~0.5.

My aim is to get correct data in real.dat and imaginary.dat after add FMCOMMS2 blocks / Head block. Any one have some idea how to solve this issue?

I'm collecting data in form of real and imaginary format which is stored in .dat format. I still get data that i'm expected receive from transceiver. The problem is when I add Head block on the path, the result seems different ( after calculate magnitude). If I remove the Head block. yes I get correct result ( to calculate magnitude) , but its huge capacity of size .dat file. Based on literature , Head block will limit data to be store in File sink.

I believe the data just store in File sink may be the device in initial state, so probably I need to increase Number Items on Head block ( currently 1024) that maybe sampling the data when the device in stable state.