micro / minimOSD для NAZA

Shuricus

Есть по ней все доки.

Там допаяны четыре входа через делители или резисторы, которые можно напрямую использовать для подключения датчика тока, вольтажа, рсси и ЛЕД. Но для этого в прошивке нужно менять пины. Со стандартной, или модами Алеза она не совместима.

Мы с ним обсуждали этот вопрос, я говорил, что при использовании КВтима можно вообще на проц не паятся для основных функций. Но это никого не заинтересовало. Хотя там нужно всего четыре циферки поменять. Работы на 10 секунд.

alezz
hotoj:

Есть шансы заставить работать ее с назой лайт?

Александр же ясно написал что есть 2 варианта:

  1. Программная модификация minnazaosd, а именно поменять местами пины в скетче
  2. Работать с с этой платой как с обычной minimOSD, т.е. припаять нужные проводки к ножкам проца (или дорожкам если такие существуют)
    оба варианта возможны, первый предпочтителен если у тебя есть знания по программированию для Ардуино, второй если есть навыки пайки мелких элементов
yasin
hotoj:

Здравствуйте! Имею миним осд.

у меня такая была.
паять резисторы все равно надо.
и все будет работать , единственное – нужно удалить один резистор на самой платке осд.

сообщение в этой теме #247

pavel74

подскажите . пришла такая плата подключил на столе всё вроде работает. 3 экрана -один без осд . 2 других почти одинаковые -только параметры по разному расположены. но нет ррси. - нужно прошивать? хотя и контакты и в описании есть. и можно ли вывести показания тока.

crown
pavel74:

но нет ррси. - нужно прошивать? хотя и контакты и в описании есть

если на экране нет инфы об rssi тогда в конфигураторе добавить этот параметр на экран, а так работает все нормально

pavel74
crown:

а так работает все нормально

да остальное ок. напругу показывает точно.

Entrprise

Посылка с FTDI USB адаптером куда то исчезла (надеюсь что таки придет), а minimOSD уже давно приехала, ждать дальше нету сил 😃
В связи с чем возник вопрос - смогу ли я прошить осдшку с помощью ардуино нано? Она у меня сейчас исполняет роль USB UART адаптера для подключения подвеса к компу, при этом задействованы tx, rx, 5v и gnd.
Теоретически осдшка это та же ардуинка, т.е. должна прошиться таким способом (только tx, rx, 5v и gnd). Я прав? И какие могут быть подводные камни при прошивке таким способом? Подключать tx-tx, rx-rx, 5v-5v и gnd-gnd или tx-rx, rx-tx, 5v-5v и gnd-gnd ?

Entrprise

Скачал сорцы Алексея из поста 659, либы добавил из свн и запустил верификацию. В результате ошибки в либе “FastSerial”.
Что я делаю не так?

Arduino: 1.6.0 (Windows 7), Плата"Arduino Nano, ATmega328"

Using library FastSerial in folder: D:\Development\Arduino\libraries\FastSerial (legacy)

Using library AP_Common in folder: D:\Development\Arduino\libraries\AP_Common (legacy)

Using library AP_Math in folder: D:\Development\Arduino\libraries\AP_Math (legacy)

Using library EEPROM in folder: D:\Development\Arduino\hardware\arduino\avr\libraries\EEPROM

Using library SimpleTimer in folder: D:\Development\Arduino\libraries\SimpleTimer (legacy)

Using library GCS_MAVLink in folder: D:\Development\Arduino\libraries\GCS_MAVLink (legacy)

Using library MemoryFree in folder: D:\Development\Arduino\libraries\MemoryFree (legacy)

Using library TinyGPS in folder: D:\Development\Arduino\libraries\TinyGPS (legacy)



D:\Development\Arduino/hardware/tools/avr/bin/avr-g++ -c -g -Os -w -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10600 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR -ID:\Development\Arduino\hardware\arduino\avr\cores\arduino -ID:\Development\Arduino\hardware\arduino\avr\variants\eightanaloginputs -ID:\Development\Arduino\libraries\FastSerial -ID:\Development\Arduino\libraries\AP_Common -ID:\Development\Arduino\libraries\AP_Math -ID:\Development\Arduino\hardware\arduino\avr\libraries\EEPROM -ID:\Development\Arduino\libraries\SimpleTimer -ID:\Development\Arduino\libraries\GCS_MAVLink -ID:\Development\Arduino\libraries\MemoryFree -ID:\Development\Arduino\libraries\TinyGPS C:\Users\Dmitry\AppData\Local\Temp\build2888606143456053024.tmp\ArduCam_Max7456.cpp -o C:\Users\Dmitry\AppData\Local\Temp\build2888606143456053024.tmp\ArduCam_Max7456.cpp.o

