Baychi OpenLRS - дружелюбная ЛРС с широкими возможностями )

Shuricus

По согласованию с Александром baychi предлагаю продолжить тут обсуждение его замечательной прошивки.

Baychi OpenLRS - открытый проект ПО совместимого с широким модельным рядом современного “железа” .
Базируется на исходных текстах Open LRS, KHA и исследованиях Александром baichy протокола Expert LRS.

Исходники находятся здесь - github!

Прошивка для передатчиков - Дневник.
Прошивка для приемников - Дневник.

Альтернативное руководство пользователя - Дневник.
Обзор железа для прошивки Baychi OpenLRS - Дневник.

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

Дружелюбной ЛРС я назвал потому, что позиция автора очень дружелюбна и открыта для предложений пользователей, что очень радует! 😃

Убедительная просьба, не обсуждать тут другие прошивки для ОпенЛРС, не умничать и не писать бессмысленные слова - “не реклама”!

Tahorg

А можно возможность передать набор каналов в цифре? SPI, I2C да хоть USART? Но не заниматься туда-сюда PPM генерацией.

Shuricus

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

baychi
Tahorg:

А можно возможность передать набор каналов в цифре?

Реализовани SBUS вход и выход - полностью цифровой, почти стандартный протокол.

Tahorg:

SPI, I2C да хоть USART?

Еще в режиме сателлита принятые пакеты через UART идут.

Tahorg

Чтоб подать сигнал из USB джойстика. SBus там надо сойтово эмулировать, а все остальное есть хардварное.

baychi
Tahorg:

Чтоб подать сигнал из USB джойстика.

Если джойстик не умеет PPM, по любому надо писать код с одной из сторон. Либо обучите джойстик PPM-у, либо SBUSe, либо добавьте поддержку джойстка (например через UART) в обсуждаемый проект -он ведь открытый. Я писать поддержку джойстику пока не планирую, у меня их нет, да и не люблю эти палки. 😃

Tahorg

Джойстик уж есть и читается, делается это платой STM32. У платы сей есть хардварные, а значит работающие через DMA, без использования ресурсов основного процесса вышеперечисленные интерфейсы (есть еще can, но для связи с Atmega328 он бесполезен). PPM тоже генерируется, как-то же я работаю со своей ЛРС. А вот SBUS прийдется генерировать софтверно, что уже не так хорошо.

Собственно поэтому я и спросил. Нет, так нет.

ССМ=
Shuricus:

Да.

Надеюсь схема без ошибок, начал свою печатку рисовать. Пищалка наверно не нужна в модуле?

LaPart

Проверяю ТХ и RX - в обычном режиме РРМ приемник не пишет статистику в епром, сама статистика идет S=0 все время, не увеличивается поминутно. 4 регистр установлен в “1”.

baychi

Минуту ждали? Приемник какого типа? Прошивка какая? Регистры покажите?

LaPart

приемник оранж с хк,

2=204 Freq Corr
3=0 Servo 150% strech num (1-12)
4=0 Statistics enable -----------------------------> Пардон, это я его уже переписал на ноль, была единица, все равно.
5=1 11 bit/10 ch mode
6=0 Discrete outputs mask
11=77 Hope F1
12=147 Hope F2
13=89 Hope F3
14=167 Hope F4
15=109 Hope F5
16=189 Hope F6
17=127 Hope F7
18=209 Hope F8
19=101 Beacon F (FF=disable)
20=6 Beacon Pmax (mWt): 0-1.2; 1-2; 2-3; 3-6; 4-12; 5-25; 6-50; 7-100
24=30 Beacon start time (sec)
25=75 SAW Fmin
26=210 SAW Fmax
28=4 PPM/SBUS mode 1st PWM chnl (1-8) [4]
40=3 RSSI type: sound(0)/level(1-99=average)
41=1 RSSI mode: level(0)/SN ratio(1)
42=0 RSSI over PWM(chan:1-12) 0-not use
прошивка, которая уже с SBUS, сегодняшняя, SBUS не применяю.

