Есть MP3-плеер за 900 рублей и внезапно возникший вопрос "А можно ли его немного перепрограммировать под свой вкус?" Например, немного изменить режим воспроизведения, подкорректировать случайный плей, изменить назначения клавиш. Реально ли это сделать, имея, собственно, сам плеер и ноутбук? Если да, то куда копать? Может, кто-то занимался подобным и подскажет пару ссылок?
1. Вскрыть mp-3 плеер.
2. Переписать названия микросхем.
3. Найти даташиты на данные микросхемы. Определить, что из них контроллер.
4. Проверить возможность заливки/получения прошивки с mp3-плеера. Возможности защиты (к примеру - проверка подписанных контрольных сумм прошивки, перегораемые перемычки битов защиты)
5. В соотвествии с системой команд контроллера написать прошивку, либо если схема позволяет - слить прошивку, дизассемблировать дизассемблером для данного микроконтроллера, и дополнить своим кодом, затем обратно скомпилировать в бинарный образ для прошивки.
6. Если есть возможность - отдебажить код в эмуляторе.
7. Залить прошивку обратно.
8. Профит
Ну тут два варианта:
1) либо у плеера должна быть возможность кастомизации штатными средствами
2) либо открытый исходный код
Просто так перепрограммировать не опенсорсный проект вам никто не даст)
Хм, а разве я не могу изменить приобретенный продукт, как захочу, если в некоммерческих целях?
Ну и, даже если не могу, плеер небрендовый, обычный китайский клон другого китайского клона без экрана и четырьмя кнопками. Не все ли равно кому бы то ни было?
Дмитрий Лаврик: Скажем так - это возможно, но будет вам оооооочень дорого стоить. Будут затраты на снятие прошивки, ее reverse engineering, на перепрограммирование, сборку и заливку прошивки обратно. Плюс еще несколько испорченных плееров в процессе работы.
Дмитрий Лаврик: Если у вас на рука только плеер (нет исходников прошивки, или хотя бы незашифрованной прошивки с которой можно работать), и он не предоставляет штатных средств для вашей задачи - все примерно так и выглядит. Опыта конечно нет, понимание процесса есть.
Кнопки местами поменять еще можно - паяльником, а вот менять алгоритм - это заливать новую прошивку, новую прошивку надо создать, создать ее надо на основе существующей, а чтобы осмысленно менять алгоритм надо иметь не набор байт, а исходный код на С++ например.
Дмитрий Лаврик: Иногда, когда есть прошивка, средства для ее заливки и он не зашифрована (не подписана закрытым ключем, известным только производителю) бывает возможно найти и изменить картинки и надписи.
Без вариантов - дешовые плееры строятся на базе чипов MTK и имеют закрытый исходный код. Пару раз удавалось найти исходники без инструкций как из них получить прошивку.
Проще взять какой нибудь Orange PI One за те же 900руб - на него полно разных прошивок и программировать можно уже на популярных языках - таких как питон.