]> git.rkrishnan.org Git - pihpsdr.git/commitdiff
radioberry_attenuation
authorpa3gsb <pa3gsb@gmail.com>
Fri, 11 May 2018 09:22:30 +0000 (11:22 +0200)
committerpa3gsb <pa3gsb@gmail.com>
Fri, 11 May 2018 09:22:30 +0000 (11:22 +0200)
radio.c
radioberry.c
radioberry.h

diff --git a/radio.c b/radio.c
index e5b3cd1726c31ef445143864a9f01916adfd6308..a7decc3d2947f5330dd6c79fda21e7668228d09a 100644 (file)
--- a/radio.c
+++ b/radio.c
@@ -1041,6 +1041,11 @@ void set_attenuation(int value) {
       case LIMESDR_PROTOCOL:
         lime_protocol_set_attenuation(value);
         break;
+#endif
+#ifdef RADIOBERRY
+      case RADIOBERRY_PROTOCOL:
+        radioberry_set_attenuation(value);
+        break;
 #endif
     }
 }
index 5a5d86767dfff9b6e3902a626072b8bb5e2aecd6..cc99c8e0921eb6ce80af860014f3e947b2627c57 100644 (file)
@@ -72,6 +72,7 @@ void spiWriter();
 void rx1_spiReader(unsigned char iqdata[]);
 void rx2_spiReader(unsigned char iqdata[]);
 
+int radioberry_attenuation = 0;
 int prev_drive_level;
 static int txcount =0;
 
@@ -112,7 +113,7 @@ void radioberry_protocol_init(int rx,int pixels) {
        fprintf(stderr, "====================================================================\n");
        fprintf(stderr, "                      Radioberry V2.0 beta 2.\n");
        fprintf(stderr, "\n");
-       fprintf(stderr, "                    PIHPSDR plugin version 10-5-2018 \n");
+       fprintf(stderr, "                    PIHPSDR plugin version 11-5-2018 \n");
        fprintf(stderr, "\n");
        fprintf(stderr, "\n");
        fprintf(stderr, "                      Have fune Johan PA3GSB\n");
@@ -147,6 +148,7 @@ void radioberry_protocol_init(int rx,int pixels) {
        }
 
        running=1;
+       radioberry_attenuation = adc_attenuation[active_receiver->adc];
        printf("init done \n");
  
        if(transmitter->local_microphone) {
@@ -293,6 +295,10 @@ void setSampleSpeed(int r) {
       }
 }
 
+void radioberry_set_attenuation(int attenuation) {
+       radioberry_attenuation = attenuation;
+}
+
 void radioberry_protocol_stop() {
   
        running=FALSE;
@@ -321,7 +327,7 @@ void rx1_spiReader(unsigned char iqdata[]) {
        }
        
        iqdata[0] = (sampleSpeed[0] & 0x03);
-       iqdata[1] = (((active_receiver->random << 6) & 0x40) | ((receiver[0]->dither <<5) & 0x20) |  (attenuation & 0x1F));
+       iqdata[1] = (((active_receiver->random << 6) & 0x40) | ((active_receiver->dither <<5) & 0x20) |  (radioberry_attenuation & 0x1F));
        iqdata[2] = ((rxFrequency >> 24) & 0xFF);
        iqdata[3] = ((rxFrequency >> 16) & 0xFF);
        iqdata[4] = ((rxFrequency >> 8) & 0xFF);
index 3e8a0909bc59cd4fd7befcfe042a7c05446e448a..383c3f193176ccae8c11d36562ede173c5dc98cc 100644 (file)
@@ -22,3 +22,4 @@ void radioberry_protocol_stop();
 void radioberry_protocol_init(int rx,int pixels);
 void *radioberry_protocol_process_local_mic(unsigned char *buffer,int le);
 extern void radioberry_protocol_iq_samples(int isample,int qsample);
+void radioberry_set_attenuation(int attenuation);