In file included from D:\Development\Arduino\libraries\FastSerial/BetterStream.h:16:0,
                 from D:\Development\Arduino\libraries\FastSerial/FastSerial.h:56,
                 from C:\Users\Dmitry\AppData\Local\Temp\build2888606143456053024.tmp\ArduCam_Max7456.cpp:2:
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h: In function 'int strcasecmp_P(const char*, const prog_char_t*)':
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:108:38: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive]
     return strcasecmp_P(str1, (const prog_char *)pstr);

                                      ^
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:108:38: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive]
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:108:32: error: expected primary-expression before 'const'
     return strcasecmp_P(str1, (const prog_char *)pstr);

                                ^
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:108:32: error: expected ')' before 'const'
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h: In function 'int strcmp_P(const char*, const prog_char_t*)':
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:113:34: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive]
     return strcmp_P(str1, (const prog_char *)pstr);

                                  ^
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:113:34: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive]
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:113:28: error: expected primary-expression before 'const'
     return strcmp_P(str1, (const prog_char *)pstr);

                            ^
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:113:28: error: expected ')' before 'const'
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h: In function 'size_t strlen_P(const prog_char_t*)':
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:118:28: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive]
     return strlen_P((const prog_char *)pstr);

                            ^
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:118:28: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive]
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:118:22: error: expected primary-expression before 'const'
     return strlen_P((const prog_char *)pstr);

                      ^
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:118:22: error: expected ')' before 'const'
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h: In function 'void* memcpy_P(void*, const prog_char_t*, size_t)':
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:123:34: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive]
     return memcpy_P(dest, (const prog_char *)src, n);

                                  ^
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:123:34: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive]
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:123:28: error: expected primary-expression before 'const'
     return memcpy_P(dest, (const prog_char *)src, n);

                            ^
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:123:28: error: expected ')' before 'const'
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h: In function 'char* strncpy_P(char*, const prog_char_t*, size_t)':
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:148:37: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive]
     return strncpy_P(buffer, (const prog_char *)pstr, buffer_size);

                                     ^
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:148:37: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive]
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:148:31: error: expected primary-expression before 'const'
     return strncpy_P(buffer, (const prog_char *)pstr, buffer_size);

                               ^
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:148:31: error: expected ')' before 'const'
In file included from D:\Development\Arduino\hardware\arduino\avr\cores\arduino/WString.h:29:0,
                 from D:\Development\Arduino\hardware\arduino\avr\cores\arduino/Print.h:26,
                 from D:\Development\Arduino\hardware\arduino\avr\cores\arduino/Stream.h:26,
                 from D:\Development\Arduino\libraries\FastSerial/BetterStream.h:14,
                 from D:\Development\Arduino\libraries\FastSerial/FastSerial.h:56,
                 from C:\Users\Dmitry\AppData\Local\Temp\build2888606143456053024.tmp\ArduCam_Max7456.cpp:2:
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h: In function 'uintptr_t pgm_read_pointer(const void*)':
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:165:47: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive]
             u.a[i] = pgm_read_byte(i + (const prog_char *)s);

                                               ^
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:165:47: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive]
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:165:41: error: expected primary-expression before 'const'
             u.a[i] = pgm_read_byte(i + (const prog_char *)s);

                                         ^
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:165:41: error: expected ')' before 'const'
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:165:22: error: expected ')' before ';' token
             u.a[i] = pgm_read_byte(i + (const prog_char *)s);

                      ^
D:\Development\Arduino\libraries\FastSerial/../AP_Common/AP_Common.h:165:22: error: expected ')' before ';' token
In file included from D:\Development\Arduino\libraries\FastSerial/FastSerial.h:56:0,
                 from C:\Users\Dmitry\AppData\Local\Temp\build2888606143456053024.tmp\ArduCam_Max7456.cpp:2:
D:\Development\Arduino\libraries\FastSerial/BetterStream.h: At global scope:
D:\Development\Arduino\libraries\FastSerial/BetterStream.h:28:41: error: 'prog_char' does not name a type
         void            _printf_P(const prog_char *, ...);

                                         ^
