micro minimosd - не могу перешить. OSD рабочее

prg
Rover:

Чип не паленый, драйвер винды не сбрасывает.

Одно другого не исключает. Судя по цене как раз подделка. У меня подобная плата есть и на ней не сохранялись настройки (например, нельзя инвертировать rx или tx, что для прошивки всяких frsky нужно). Возможно просто китайцы в новых сериях подделок запретили сохранение чего-либо во избежание “проблем” с виндовыми драйверами. Но я не отговариваю покупать - нормально оно работает. Правда сам все-таки поменял на нормальную мелкосхему ftdi (порядка 200р она стоила).

pavel74
Dim0:

а может попробовать сначала обнулить EEPROM?

пробовал уже по всякому. загрузка останавливаеться и стоит. наверное что то с мегой в осд. (знаний не хватает и в инете всё перерыл)

Dim0
pavel74:

пробовал уже по всякому. загрузка останавливаеться и стоит.

а не пробовали на другом компе? всякое бывает…

pavel74
Dim0:

на другом компе?

пробовал на 3х с разными OC . и разные программаторы(ардуино.фдти.CP2102) не в них проблема а в самой осд.(заказал новую но разобраться хочеться)

7 days later
Dim0

Коллеги,
если кому интересно, сегодня проделал эксперимент (когда первые разы мучался с прошивкой OSD через адаптер CP2102, который купил в ближайшем интернет магазе, появлялась мысль что проблемы при перепрошивке лежат в самом адаптере, и заказал рекомендованный Юлианом адаптер)
приехали рекомендованный адаптер и новая OSD и я решил еще раз проделать все как должно быть.

  • соединяем правильно все контакты (tx<->rx; rx<->tx; dtr<->dtr; +<->+; gnd<->gnd)
  • запускаем arduino 1.0.6 со скетчем MW_OSD
  • все прошивается с первого раза без всяких “танцев с бубном”
    Значит не все адаптеры CP2102 одинаковы, и если не хотите “трах-тибидоха” берите рекомендованные железки!

Спасибо, может кому-то это сэкономит нервы 😃

1 month later
Gartzy

Подскажите пожалуйста, обязательно ли прошивать osd? Заказал с али Micro Minimosd для CC3D и CP2102, osd пришло быстрее, подключил как на схеме в описании на али, за исключением контроллера, там на схеме вроде не cc3d, и подключил в main port, в конфигурации поставил main port - telemtry, в итоге у меня такая картинка, может я не правильно подключил, или нужно прошивать обязательно?

Илья_Реджепов
Gartzy:

Подскажите пожалуйста, обязательно ли прошивать osd? Заказал с али Micro Minimosd для CC3D и CP2102, osd пришло быстрее, подключил как на схеме в описании на али, за исключением контроллера, там на схеме вроде не cc3d, и подключил в main port, в конфигурации поставил main port - telemtry, в итоге у меня такая картинка, может я не правильно подключил, или нужно прошивать обязательно?

Шрифты явно не те залиты. Прошивать конечно нужно, ибо разновидностей полетных контроллеров много, вариантов индикации еще больше, универсальных готовых вариантов нет.

johan

Пытаюсь подключить микро миним ОСД к sp racing f3 через порт UART 1, после подключения аккумулятора на мониторе отсутствуют показания с осд, картинка с камеры есть и почему-то после отключения аккумулятора слетает прошивка на осд-шке, правда потом перепрошивается. Может кто что-нибудь посоветует.

Gartzy
Илья_Реджепов:

Шрифты явно не те залиты. Прошивать конечно нужно, ибо разновидностей полетных контроллеров много, вариантов индикации еще больше, универсальных готовых вариантов нет.

Спасибо, буду ждать адаптер для прошивки!

hike

Всем доброго времени.
Прога MW_OSD_GUI не видит осдшку.
Прошивал опльзуясь руководством Юлиана

