Официальный сайт компании Arduino по адресу arduino.cc
Создать дубликат Arduino
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Есть две Arduino Mega и одна Arduino Uno
На одну Arduino Mega загружен огромный скетч, неважно что он делает, но исходника нет и нужно создать дубликат, то есть нужна такая же ардуинка с тем же скетчем. Я ведь правильно понимаю, что загрузив с этой ардуинки Flash и EEPROM на другую ардуинку я этого добьюсь?
В общем следуя вот этой статье на хабре сделал из своей arduino Uno программатор, подключил соответствующие порты, запустил SinaProg (немного модифицированный, см. в статье) загрузил с Arduino Mega файл с Flash памятью и EEPROM, затем подключил вторую Arduino Mega и на нее загрузил эти два файла. Всё прошло гладко, никаких ошибок, но работать ардуинка, на которую я всё загрузил, отказалась.
Вопрос, что я сделал не так и вообще может ли заработать то, что я тут описал. Какие данные нужны, чтобы мне здесь смогли помочь?
P.S. С ардуино опыта немного, а с программатором вообще первый раз дело имел.
P.S.S. Покупал ISP программатор, но он отказался работать. Гайды читал, дрова накатывал, софт разный качал, к разным компам подключал, в общем так и не заработало, наверное я криворукий
Если автор прошивки ее "залочил", то считать ее вы не сможете. Точнее, считать-то можно, только бестолку - ошибок при этом никаких не возникает, просто вместо прошивки считываются одни нули (или 0xFF) - точно не помню, но не суть, суть в том. что это не прошивка.
Попробуйте открыть те файлы, которые вы считали - в каком-нить HEX-редакторе. "Пустышку" от реальной программы отличить очень легко.
Хотя нельзя исключать, что дело не в залочке, а в том, что вы что-то сделали не так.
Исходника может не быть только в одном случае: ты кидаешь программиста.
Вот как ты сам думаешь - другие программисты побегут помогать тебе, задрав штаны?
Влад, не обязательно. У меня в корейских инкубах восьмая атмега в качестве мозгов (через нее и с Ардуиной познакомился). Если она гикнется, то отдельно прошивки нет и даже прошитого МК не продается ( а ведь за прошивку то я уже заплатил). На сервисе предлагается управляющая плата целиком, за 2/3 стоимости всего инкуба. Как то со стороны корейских погромистов тоже не очень приличное поведение, не?
Просто помогаю одному парню с одним коммерческим проектом. Где он эту плату достал - не знаю, но помочь вызвался
Да hex файл вроде и в текстовом редакторе нормально открывается. По виду не пустышка, да и ведь делаю это знакомому, а он заказывал у кого-то, чтоб ему помогли с этим и всё получилось (то есть точно не залочено), только бабок содрали ппц, вот ко мне обратился.
Ну, а что я мог сделать не так? Или какие данные я могу скинуть, чтобы кто-нибудь мог определить, что пошло не так.
Просто помогаю одному парню с одним коммерческим проектом. Где он эту плату достал - не знаю, но помочь вызвался
это уголовно наказуемое деяние.
Если бы я хотел защитить такой девайс не особо заморачиваясь, то проверял бы серийник МК на запуске основного процесса.
А что такое серийник МК?
У ATMega328PB можно считать Individual Serial Number. С той же области Signature Row я и у других 328-х читал данные, которые не повторялись на разных МК и не изменялись со временем. Однако в даташите на эти МК эта область никак не описана. Так что могу предположить, что в 2560 тоже можно поискать там же что-то более-менее уникальное.
Защита с использованием недокументированных особенностей?
Боюсь с "не заморачиваясь" это не очень совместимо. Впрочем, зависит в первую очередь от тиража.
Для штучного экземпляра - самое то. Считать его и проверить - дело десяти строчек ардуинокода, никаких там саморазворачивающихся в память образов, межсекторных меток на дискетах и всего такого, чем там спектрумисты и пр. товарищи защищались.