D:\Development\Arduino\libraries\FastSerial/BetterStream.h:28:51: error: ISO C++ forbids declaration of 'parameter' with no type [-fpermissive]
         void            _printf_P(const prog_char *, ...);

                                                   ^
Ошибка компиляции.
alezz
Entrprise:

tx-rx, rx-tx, 5v-5v и gnd-gnd ?

подводный камень один, или заводить сброс на GRN или ловить нажатие резета. Это уже обсуждалось здесь

Entrprise:

Что я делаю не так?

На первых страницах давал ссылку на мануал по компиляции на анл языке, но картинками. Просто нужно посмотреть на эти картинки с сделать все точно так 😃

Entrprise
alezz:

подводный камень один, или заводить сброс на GRN или ловить нажатие резета. Это уже обсуждалось здесь

  1. rst с ардуинки, которую использую как юсб адаптер (nano), завести на grn осдшки ?
  2. я на nano соединил RST с GND чтоб перевести ее в режим адаптера, это не помешает осуществлению пункта 1 ?
alezz:

На первых страницах давал ссылку на мануал по компиляции на анл языке, но картинками. Просто нужно посмотреть на эти картинки с сделать все точно так

делаю как раз по той пдфке (minimOSD-howto), может пропустил что то, проверю.

Entrprise
Entrprise:

делаю как раз по той пдфке (minimOSD-howto), может пропустил что то, проверю.

Не думал что версия IDE будет иметь такое значение 😃

Vlad-1357

Друзья, выскочила проблема. ОСД стало часто помигивать, а когда запускаешь моторы, и вовсе пропадает. Изображение курсовой камеры при этом отличное 😦

Vlad-1357

Камеру отключил, осд нормальное и с другой камерой нормальное. С китайцами связался, говорят у меня камера в PAL-е работает. Ну что интересно пытаюсь в конфигураторе переключить PAL/NTSC не переключается. Другие параметры меняются, видео режим - нет. Где искать?

Entrprise
alezz:

подводный камень один, или заводить сброс на GRN или ловить нажатие резета.

не помогло - failed to talk with bootloader

alezz

это типа мы должны угадать что из 2х вариантов не помогло? Первый способ работает железно, второй у кого-то получается сразу у кого-то нет, но обучающее видео даже здесь уже выкладывалось

Entrprise
alezz:

это типа мы должны угадать что из 2х вариантов не помогло? Первый способ работает железно

уточняю, со вторым вариантом у меня сразу не получилось, попробовал раз 20-30 нажимать ресет одновременно, до и после нажатия на кнопку “Read from OSD”, но не пошло.
а теперь я писал про первый вариант - у ардуино нано (которой и пытаюсь вытянуть данные с ОСД) есть два контакта RST (по одному на каждой стороне с контактами), один я соединил с GND (перевел ардуинку в режим юсб адаптера), а второй вывел на GRN ОСДшки.
получилось следующее подключение:
ОСД-Ардуино
tx-rx0
rx-tx1
5v-5v
gnd-gnd
grn-rst

прошивать не пробовал раз чтение не работает и плату не распаивал

alezz

Почитай здесь:
blog.oscarliang.net/program-minimosd-using-arduino…
При таком способе tx и rx перекрещивать не нужно, шьются обе атмеги (и в нано и в минимосд) одновременно. МинимОсд потом отключишь и зальешь в нано то что хочешь. Сам не пробовал но должно сработать

Entrprise
alezz:

Почитай здесь: blog.oscarliang.net/program-m...ut-ftdi-cable/ При таком способе tx и rx перекрещивать не нужно, шьются обе атмеги (и в нано и в минимосд) одновременно. МинимОсд потом отключишь и зальешь в нано то что хочешь. Сам не пробовал но должно сработать

почитал, спасибо. На счет Remove the ATMEGA chip from the socket это не мой случай. но мне не принципиально что ардуинка прошьется, все равно использую ее как адаптер, а при таком подключении все равно что в ней залито. но проблема так и не решилась 😦
tx и rx теперь не перекрещиваю, но “Read from OSD” все так же выдает failed to talk with bootloader

как я понимаю, если читать не выходит, то дело плохо, да?

alezz

ну попробуй минимосд вообще отключить и залить конфигуратором прошивку от минимосд в нано, может проблема в нано?

Entrprise
alezz:

ну попробуй минимосд вообще отключить и залить конфигуратором прошивку от минимосд в нано, может проблема в нано?

так я прошивать еще даже не пробовал, тесты ограничивались только нажатием “Read from OSD” 😃
Попробовать шить?