Question of tx_ampl range: [0, 1) or [0, 2^15/2)?

Hi All:

I am trying to set a proper pair of tx amplitude and rx gain, but found
something confused.

In transmit_path.py ( …-> packet_transmitter -> Multiply Const -> USRP
Sink), I see that the range of Multiply Const is [0, 1).

However, in one of the GRC example usrp_tx_dpsk.grc (Random Source ->
DPSK2
Mod -> Multiply Const -> USRP Sink), Multiply_Const = tx_ampl*p2p/2 ,
where
p2p = 2^15.

Does anyone know why the Multiply_Const is set to tx_ampl*p2p/2 and what
does p2p refer to?

Also, why the amplifier value are so different in these two examples?
Which
one should I use?

Many thanks!

Rachel

In transmit_path.py ( …-> packet_transmitter -> Multiply Const -> USRP
Sink), I see that the range of Multiply Const is [0, 1).

However, in one of the GRC example usrp_tx_dpsk.grc (Random Source -> DPSK2
Mod -> Multiply Const -> USRP Sink), Multiply_Const = tx_ampl*p2p/2 , where
p2p = 2^15.

There is a multiply_const(2**15) in the transmit_path example. See
generic_usrp.py.

The gr-usrp sink always takes samples between +/-2**15. See the docs in
the USRP sink block in GRC.

Does anyone know why the Multiply_Const is set to tx_ampl*p2p/2 and what
does p2p refer to?

It means peak to peak and the purpose is to scale the signal to the
expected range of the usrp sink block. I believe that p2p should
actually be 2**16 in this case, but it works.

-josh