DCS Bios code not working

Hi Guys,

today i recieved my Arduino Uno4 and wanted to use it with DCS Bios.

Coding with the Uno works fine, except of using it with the DCS Libary. I wanted to implement a led for FW190 using following code:

`#define DCSBIOS_IRQ_SERIAL

#include "DcsBios.h"

/* paste code snippets from the reference documentation here */

DcsBios::LED gun131L2(0x3826, 0x4000, 8);

void setup() {
DcsBios::setup();
}

void loop() {
DcsBios::loop();
}`

if i try to run the code i get follwoing errors:

In file included from C:\Users\frede\Documents\Arduino\FW190_MG151_links\FW190_MG151_links.ino:11:0:
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:55:6: error: expected constructor, destructor, or type conversion before '(' token
ISR(USART0_RX_vect) {
^
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h: In function 'void DcsBios::setup()':
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:27:14: error: 'PRR' was not declared in this scope
#define PRR0 PRR
^
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:61:4: note: in expansion of macro 'PRR0'
PRR0 &= ~(1<<PRUSART0);
^~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:27:14: note: suggested alternative: 'PRR0'
#define PRR0 PRR
^
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:61:4: note: in expansion of macro 'PRR0'
PRR0 &= ~(1<<PRUSART0);
^~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:61:17: error: 'PRUSART0' was not declared in this scope
PRR0 &= ~(1<<PRUSART0);
^~~~~~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:61:17: note: suggested alternative: 'UART'
PRR0 &= ~(1<<PRUSART0);
^~~~~~~~
UART
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:62:4: error: 'UBRR0H' was not declared in this scope
UBRR0H = 0;
^~~~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:62:4: note: suggested alternative: 'PRR0'
UBRR0H = 0;
^~~~~~
PRR0
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:63:4: error: 'UBRR0L' was not declared in this scope
UBRR0L = 3; // 250000 bps
^~~~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:63:4: note: suggested alternative: 'PRR0'
UBRR0L = 3; // 250000 bps
^~~~~~
PRR0
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:64:4: error: 'UCSR0A' was not declared in this scope
UCSR0A = 0;
^~~~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:65:4: error: 'UCSR0C' was not declared in this scope
UCSR0C = (1<<UCSZ00) | (1<<UCSZ01);
^~~~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:65:17: error: 'UCSZ00' was not declared in this scope
UCSR0C = (1<<UCSZ00) | (1<<UCSZ01);
^~~~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:65:31: error: 'UCSZ01' was not declared in this scope
UCSR0C = (1<<UCSZ00) | (1<<UCSZ01);
^~~~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:67:4: error: 'UCSR0B' was not declared in this scope
UCSR0B = (1<<RXEN0) | (1<<TXEN0) | (1<<RXCIE0);
^~~~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:67:17: error: 'RXEN0' was not declared in this scope
UCSR0B = (1<<RXEN0) | (1<<TXEN0) | (1<<RXCIE0);
^~~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:67:17: note: suggested alternative: '_REENT'
UCSR0B = (1<<RXEN0) | (1<<TXEN0) | (1<<RXCIE0);
^~~~~
_REENT
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:67:30: error: 'TXEN0' was not declared in this scope
UCSR0B = (1<<RXEN0) | (1<<TXEN0) | (1<<RXCIE0);
^~~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:67:43: error: 'RXCIE0' was not declared in this scope
UCSR0B = (1<<RXEN0) | (1<<TXEN0) | (1<<RXCIE0);
^~~~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:67:43: note: suggested alternative: 'RX_LED'
UCSR0B = (1<<RXEN0) | (1<<TXEN0) | (1<<RXCIE0);
^~~~~~
RX_LED
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h: In function 'void DcsBios::usart_tx(const char*)':
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:82:13: error: 'UCSR0A' was not declared in this scope
while(!(UCSR0A & (1<<UDRE0))); // wait until TX buffer is empty
^~~~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:82:26: error: 'UDRE0' was not declared in this scope
while(!(UCSR0A & (1<<UDRE0))); // wait until TX buffer is empty
^~~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:83:5: error: 'UDR0' was not declared in this scope
UDR0 = *c++; // write byte to TX buffer
^~~~
C:\Users\frede\Documents\Arduino\libraries\DCS-BIOS_FP-Fork\src/DcsBios.h:83:5: note: suggested alternative: 'D10'
UDR0 = *c++; // write byte to TX buffer
^~~~
D10

exit status 1

Compilation error: exit status 1

Does anyone have same issues?

It looks like that code is specific to the AVR processor on the R3 UNO. That library will need to be rewritten to run on the R4.

From DCS-BIOS: Building Hardware Panels

DCS-BIOS supports boards that feature the ATMega328 or the ATMega2560 microcontrollers. That includes the Arduino Uno, Nano, Pro Mini and Mega 2560 boards.

The R4 uses a Renesas RA4M1 processor, not an ATMega328 or ATMega2560.

Thanks for quick response guys :+1:

Alright, than i need to get a Uno 3

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.