From: pa3gsb <pa3gsb@gmail.com>
Date: Sun, 25 Mar 2018 11:13:12 +0000 (+0200)
Subject: tx-pwr control max 19.5dB
X-Git-Url: https://git.rkrishnan.org/components/specifications/simplejson/htmlfontify-example.html?a=commitdiff_plain;h=62c50510f207a831187c941b46a60cfbe4824c89;p=pihpsdr.git

tx-pwr control max 19.5dB
---

diff --git a/radioberry.c b/radioberry.c
index 9033d2d..18b114a 100644
--- a/radioberry.c
+++ b/radioberry.c
@@ -130,12 +130,12 @@ void radioberry_protocol_init(int rx,int pixels) {
 	display_width=pixels;
 	fprintf(stderr,"radioberry_protocol: buffer size: =%d\n", buffer_size);
 
-/*
+#ifndef GPIO
 	if (gpioInitialise() < 0) {
 		fprintf(stderr,"radioberry_protocol: gpio could not be initialized. \n");
 		exit(-1);
 	}
-*/
+#endif
   
  	gpioSetMode(13, PI_INPUT); 	//rx1_FIFOEmpty
 	gpioSetMode(16, PI_INPUT);	//rx2_FIFOEmpty
@@ -231,11 +231,18 @@ void radioberry_protocol_iq_samples(int isample,int qsample) {
 	
 		sem_wait(&mutex);
 		
+		int power=0;
+		 if(tune && !transmitter->tune_use_drive) {
+            power=(int)((double)transmitter->drive_level/100.0*(double)transmitter->tune_percent);
+          } else {
+            power=transmitter->drive_level;
+          }
+		
 		tx_iqdata[0] = 0;
-		tx_iqdata[1] = transmitter->drive / 6.4;  // convert drive level from 0-255 to 0-39 )
-		if (prev_drive_level != transmitter->drive) {
+		tx_iqdata[1] = power / 6.4;  // convert drive level from 0-255 to 0-39 steps of 0.5dB to control AD9866)
+		if (prev_drive_level != transmitter->drive_level) {
 			printf("drive level %d - corrected drive level %d \n", transmitter->drive_level, tx_iqdata[1]);
-			prev_drive_level = transmitter->drive; 
+			prev_drive_level = transmitter->drive_level; 
 		}		
 		tx_iqdata[2] = isample>>8; 
 		tx_iqdata[3] = isample;
@@ -311,10 +318,8 @@ void radioberry_protocol_stop() {
 		spiClose(rx1_spi_handler);
 	if (rx2_spi_handler !=0)
 		spiClose(rx2_spi_handler);
-		
-#ifndef GPIO 
+
 	gpioTerminate();
-#endif
 	
 }