From: pa3gsb Date: Fri, 11 May 2018 09:22:30 +0000 (+0200) Subject: radioberry_attenuation X-Git-Url: https://git.rkrishnan.org/listings/...?a=commitdiff_plain;h=7c0667b389c97f77f0e99710da22c3f4a41996a0;p=pihpsdr.git radioberry_attenuation --- diff --git a/radio.c b/radio.c index e5b3cd1..a7decc3 100644 --- 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 } } diff --git a/radioberry.c b/radioberry.c index 5a5d867..cc99c8e 100644 --- a/radioberry.c +++ b/radioberry.c @@ -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); diff --git a/radioberry.h b/radioberry.h index 3e8a090..383c3f1 100644 --- a/radioberry.h +++ b/radioberry.h @@ -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);