Альтернативная прошивка к FlySky/Turnigy/I-Max/Eurle (Кодер Fokus-a - MSV)

Вячеслав_Михеев
Catsw:

Ну не всем нужно столько, плюс ещё ЕЕПРОМ вешать.

я так понимаю Алексей поддерживать прошивку без дополнительного ЕЕПРОМ не будет пока)))) так как они уже слишком разные и много изменений

да и потом епром дешевля чем менять мегу с 64 на 128, да и 128 уже дефецит

metronom
sslobodyan:

Эх, ковырялся сегодня с программатором 5 проводков на ЛПТ. Начитавшись темы, решил напрямую без резисторов паять. Посмотрел на фотки топикстартера и не учел, что там турнига версии 1, а у меня версия 2. Мааахонькое такое изменение рисунка дорожек. И я вместо того, чтобы посчитать ноги, паяюсь как по рисунку на ножку справа от контактной точки. В результате попадаю не на 11 ногу, а на 10. Результат плачевный. Мега тихонько умерла. Резюме - не доверяйте рисункам. Обязательно посмотрите схему и внимательно считайте ноги. Теперь озадачился поиском новой меги 64 и попутно вопросом - а не припаять ли мне сразу 128 мегу? Цена практически та-же, а прошивку все равно буду стороннюю ставить.

При программировании меги проверь что бы все переключатели были “от себя” - на MISO/MOSI тумблера висят то 😃

Andrej100:

по схеме порты G-42 и C-35

Я просто не заметил что у меги не две свободных ноги а больше - думал как раз на свободных( двух) висит EEPROM - значит как минимум парочка ЕЩЕ есть .

Catsw
Вячеслав_Михеев:

да и потом епром дешевля чем менять мегу с 64 на 128, да и 128 уже дефецит

На вкус и цвет фломастеры разные 😃 Он спросил - я рассказал.

sslobodyan

Разобрал турнигу полностью. Главную плату вытянул на стол. Отключил все, даже дисплей. Проверил под лупой на козу - ничего не увидел. Сопротивление между +5 и землей около 22 ом. Ток потребления схемы - около 200ма без переферии и ВЧ-блока. Знаю, что это слишком - кренка греется и мега тоже. Проверил на КЗ на землю все ноги меги - коротят только нужные по схеме. Проверил на КЗ по питанию - подключены только ноги как по схеме. Если бы был пробит порт меги - я бы его таким образом нашел? Тыкнул осциллографом на ноги кварца - там тишина. Кварц молчит. Может мега как-то перепрограммировалась на внутренний генератор? Но тогда она бы шевелила хоть какой-либо ногой. А она молчит. Ресет на +5. Все, идеи закончились. Придется отпаивать мегу, а ведь под ней подложка дисплея 😦

jonison

ищи где-то соплю или какую-то ногу на землю положил
на 10й ноге нет никакого криминала
если ничего не найдешь попробуй при снятом питании подать на 10ю ногу 5в (знаю что жестоко но мне несколько раз такое помогало)
может диод защитный пробит

Catsw
sslobodyan:

Сопротивление между +5 и землей около 22 ом.

Есть коза.

sslobodyan:

Знаю, что это слишком - кренка греется и мега тоже.

Греться не должны вообще, если всё отключил 😦

sslobodyan:

Если бы был пробит порт меги - я бы его таким образом нашел?

Пробит может сам кристалл - спёкся всмятку. Попробуй поднять ноги АТМеги с земли :
logic-bratsk.ru/radio/micro/…/atmega64_64.jpg
Если коза уйдёт - кристалл ёк. 😦 😦

sslobodyan:

Тыкнул осциллографом на ноги кварца - там тишина.

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

sslobodyan:

Придется отпаивать мегу, а ведь под ней подложка дисплея

Он съёмный, но ничего криминального, если не утюгом паять.

sslobodyan
jonison:

ищи где-то соплю или какую-то ногу на землю положил

Звонил все ноги на землю. Звонятся на землю только 22, 63, 53. Вроде как по схеме.

jonison:

попробуй при снятом питании подать на 10ю ногу 5в (знаю что жестоко но мне несколько раз такое помогало)

Юра, каков магический смысл сего действия? Не подключая питания подать +5 на 10 ногу и куда дальше смотреть? А если коза где-то в другом месте, то эти 200ма пошуруют через защитный диод 10 ноги и уложат его? Объясни пожалуйста.

И если можно, свяжись со мной в скайпе Sergey Slobodyan

jonison
jonison:

на 10й ноге нет никакого криминала

