Rocksmith 2014 часть 2. Крафтим оригинальный кабель из *censored* и палок.


Конечно не такой красивый как на картинке, но главное функциональность. Со времен первой моей записи о данной игре прошло уже почти три года, и за это время на нее успело подсесть довольно много людей, в том числе с головой и руками. И так вышло, что после той записи карьера успешного гитариста в лице меня закончилась так и не начавшись из-за некоторых факторов. А тут недавно друг приобрел новый гх, с обновленной механикой и контроллером, но треклист меня не впечатлил, и на волне ностальгии я доплыл до роксмита вновь. К тому же за 3 года вышло некислое количество длц, среди которых есть треки моих любимых групп, чего так не хватало 3 года назад. Однако вспомнив ту боль, которую я испытал в попытках спокойно погамать на пиратке, было принято решение прощупать почву на наличие изменений, улучшающих теплоотвод пукана. И таки да, кое что годное было обнаружено. Заинтересованных прошу под кат.

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

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

Шли годы, ничто не предвещало беды, как вдруг неожиданно некоторая не последняя по близости мне личность обзавелась гх лайв, что и натолкнуло меня на поиски оригинального кабеля, а лучше двух, чтоб мультиплеер тащить (один из главных минусов пиратки собственно, он там физически невозможен). За 3 года новый оригинальный кабель с 2 килорублей за единицу вырос в цене до 4-х, но к сожалению моей зарплате не удалось совершить такой же потрясающий скачок в высь, поэтому вариант с покупкой нового оригинала снова мимо, несмотря на то, что он уже даже успел доехать до витрин моей деревни. Бэушные провода в этой стране за адекватные деньги почему то никто не продает, а не в этой стоимость бу + стоимость доставки с текущим курсом заставляет испускать лучи ненависти в сторону лиц, чьих имен не называют. Прям дежавю из первой части. На этом этапе можно было бы закрыть браузер, смириться с безысходностью, и с грустным лицом пойти бухнуть, но шило в правильных местах всегда дает свои результаты и трезвый выход был найден.

Упомянутый выше выходец из азиатской страны, он же автор хака (а может и не он, но так то первый кто об этом написал в массы), раскусил жадюг из убейсофт, и предложил рабочий вариант кабеля буквально из мусора. Мало того что это практически ничего не стоит, так еще и работает с оригинальной игрой на всех платформах. Скорее всего, как только данный хак достаточно сильно популяризируется в инэте, китайцы поставят эту дичь на конвеер, а разработчики будут пытаться прикрыть лавочку патчами, и начнется Классическая Великая Битва бобра с ослом. Ну а пока что наслаждаемся наработками людей, у которых еще остались ягоды в ягодицах.

Оригинальный кабель являет собой обычную USB звуковую карту, качество которой дотянуто до приемлемой игры со среднестатистической электрогитарой за 150 баксов, никаких нанотехнологий. Игра в свою очередь как то должна отличать кошерный оригинальный кабель от всякого шрота, который ей пытается подсунуть заботливый пользователь, и делает она это по VendorID и ProductID, которые с любовью зашиваются в железку при производстве. По этим и другим данным собственно сама ОС определяет что в нее воткнули и какие дрова подкладывать. И тут на помощь приходит нечто, напоминающее по функционалу USB звуковую карту, сделанное на замечательном чипе C-Media CM108. Замечательность его в том, что при помощи внешней EEPROM микросхемы он может выдавать себя за кого угодно, показывая системе те айдишники, что зашиты в микруху. Сделано это для нужд производителей, и успешно заюзано против них же энтузиастами. Цена девайса умиляет, на али его можно взять за ~1$. Однако не все cm108 одинаково полезны, бОльшая часть из них выполнена в виде черной лепехи на текстолите, такой вариант не подойдет для хака, т.к. припаивать пзу не к чему. Я остановился на этом исполнении, потому что небольшое исследование ютуба, в частности любителей обозревать всякий дешняк с алиэкспреса, показало что во всех остальных доступных из разных мест моделей используется лепеха а не нормальный чип. Заказал 2 штуки, я ж хочу мультиплеер. Может продавец годный, может мне просто фартануло, но через 14 дней(!!!) обычной почтой без трекинга(!!!) в декабре(!!!) я обнаружил у себя в почтовом ящике пакет с иероглифами, где и лежали два подопытных экземпляра:

