sheaivey / rx5808-pro-diversity

DIY project to create your own 5.8ghz FPV diversity basestation - based off the rx5808 receiver module. Project includes basic Arduino Nano implementation to advanced custom PCB board and introduction to digital switches 4066 chip.
http://www.laforgefpv.com
MIT License
577 stars 248 forks source link

How to update your firmware #109

Open c4talystza opened 7 years ago

c4talystza commented 7 years ago

I'd love to help out writing some documentation on 'How-To' guides for users to update their firmware on their devices. If anyone can give me a basic overview on what hardware & software is required I can very happily submit a PR to update the readme :)

Knifa commented 7 years ago

That sounds super great! It's hard to be specific without knowledge of particular hardware choices, etc, but I guess on a basic level it kind of goes like the following.

I think maybe some walkthroughs for specific hardware would be good.

vadimus-ca commented 7 years ago

If USBasp adapter is being used for flashing under Windows 10 libUSBk driver should be selected for proper firmware uploading (Sketch - Upload using programmer)

image

c4talystza commented 7 years ago

Thanks for the tips! Running through the steps now, and have run into a stumbling block. Perhaps just a newbie error?

OS: MacOS Sierra (10.12.2) Arduino IDE 1.8.0 Installed libraries

Is this perhaps something I have neglected to configure in settings.h ?

Error:

Arduino: 1.8.0 (Mac OS X), Board: "Arduino Nano, ATmega328"

/Applications/Arduino.app/Contents/Java/arduino-builder -dump-prefs -logger=machine -hardware /Applications/Arduino.app/Contents/Java/hardware -tools /Applications/Arduino.app/Contents/Java/tools-builder -tools /Applications/Arduino.app/Contents/Java/hardware/tools/avr -built-in-libraries /Applications/Arduino.app/Contents/Java/libraries -libraries /Users/dan/Documents/Arduino/libraries -fqbn=arduino:avr:nano:cpu=atmega328 -ide-version=10800 -build-path /var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409 -warnings=none -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=/Applications/Arduino.app/Contents/Java/hardware/tools/avr -prefs=runtime.tools.arduinoOTA.path=/Applications/Arduino.app/Contents/Java/hardware/tools/avr -prefs=runtime.tools.avrdude.path=/Applications/Arduino.app/Contents/Java/hardware/tools/avr -verbose /Users/dan/dev/github/sheaivey/rx5808-pro-diversity/src/rx5808-pro-diversity/rx5808-pro-diversity.ino
/Applications/Arduino.app/Contents/Java/arduino-builder -compile -logger=machine -hardware /Applications/Arduino.app/Contents/Java/hardware -tools /Applications/Arduino.app/Contents/Java/tools-builder -tools /Applications/Arduino.app/Contents/Java/hardware/tools/avr -built-in-libraries /Applications/Arduino.app/Contents/Java/libraries -libraries /Users/dan/Documents/Arduino/libraries -fqbn=arduino:avr:nano:cpu=atmega328 -ide-version=10800 -build-path /var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409 -warnings=none -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=/Applications/Arduino.app/Contents/Java/hardware/tools/avr -prefs=runtime.tools.arduinoOTA.path=/Applications/Arduino.app/Contents/Java/hardware/tools/avr -prefs=runtime.tools.avrdude.path=/Applications/Arduino.app/Contents/Java/hardware/tools/avr -verbose /Users/dan/dev/github/sheaivey/rx5808-pro-diversity/src/rx5808-pro-diversity/rx5808-pro-diversity.ino
Using board 'nano' from platform in folder: /Applications/Arduino.app/Contents/Java/hardware/arduino/avr
Using core 'arduino' from platform in folder: /Applications/Arduino.app/Contents/Java/hardware/arduino/avr
Build options changed, rebuilding all
Detecting libraries used...
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "/var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409/sketch/rx5808-pro-diversity.ino.cpp" -o "/dev/null"
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "/var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409/sketch/rx5808-pro-diversity.ino.cpp" -o "/dev/null"
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306" "/var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409/sketch/rx5808-pro-diversity.ino.cpp" -o "/dev/null"
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI/src" "/var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409/sketch/rx5808-pro-diversity.ino.cpp" -o "/dev/null"
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library" "/var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409/sketch/rx5808-pro-diversity.ino.cpp" -o "/dev/null"
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire/src" "/var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409/sketch/rx5808-pro-diversity.ino.cpp" -o "/dev/null"
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire/src" "/var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409/sketch/TVOut_screens.cpp" -o "/dev/null"
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire/src" "/var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409/sketch/oled_128x64_adafruit_screens.cpp" -o "/dev/null"
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire/src" "/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306/Adafruit_SSD1306.cpp" -o "/dev/null"
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire/src" "/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI/src/SPI.cpp" -o "/dev/null"
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire/src" "/Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library/Adafruit_GFX.cpp" -o "/dev/null"
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire/src" "/Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library/glcdfont.c" -o "/dev/null"
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire/src" "/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire/src/Wire.cpp" -o "/dev/null"
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire/src" "/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire/src/utility/twi.c" -o "/dev/null"
Generating function prototypes...
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire/src" "/var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409/sketch/rx5808-pro-diversity.ino.cpp" -o "/var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409/preproc/ctags_target_for_gcc_minus_e.cpp"
"/Applications/Arduino.app/Contents/Java/tools-builder/ctags/5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "/var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409/preproc/ctags_target_for_gcc_minus_e.cpp"
Compiling sketch...
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire/src" "/var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409/sketch/TVOut_screens.cpp" -o "/var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409/sketch/TVOut_screens.cpp.o"
"/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10800 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR   "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/variants/eightanaloginputs" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI/src" "-I/Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library" "-I/Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire/src" "/var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409/sketch/oled_128x64_adafruit_screens.cpp" -o "/var/folders/h0/39cpp_bd0vq42dw980yb47_80000gp/T/arduino_build_965409/sketch/oled_128x64_adafruit_screens.cpp.o"
oled_128x64_adafruit_screens.cpp:56: error: #error ("Screen size incorrect, please fix Adafruit_SSD1306.h!");
   #error("Screen size incorrect, please fix Adafruit_SSD1306.h!");

    ^