посмотрел на схему оказывается есть это выход ррм и на него тоже выход тактовой подал так что процентов 99 мега в помойку:(

sslobodyan:

Юра, каков магический смысл сего действия? Не подключая питания подать +5 на 10 ногу и куда дальше смотреть? А если коза где-то в другом месте, то эти 200ма пошуруют через защитный диод 10 ноги и уложат его? Объясни пожалуйста.

да смысл именно в этом если диод целый то от встречных 5в ему ничего не будет
а если полудохлый то догорит в обрыв

Catsw
sslobodyan:

Звонил все ноги на землю. Звонятся на землю только 22, 63, 53. Вроде как по схеме.

Их то и надо отпаять, тонкая иголка + паяльник с не очень толстым или обпиленным жалом - в общем, не так страшно.
Если после этого КЗ уйдёт - кристаллу ёк, но раз остальные ноги не звонятся, а кристалл греется - то сорри, чудес не бывает 😦
Разве что магию Юры попробовать - то же не так сложно, но ИМХО бессмысленно - вот если бы по 10й ноге текло - тогда да, можно попробовать бы было.

jonison:

посмотрел на схему оказывается есть это выход ррм и на него тоже выход тактовой подал так что процентов 99 мега в помойку

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

jonison
Catsw:

На ней так же и вход ППМ

нет вход 9я нога
там еще один чип есть 4066 набор ключей можно ее поднять

sslobodyan
Catsw:

Ты аппу от чего запитывал, когда шил? Важен правильный ответ, вспомни!

Ну сначала извините за неправильную вводную - не в ту сторону ноги посчитал. Тактовую я подал не на 10, а на 12 ногу, что теоретически вроде не смертельно. Запитывался я от трехбаночного аккума +11,6 вольт. Шить пытался через UNIPROF avr.nikolaew.org/progr.htm . Когда мега не откликнулась, я попытался подергать ногами через программатор. И вроде после подергивания Ресетом мега больше не стартовала. До подергивания несколько раз пытался подключать-отключать колодку, мега всегда стартовала стандартную прошивку. Так что на КЗ похоже мало, потому что между подключениями ничего не паялось.

Catsw
sslobodyan:

Запитывался я от трехбаночного аккума +11,6 вольт.

Тогда исключаем бросок при подключении. Долго писать, да и не оно это.

sslobodyan:

Когда мега не откликнулась, я попытался подергать ногами через программатор.

А это как? По одной отпаивали или что?

sslobodyan
Catsw:

А это как? По одной отпаивали или что?

В проге есть тест для ножек - переключает на секунду выход 1-0.
Короче, отпаял я земли - КЗ пропало. Значит точно дело в меге 😦 Ищу новый кристалл - ели есть у кого, то предлагайте.

Catsw
sslobodyan:

Короче, отпаял я земли - КЗ пропало. Значит точно дело в меге Ищу новый кристалл - ели есть у кого, то предлагайте.

В Одессе были, могу узнать.

Здесь есть 128е
www.k206.com.ua/index.php?p=price

Ещё здесь что то было, но сайт не открывается 😦

solder.com.ua

Catsw
Andrej100:

А вот сдесь есть и 64я

Блин, заработал 😃 Да, они по выходным не работают 😦

lomo
Aleksey_Gorelikov:

Что-то тема куда-то свалилась. Немножко поднимем и подогреем интерес.
Валялся у меня телефон Эриксон 2618… 24с256…

На моей помойке (видеокарточка) завалялась 24с168. А можно исходник разместить чтоб народ правил под свои находки? 20 моделей думаю тоже выше крыши 😒
Или при инициализации прога сама определяет какую епромку ей подсунули?

Aleksey_Gorelikov

нет, прога не определяет. Исходники? Уже не вижу смысла. Есть исходники в начале темы. Править под свои находки - народ не захотел. Если никто не присоединится к проекту в плане переделки меню, то исходники выкладывать для общего доступа не буду. Прилепить епром - ничего сложного нет:

Используем стандартную библиотеку.
#asm
.equ __i2c_port=0x15 ;PORTC
.equ __sda_bit=6
.equ __scl_bit=7
#endasm
#include <i2c.h>

Ну в начале проги i2c_init(); не забыть.

Запись-чтение - согласно даташиту:
unsigned char eeprom_read(unsigned int address) {
unsigned char data;
i2c_start();
i2c_write(0xA0);
i2c_write((address>>8) & 0xFF);
i2c_write((address) & 0xFF);
i2c_start();
i2c_write(0xA1);
data=i2c_read(0);
i2c_stop();
return data;
}

/* write a byte to the EEPROM */
void eeprom_write(unsigned int address, unsigned char data) {
i2c_start();
i2c_write(0xA0);
i2c_write((address>>8) & 0xFF);
i2c_write((address) & 0xFF);
i2c_write(data);
i2c_stop();
}

Ну и чтение структуры как-то так:
void MODEL_init(unsigned char ind)
{
unsigned char* p1;
unsigned int i;
save_trimmer();
cur_model_ind=ind;
p1=(unsigned char *)&cur_model;
for(i=0; i<sizeofmodel; i++)
*(p1+i)=eeprom_read(i+(ind*sizeofmodel)) ;

if (cur_model.timer_mode!=1) time=0;
else time=cur_model.timer_set;

}

Запись аналогично, только eeprom_write(i+(to*sizeofmodel), *(p1+i));

В страничном режиме - см. даташт на память. Но у меня какие-то глюки полезли. Наверно где-то сам накосячил. Сохраненная и счтитанная структуры иногда не совпадали…

ret

Всем доброго времени суток! Гуру, подскажите! Столкнулся с такой проблемой, аппаратура turnigy 9x на вертолете 3D, во время полета запищала предупреждалка в аппаратуре что аккумулятор на исходе. Сел, выключил аппу, поменял аккумуляторы, включил, взлетаю и понимаю что “лево-право” не работает, сел кое как, захожу в меню экспонент и двойных расходов(просто там есть графики) и при перемещении стика AILE (лево-право) вижу что линия, отображающая положение стика перемещяется как-то слишком медленно, и когда отпускаю стик - не возвращается в центр, а остается на месте, я снял этот эффект на видео, спустя минут 15 при включении уже этот эффект не наблюдался, но когда снова хотел полетать на следующий день, включил аппу - снова таже картина. Подскажите в каком направлении копать? Может с перем. резистором на стике какая проблема…но она проходит как-то внезапно… может в прошивке дело… Говорят - может аппа просто замерзла, но этот эффект и дома при +22 =)

ссылка на видео

ВитГо

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