Оставалось только раздобыть две eeprom микрухи и начинать ваять девайс. У товарища в оригинальной статье по тексту указана AT39C46, которую я пытался нагуглить пол часа, и удивлялся где же он такую редкую херню откопал. Оказалось что у него в тексте опечатка, и правильно AT93C46. Абсолютно случайно в процессе поиска даташита на нее нарвался на видос, где чел рассказывает что это мегапопулярная пзушка и 100% у тебя дома есть девайс в котором она стоит. И действительно покопавшись в электронном хламе на антресолях был найден древний модем с AT93C46 и какая то непонятная штуковина с релюхами и AT93C56.

Перед тем как припаивать пзу к чудоштуке, надо туда прошить инфу. Автор хака воспользовался для этих целей Arduino Mega, однако подойдет любая даже самая дешманская версия ардуины у которой есть 4 цифровых выхода. У меня в наличии была Uno, ее и применил. Прошивка предложенная тайландцем полностью самодостаточная, единственное что нужно будет поменять, это номера пинов ардуины в самом начале программы на те, в которые воткнуты пины пзу соответственно. Для этого надо взять даташит на пзу и посмотреть распиновку. В моем случае и у автора был такой вариант:

Код у него соответственно под Arduino IDE, работать во всяких avr студиях из коробки не будет. Легким движением паяльника к пзу были припаяны куски проводов, к кускам в свою очередь штырьки:

Ctrl+C, Ctrl+V, «загрузить» и как бы всё. Открываем монитор порта и видим как весело и успешно в пзу заливается необходимое. Монитор открывать в принципе не обязательно, сразу после заливки прошивки в ардуину, она и так должна отработать, но никому верить нельзя. С AT93C46 у меня отработало как по маслу, а вот с AT93C56 почему то на моменте записи первого блока процесс зависал. Я предположил что проблема в различающихся командах и даже предпринял некоторые попытки разобраться в чем дело. Но голова в этот день любви не хотела, и я просто пошел в магазин и купил еще одну 93C46. Купил как обычно не глядя, домой пришел, открываю пакет и вижу 14 ног вместо 8ми. С большим трудом удалось найти нечто похожее на даташит, в котором была распиновка этой заморской лабуды. Пришлось даже на форуме автомобильном зарегаться ради этого, оказалось что такие ставили в приборки:

Пины CLK=SK, Vss=GND, Vdd=Vc, остальные такие же как и у нормальной восьминогой. Довольно крепкая оказалось штуковина, когда в первый раз подключил к ардуине, перепутал полярность, и в какой то момент мне даже показалось что пошел дымок и пора одеваться идти за второй, но нет. Подрубил нормально и прошилась как ни в чем не бывало.

Теперь можно было браться непосредственно за скрещивание двух кусков кремния. Тайландец в своей статье предупреждает о том, что припаивать провода к ногам микросхемы в корпусе LQFP-48 если ты жопорук\с бодуна\владелец паяльника-топора занятие сомнительное. Несмотря на то что это не самое мелкое дерьмо, к которому мне приходилось припаивать провода, в какой то момент ценные вещи вокруг меня были в реальной опасности стать деформированными. Для таких работ я обычно брал провод мгтф, потому что у него оплетка не горит, но тот что был в сусеках оказался слишком толстым и пришлось принести в жертву 80пиновый шлейф IDE. Задача усложнялась тем, что прямо с нужной стороны микросхемы был заботливо установлен кварц, и подпаять провода нужно было к 4 ногам подряд. На первый экземпляр я без шуток потратил целый час в попытках осуществить задуманное. Чтобы это сделать понадобится жидкий флюс, тонкий пинцет, мультиметр и самое тонкое жало к паяльнику какое возможно достать. В случае отсутствия в наличии чего-либо из этого списка, дорогой читатель, твои шансы на успех близки к 0. Мультиметр нужен для проверки, что не спаялось между собой то, что спаянным быть не должно, а также, что нужное припаялось куда надо. В идеале еще бы и микроскоп намутить. На фото с камеры моей мобилы это выглядит как месиво из припоя, но по факту оно работает:

Первая версия выглядит, мягко говоря, не презентабельно, но после часа управления гневом было как-то сильно не до эстетики:


Питание было найдено путем прозвонки плюса и минуса с разъема на деталях, тут свезло, и на здоровом конденсаторе C3 оказалось то что нужно. Плюс ближе к чипу. Черная жвачка это термоклей, который я сначала нанес непосредственно на место пайки, а потом понял что все провода одного цвета. Ну ничего ничего, когда становишься жертвой своего идиотизма и осознаешь это, то не стыдно. Оторвал половину почти без повреждений, допаял обратно то что отлетело вместе с клеем, долил клея с другой стороны, чтобы в этот раз был доступ к контактам чипа, profit!