Using library EEPROM at version 2.0 in folder: /Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/EEPROM 
Using library Adafruit_SSD1306 at version 1.1.2 in folder: /Users/dan/Documents/Arduino/libraries/Adafruit_SSD1306 
Using library SPI at version 1.0 in folder: /Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/SPI 
Using library Adafruit_GFX_Library at version 1.1.5 in folder: /Users/dan/Documents/Arduino/libraries/Adafruit_GFX_Library 
Using library Wire at version 1.0 in folder: /Applications/Arduino.app/Contents/Java/hardware/arduino/avr/libraries/Wire 
exit status 1
#error ("Screen size incorrect, please fix Adafruit_SSD1306.h!");
c4talystza commented 7 years ago

Excuse me, I read the error message now... Basically:

Adjust Adafruit_SSD1306.h file under the SSD1306 Displays heading to look like the following:

#define SSD1306_128_64
// #define SSD1306_128_32 // this is uncommented by default
// #define SSD1306_96_16
Knifa commented 7 years ago

Glad you got it sorted! I really dislike this design choice on Adafruit's part. Needing to edit library code is super nasty, though I guess it's the easiest for speed.

TimothyGold commented 7 years ago

I was able to build this update for upload but I accidentally loaded the bootloader version and I cannot update in any way now. It is using the loaded version but when I try to upload again it states that "stk500 get sync fails" Can someone provide a recommended solution?

Knifa commented 7 years ago

@TimothyGold: Ouch, that sucks. I ran into the same issue with a friends' module who did the same.

I fixed it using the ISP header and ArduinoISP. The ArduinoISP might help you out (where the target is your receiver, rather than another Arduino). You want to burn the Arduino bootloader, and then try flash again through XLoader/FTDI headers with the non-bootloader version.

What type of receiver do you have?

TimothyGold commented 7 years ago

I have a Realacc - rx5808-pro-diversity. Its been a while but I have a USB ASP and i think I can flash on ISP. Once I flash the non bootloader version will I be able to use XLoader to flash updates via the FTDI interface? Or does this require a bootloader to flash via the serial interface?

Knifa commented 7 years ago

If you undo the screws and disconnect the top PCB with the screen, there are ISP headers underneath.

Use your USB ASP and the ISP header to burn the Arduino bootloader. Once you've flashed the bootloader, use the FTDI pins to flash the non-bootloader version. You can continue to use the FTDI header for updates afterwards.

I guess you could also just flash the bootloader version using your USB ASP directly, since then it's got both the bootloader and the actual firmware (then the FTDI will still work afterwards). I decided to just flash the bootloader separate.

Just, for whatever reason, trying to flash the version with the bootloader over FTDI causes weird problems.

Hope that makes sense!

TimothyGold commented 7 years ago

This makes sense. Thank you for your help.

TimothyGold commented 7 years ago

One more question. What Arduino Bootloader works best. I see some people have tried UNO and others something else. Any recommendations? Thanks again.

Knifa commented 7 years ago

Not sure on that, I used whatever it gives you with the Nano device type.

TimothyGold commented 7 years ago

OK. That's what I will use.

brkdwn commented 7 years ago

I have the same issue. On both a Realacc rx 5808 split (12/2016) and a non split version (05/2017). This is where I am so far:

FTDI: -I can't flash hex files with Xloader, it says: Upload failed -I can compile, write, but fail to verify with arduino

USBasp: -I can compile and flash on ISP ports -I can burn the bootloader (not sure if I should use nano or mega 328p, I tried both)

After burning the bootloader, I have no change with FTDI, still not possible to flash. I can only flash with xloader or arduino if I flash the same firmware witch is already on it.

So it's look like I can't manage to repair the bootloader correctly, but at least i can still flash threw USBasp. But only if I have an .ino. Is there a way to flash a .hex with USBasp ?

THX for the good work.

TimothyGold commented 7 years ago

I was able to burn the Nano bootloader via USBasp and the ISP headers. You can flash the .hex via the USBasp via the ISP headers. I can now upload via FTDI fine without issue once the bootloader was repaired. Not sure what you are facing at this point.

brkdwn commented 7 years ago

Thank for confirming that I should be succesful. I will try further.

Can you tell me how are you flashing hex file with USBasp ?

TimothyGold commented 7 years ago

Its been a while but I think you can pick the USBasp as the programmer in the Arduino IDE and then program like you normally would via the ISP header. You will have to do all programming via ISP header.

brkdwn commented 7 years ago

Ok It was a driver issue, now the bootloader is working again, an i can flash witfh ftdi again

thx

pbootsma commented 6 years ago

I just want to add that I finally got the hex flashing with USBASP working on MacOS 10.12 Sierra with the following command if Arduino IDE (1.8.4) is installed:

/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avrdude -C/Applications/Arduino.app/Contents/Java/hardware/tools/avr/etc/avrdude.conf -v -patmega328p -cusbasp -Uflash:w:Downloads/rx5808-pro-diversity-v2.0-with-bootloader.hex

You have to omit the -D parameter (Disable auto erase for flash memory), otherwise you get verification errors.