Джава стоит 1.7, прога для настройки осд запускается (винда 7 х64), выбираю компорт ( пробывал разные значения компорта) и все- идет ожидание осд. На осд светодиот очень часто моргает и греется. Это лечится?
З.Ы. Такими вещами занимаюсь впервые - если можно сленгом не загружайте, а на простом людском, мордой тыкайте 😃
Заранее спасибо!

Rover

OSD выдает хоть какую-то картинку на видеомонитор? Система должна выдавать начальное изображение (хотя бы беспорядочный набор символов) в автономном режиме, без видеокамеры.
Если картинка на монитор не идет, значит OSD нормально не работает и обращаться к конфигуратору рано. Ощутимо сильный нагрев это норма.

hike

Скрин с подключенным осд ( вернее с попыткой подключения) Все время написано " ожидание осд". И ни картинок - ничего вообще…
Думал что нажал че не так при прошивке и начал с начала. При удалении еепром выдало ошибку.
Ща вот хотел ее скрин сделать - а еепром взял и норм очистился. Пошел дальше и на прошивке вот че выдало…
З.Ы. Подскажите плз. в ардуино какой программатор правильно выбрать? а то уже от без исходности другие начал пробывать. А который по дефолту стоял я забыл 😦

Rover

Да при чем тут скрин? Вы картинку с камеры в GUI что ли смотреть хотите? Я говорю про подключение видеовыхода OSD к дисплею (видеомонитору). Про компьютер и GUI мы сейчас вообще речь не ведем, забудьте пока про компьютер. Вы ведь на чем-то картинку с FPV смотреть собираетесь - на мониторе или на видеоочках? У них есть видеовход. Вот и подайте видео сигнал с видеовыхода OSD на вход своего устройства отображения видео. Камеру пока подключать не надо. Нормально работающая и прошитая плата OSD должна давать хоть какую-то картинку на видеовыходе. Пусть там будут даже беспорядочные буквы из-за того, что шрифты не подходят, это не важно. Вот когда убедитесь, что MAX работает, можно будет и к GUI переходить. А у вас, судя по фото, к видеовыходу еще даже провода не припаяны))

hike

Простите, что туплю. Вообщем вот такое она показывает…

Rover

Ну зашибись)))) у вас OSD прошита прошивкой ArduCAM, которая работает с протоколом MAVLink, а пытаетесь подключиться через GUI для мультивиевского протокола MSP.
Конечно это работать не будет. Это два несовместимых протокола. И вообще я не понял, вы ведь по руководству Юлиана должны были залить прошивку MW_OSD. А почему тогда на экране монитора мы видим прошивку под мавлинк/ардупилот??? У вас в первый раз прошивка-то вообще залилась? Обычно ардукам идет с фабрики залитый. Давайте-ка зачищайте EEPROM и заливайте правильную прошивку, MW_OSD и всё будет работать.

В ардуине выбирайте Arduino Pro или Pro Mini atmega328 5V 16MHz. Сейчас у вас неправильный контроллер выбран.

И добрый совет вам: ничего никогда не тыкайте наобум “от безысходности”, будет только хуже. Иногда намного хуже, вплоть до дыма из платы.

P.S. Когда зальете-таки нужную прошивку, не забудьте сразу обновить шрифты через GUI, иначе на экране будет мусор вместо текста.

hike
Rover:

В ардуине выбирайте Arduino Pro или Pro Mini atmega328 5V 16MHz. Сейчас у вас неправильный контроллер выбран.

Это я тоже тыкал варианты 😃. В первый раз прошивал все четко по мануалу Юлиана. И вроде в первый раз у меня выдавало сообщение “Скетч использует 25 890 байт (84%) памяти устройства. Всего доступно 30 720 байт.
Глобальные переменные используют 1 899 байт (92%) динамической памяти, оставляя 149 байт для локальных переменных. Максимум: 2 048 байт.
Недостаточно памяти, программа может работать нестабильно.”
Ща вот чистил еепром и прошил заново.
После очистки ЕЕпром было вот что…(см. скрин)
А после прошивки опять то же сообщение, описаное выше.
З.Ы. РХ ТХ менял местами - ноль реакции…

Rover