Втыкание в комп показало успех мероприятия:


Каноничной синей изоленты под рукой не оказалось, поэтому вундервафля была запакована в черную, во избежании незапланированного отделения запчастей. Второй вариант был сделан гораздо быстрее и выглядел лучше:


Казалось бы, вот оно всё готовое лежит, юзай не хочу. Пошел купил в стиме роксмит, втыкай да играй, но нет.

Купил роксмит за 800 колов, на следующий день понял что купил не тот, вернул обратно. Купил роксмит remastered за 170 колов (скидки, какая удача). Запускаю, втыкаю самопал, и о чудо, игра действительно видит его как родной. Всё ок, кроме одной мелочи — звука с него нет.

Посыпались обвинения и нецензурная лекисика в сторону винды, дров, гитары, кабеля до гитары, под разадачу попали все. Даже размотал один девайс и отпаял микруху пзу, чтобы убедится в ее невиновности. Воткнул обычный микрофон, открыл настройку устройств записи винды, шкала уровня не зеленеет, хоть во все горло ори. Покрутил настройки, попытался подсунуть дрова с оф сайта, всё без толку. Еще час жизни улетел на дебаг, и тут случайно заметил что когда вынимаешь штекер микрофона из разъема шкала таки дергается, значит вход работает, но что-то с ним не так. Рядом на столе валялся обычный 3.5мм джек, мой взгляд упал на него, потом на джек от микрофона, и тут пришло осознание масштаба идиотизма происходящего. Взглянем на фото и поможем Даше найти и казнить виновных:

Слева моноджек от микрофона (на гитаре тоже моно), справа обычный стереоджек. Чтобы понять суть 3.14здеца, нужно знать какой контакт за что отвечает. Если считать от конца штекера то 1 и 2 это условно плюсы левого и правого канала, а 3 это общий минус. В моно джеке аналогично, и чтобы при втыкании моноджека в стереодырку один из каналов не болтался воздухе, моноджек своей конструкцией замыкает этот канал на минус. И это простое элегантное решение уже десятилетиями служит человечеству. «Так какого буя оно не работает сейчас?» — спросишь ты, мой дорогой читатель. Самые догадливые из вас думаю уже просекли в чем подвох, остальным же я расскажу историю о том как в массовое производство ушел косяк проектировщика (а может и производителя, если тот решил сэкономить на комплектухе), который заставляет сотни людей, приобревших данный девайс, дезинфицировать кипятком стенки унитаза. А секрет то в том, что стереодырка со спаянными друг с другом Л и П каналами (мой варик) не равняется монодырке. Снова внимание на фото с джеками. В результате после проникновения моноджека в такой вариант стереодырки, оба канала оказываются замкнуты на минус, PERFECTO!

Справиться с человеческой тупостью в данном случае поможет нож. И кусачки. Путем частичного демонтажа лишних деталей получаем классическую монодырку:

Легким движением ножа выковыриваем мозг того кто допустил дынный косяк центральный контакт наружу и заматываем конструкцию обратно. Всё, Вы великолепны!

Теперь что касается качества данного прибора. Тестировал я на своем ноуте с процом 3630QM, на двух гитарах, среди которых одна из прошлой части, и одна нормальная. Чем мощнее проц тем меньшую задержку вывода звука с гитары удастся получить. Так вот с данным процом на стандартных настройках я не ощущаю наличие какой либо задержки в принципе. Запаса громкости достаточно, более того сама игра просит сделать гитару потише с помощью крутилочки на оной. В некоторых треках присутствует небольшой фон гитары в покое, но играть особо не мешает. Крайне упоротые индивиды типа меня могут изготовить нойзгейт из первой части и данная проблема должна уйти. Проверить эту гипотезу к сожалению не смогу, ибо в процессе хранения от моего экземпляра отвалился и исчез в подпространстве подстроечник, а второго такого у меня нет.

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

На этой радостной ноте можно заканчивать. Благодарности товарищам которые смогли дочитать этот бред до конца, а может даже и немного приподняли себе настроение. Особые благодарности тайландскому первопроходцу. Луч ненависти в сторону китайского косяпора. Тухлые овощи и вопросы жду в комментах. Всем добра! \m/
1 комментарий
Спасибо автор, очень интересно.
Скажи пжлст, можно ли обойтись без ардуино?
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.