Тут уже не минута:
$RL5710 S=0 C=6 Rn=42
$RL5711 S=0 C=7 Rn=41
$RL5712 S=0 C=8 Rn=42
$RL5713 S=0 C=1 Rn=46
$RL5714 S=0 C=2 Rn=43, а S все на нуле…
==================
ПС Вроде stat.ino новый имеет отличие, остальное не бросается
if(Regs4[4] == 0 || sbusDis()) return; // if disabled

======================
Ой! Стартанул моторчик при выключении пульта (я забыл обозначить файлсейф!!!)

baychi

Так обмена-то нет. Дайте ей связь, запустится и статистика! (Если R4 != 0).

тигромух
ССМ=:

Надеюсь схема без ошибок,

Бытует мнение, что логические уровни RFM’ок ограничены 3.3в, а следовательно нужно либо питать мегу от 3.3в, либо городить согласование.
Автор openLRSngTX этого не знал и у него все запитано от 5в.
Впрочем, на практике все нормально работает и ничего не сгорает.

LaPart
baychi:

Так обмена-то нет. Дайте ей связь, запустится и статистика!

И со связью, и без связи статистики нет.
Убрал

LaPart:

|| sbusDis()

и пошла статистика при рег4 = 1. И со связью и без. Только без связи ессно только фс идут.

ССМ=
тигромух:

Бытует мнение, что логические уровни RFM’ок ограничены 3.3в, а следовательно нужно либо питать мегу от 3.3в, либо городить согласование.
Автор openLRSngTX этого не знал и у него все запитано от 5в.
Впрочем, на практике все нормально работает и ничего не сгорает.

Я в курсе, однозначно мегу буду запитывать от 3,3в, а РФМку от 5-5,5в. Думаю как правильно развести питание. У меня есть такие беки , он сделан из двух таких сборок на 5,5в.

Питание 5,5в на РФМку от сборки, далее 5,5в на стаб 3,3в.
Или стаб 3,3в питать прямо от 12в(липо 3банки)
Как правильнее сделать?😃

baychi
LaPart:

Убрал Сообщение от LaPart || sbusDis() и пошла статистика при рег4 = 1.

Ваша правда. Ошибочка там. Надо было написать || !sbusDis() или в самой функе sbusDis поменять true на false и наоборот. Второе правильнее - так как функ должна возвращать true, когда работа статистики может помешать sbus.

Проект поправлю и перекомпилю не меняя версии.

ССМ=:

Питание 5,5в на РФМку от сборки, далее 5,5в на стаб 3,3в. Или стаб 3,3в питать прямо от 12в(липо 3банки) Как правильнее сделать?

Разумеется лучше LDO-шку от 5 В. Зачем воздух греть и КПД уменьшать? 😃

тигромух:

Автор openLRSngTX этого не знал и у него все запитано от 5в. Впрочем, на практике все нормально работает и ничего не сгорает.

Shuricus узнавал у KHA. Он тоже не знает почему так получилось, но пока ни один из сделанных Хавков не сгорел. 😃
Хотя внутри RFM23BP, без всяких токоограничивающих резисторов стоит si4432, питаемая от 3.3 В, что видно на любом осциллографе.

тигромух
baychi:

Shuricus узнавал у KHA. Он тоже не знает почему так получилось, но пока ни один из сделанных Хавков не сгорел.

У Эдика хэнд-мэйд по той же схеме. Тоже работает без проблем. Хотя он и высказал мне уже свое “фи” за это 😦

F_R
тигромух:

Хотя он и высказал мне уже свое “фи” за это

Нуу, ты-то не виноват 😃 Хотя… 😁

Shuricus

Я так понял, альтернатива только мегу от 3.3 питать, что типа тоже не очень хорошо. Но видимо лучше, чем на РФМ 5В гнать?

Rabbit_Fly
Shuricus:

Я так понял, альтернатива только мегу от 3.3 питать,

А почему вы считаете что ее не хорошо питать от 3,3??

тигромух
Rabbit_Fly:

А почему вы считаете что ее не хорошо питать от 3,3??

Потому что это оверклокинг 😃

baychi

Сделал подробное описание на прошивку приемника.
Не знаю куда лучше выложить? В дневник не влезает, на github можно загрузить только plain text. 😦
Может кто-нить знает, как туда можно произвольный файл добавить?

Вордовскую версию временно выложил сюда: files.mail.ru/09F0C3E82DC1431D8B4D886E35DC3A1F