фигня у вас творится какая-то непонятная…
то, что пишет типа “programmer is not responding” это вы могли неправильный COM порт в настройках ардуино указать.
Даже если просто провод воткнуть в другое гнездо USB компа, номер COM порта может измениться и его надо будет указать заново.
С компиляцией прошивки полная чушь. Как это “скетч использует 906 байт”? что-то вы с исходниками прошивки накрутили.
Давайте-ка, удалите нафиг все исходные файлы прошивки, скачайте заново с сайта MW OSD и начинайте сначала.
Перед этим убедитесь, что стерли EEPROM правильно. В скетче для стирания не забываете прописать объем памяти 1024?
Вообще на данном этапе всё, о чем мы сейчас говорим, это чистое ардуино, безотносительно к OSD.

hike

Про вписывание обьема в мануале Юлиана ни слово (если я не оглох). Если можно/не сложно укажите, пожалуйста в какую строку и что вписать? В программировании я не то-что новичек, а ноль.
Насчет компорта - у меня всегда тока 1 и 4. Комп показывает, что устройство на 4м компорте ( не зависимо к какой юсб разьем воткнуто)

Rover

У разных микроконтроллеров разный объем памяти EEPROM. Надо взять за правило перед заливкой новых версий прошивки стирать EEPROM полностью, независимо от того, сколько использует прошивка. Чтобы избежать непонятных эффектов. Когда открываете стандартный скетч для стирания EEPROM, в нем по умолчанию прописано 256 байт. Для атмеги 328 это число надо исправить на 1024. Соответственно для меги 2560 на плате AIOP это число будет 4096. Рекомендую сохранить исправленный скетч, чтобы каждый раз не редактировать. После загрузи скетч срабатывает не мгновенно! Для полного стирания памяти на плате OSD требуется около 2 секунд. После окончания стирания должен загореться второй светодиод. Так должен выглядеть полный код скетча стирания EEPROM для OSD:

/*
 * EEPROM Clear
 *
 * Sets all of the bytes of the EEPROM to 0.
 * This example code is in the public domain.

 */

#include <EEPROM.h>

void setup()
{
  // write a 0 to all 1024 bytes of the EEPROM
  for (int i = 0; i < 1024; i++)
    EEPROM.write(i, 0);

  // turn the LED on when we're done
  digitalWrite(13, HIGH); // здесь зажигается светодиод после завершения
}

void loop()
{
}
hike

Вообщем , господа, дела такие. Оставлю тут - пусть висит и мож еще кому поможет. С купленной на бангуде фигней и осд мучался неделю и выносил мозг ув. Rover. Прошить не получалось ниикак.
Опытными путями было выяснено:
1)При прошивке использывать прогу Ардуино 1.0.5
2) У этого переходника бангудовского перепутано rx и tx. Тоесть при подключении подключать наоборот.
И вот с этим рецептом все работает.
Сыыль на переходник с бангуда banggood.com/CJMCU-CP2102-USB-To-TTLSerial-Module-…
ниже его фото…

Низкий поклон и величайшая благодарность и +100500 в карму Rover за уделенное время и терпение!!!

З.Ы. в скетче использовался код для очистки eeprom

/*
* EEPROM Clear
*
* Sets all of the bytes of the EEPROM to 0.
* This example code is in the public domain.

*/

#include <EEPROM.h>

void setup()
{
// write a 0 to all 1024 bytes of the EEPROM
for (int i = 0; i < 1024; i++)
EEPROM.write(i, 0);

// turn the LED on when we’re done
digitalWrite(13, HIGH); // здесь зажигается светодиод после завершения
}

void loop()
{
}

Rover
hike:
  1. У этого переходника бангудовского перепутано rx и tx. Тоесть при подключении подключать наоборот.

А вы точно уверены, что перепутано? Их ведь и надо подключать перекрёстно: Rx-Tx, Tx-Rx. Выход одной платы ко входу другой и наоборот. Это справедливо именно для последовательного порта (UART). Для интерфейса SPI при программировании например через USBAsp, подключаться надо с совпадением имен линий.