Всем здравствуйте, такая ситуация, собрал в середине июня ПК, и с самых первых дней во время более-менее требовательных игр в рандомные моменты происходит резкий перезапуск (Резко гаснет экран монитора, отключаются клавиатура, мышь, но подсветка компьютера (Вентеляторы, оперативная память) не перестаёт работать. Затем через секунд 5 происходит самая обычная загрузка Windows.) В просмотре событий пишет kernel power 41, однако этот код не даёт почти никакой информации. Я перепробовал всё что знаю: тесты в OCCT, victoria и другие, режимы гибернации и авто перезагрузки отключал, заходил в безопасном режиме, с 10 виндовс переходил на 11, потом эту 11 полностью переустанавливал с нуля, менял БП на старый, заведомо рабочий, оперативную память менял местами, ставил по одной плашке в первый и второй разьёмы (На моей материнке только 2 места под оперативу), ставил разные EXPO профили, полностью убирал их... В OCCT при полной нагрузке всего вылетов абсолютно не бывает, температуры в пределах нормы... Также есть один странный симптом, в Биосе первые несколько дней оператива отображалась с правильными названиями, но потом поменялась на две разные неизвестные фирмы, причём они прикреплены не к плашкам оперативы, а к ее слотам (при смене плашек местами и использования их по одной названия не меняются), фото прикреплю. Я НЕ ЗНАЮ ЧТО МНЕ ДЕЛАТЬ, ПОМОГИТЕ ПОЖАЛУЙСТА!!!
БП раньше стоял новый MSI MAG A550BN, потом поставил Б/У из своего старого ПК на 650 с сертификатом 80+ Платинум
Kingston 1 ТБ Внутренний SSD-диск (SNV3S/1000G)
Процессор AMD Ryzen 5 7500 f
Материнка Asus PRIME B650M-K
Все комплектующие новые (кроме пробного БП из старого ПК) и покупались либо через ДНС, либо через Ситилинк в Озоне
Ps: ПК чаще всего перезагружается в некоторых играх на ультрах, где не стоит ограничение ФПС, например Star wars Battlefront 2 перезагружает ПК за минут 15 - 30, а Fortnite на ультрах с DLSS с ограничением 60 FPS может как перезагрузиться несколько раз за день, так и не перезагружаться неделями, а вот в Marvel Rivals перезагрузок нет (также на ультрах 60 фпс) уже более 2 месяцев.
Pss: В оффлайн играх тоже перезапускается, но только в более менее требовательных, что то по типу Minecraft или Hollow knight Silksong никогда ПК не перезагружали
Если будут вопросы, спрашивайте, если сможете помочь, отблагодарю от всей души!!!
Если коротко, готов принять то, что купленной с рук карте хана. Но хочу разобраться почему.
Если не коротко, то играл на ней 2 недели. Снес старые дрова АМД, поставил самые новые от Нвидии через Экспириенс. Через неделю вылезли артефакты, проблемы с геометрией. Вылечилось заменой дров на такие же, переустановкой то бишь. Еще через неделю вылет и фриз, комп завис и пришлось перезагрузить. После перезагрузки комп работает - монитор не выдает изображение, не коннектится с видюхой.
Долго думал, догадался вытащить карту и вставить DP в мать - работает. Снес все дрова через DDU, вернул карту - работает. Поставил новые - не работает с ранее описанными симптомами. Повторил процедуру, поставил старые дрова от 21 года - заработало. Прогнал фурмарк минут 10 - температуры и производительность в порядке, ну на отвал точно не похоже. Но когда играю в игры - ловлю вылеты, но уже на рабочий стол, карта не "клинит", все работает нормально. Ошибка указывает на DirectX. Решаю снести винду, думал остались какие то остатки дров, которые не удалились DDU. Поставил винду 10, установил Драйвер паком стандартные драйвера и дрова Нвидии, с которыми карта более менее работала - НЕ работает. Сношу через встройку дрова с помощью DDU, оставляя комп без дров - карта НЕ работает.
Короче, что не пробую, сейчас даже на раб. стол не получается выйти, нет коннекта с монитором. Кто подскажет, может я кругами хожу и неправильно поступаю? Карта пашет как должна, но как будто капризная на дрова. Уже не знаю что ей надо.
Как будто бы все это работало раньше, когда это был мой основной спек, но сразу скажу что материнку купил на авито, проц видяха и бп у меня были остальное нулевое, докупил.
В чем суть проблемы то, включаю комп, все светится, крутится, спикер не подает сигнала, пробовал оперативу местами менять и слоты, на одной оперативе запускал, одно и то же. Грешу на цепь питания 24 пин, но до конца не хочется верить что это сломанная материнка. Прошу советов
Коротко - как я месяц делал игровую платформу в виде куба с нуля (и еще не доделал), побил некоторые рекорды по производительности дисплеев и был не рад исправлять ошибки проводками.
В июле мне предложили сделать светящийся кубик для игр — типа D16, чтобы светилась выпавшая грань. Заказчик испарился, но мысль засела в голове. Подумал — а что если не просто свет, а поставить дисплеи на каждую грань и упростить до D6? И вообще сделать из этого маленькую тактильную игрововую консоль. Такого точно никто не делал. И понеслось…
Первый концепт кубика
За месяц из простой идеи пока что получился полуготовый куб с проводками, но с рабочими основыми системами. Расскажу как это было — со всеми техническими проблемами и небольшими победами.
Проектирование и осознание масштаба
30 июля — день когда всё началось. Начал прикидывать техническую сторону: ESP32, акселерометр, 6 дисплеев по 240x240 пикселей. В теории выглядит просто — процессор, акселерометр, питание, экраны. На практике оказалось иначе.
31 июля — 1 августа — начало 3D проектирования. Проект зацепил серьёзно. 15 лет назад поступал в универ на программиста, чтобы делать компьютерные игры. И как то не заладилось. И вот через 10 лет выпадает шанс воплотить давнюю мечту.
Одна из первых итераций 3D модели
Обожаю этот ИИ рендер
Первые версии материнской платы для куба
Борьба с ограничениями железа
2 августа — первое столкновение с реальностью. Для нормальной картинки нужно хотя бы 25-30 FPS, но по предварительным расчетам упирался то в память, то в скорость передачи данных. Изначально планировал готовый модуль ESP32, но для буфера кадров памяти у него вообще нет.
Вместо линейника на плате появился DC-DC преобразователь и проц переехал на заднюю сторону платы
В итоге полдня переделывал плату, чтобы поставить ESP32-S3 с 8МБ PSRAM - оперативки (наш «огромный» буфер для кадров). Опять по старинке придется припаивать голый проц на плату.. Но зато какая мощь, во всех прошлых проектах такой памяти вообще не было.
3 августа - день, когда спроектировал все платы для заказа на заводе. Небольшой спойлер - наделал всяких ошибок подключения.. Ну хотя бы не критичных, не пришлось выкидывать платы в ведро.
Как выглядит кубик внутри. Только тут не показаны батареи.
В тот день открыл для себя возможности ИИ для кодинга и продумывания архитектуры проекта. Конечно, нейросети могут выдавать тысячи строк кода (как мне тогда и выдало).
Но лучше код делать по модулям и разбираться в том, что ИИ наваял. Половина кода может работать вообще не так, как хотелось.
Главное при должном понимании и подходе, ИИ очень помогает и ускоряет разработку ПО.
4 августа — а что если использовать ИИ не только для генерации кода, но и для картинок персонажей? Да запросто))) Для игр уровня железа этого куба, 2D картинки вполне будут работать.
Не самая лучшая идея просить ИИ сгенерить сразу несколько персонажей
А вот одного персонажа в определенном стиле и в 2х ракурсах - вообще отлично.
Первые тесты и корпус
5 августа — напечатал первый корпус для куба. Рамки вокруг экранов получились большие, но таков путь — железо диктует размеры.
Зато скругленные грани дают приятную тактильность и куб удобно крутить.
Реально очень удобно лежит в руке. Несколько дней с ним ходил, крутил в руках.
7 августа — начал программировать игровую архитектуру. Создание игр оказалось не таким как представлял. На кубик приходится писать вообще всё с нуля — ядро системы, драйверы, игровую логику. Хорошо что в универе учили основам системного программирования.
Еще один ИИ рендер =)
Сразу замахнулся на "локомотивные" игры — Diablo, стратегии. Но быстро понял реальность: маленькие экраны требуют переосмысления классических жанров. Disciples может с натяжкой и упрощением получится, а вот Героев 3 портировать скорее всего не получится — слишком много мелких юнитов на экране.
8-9 августа — чисто дни вайб-кодинга. Создать игровые движки с нуля это конечно идея.. Хотя бы нейросети помогают в понимании всех систем. Но по крайней мере основную архитектуру составил. В одиночку бы такое делал не день, а с месяц минимум.
Основная буйная идея - собирать игры как LEGO. Сделать несколько модульных систем, которые будут брать свои данные из специальных json-файлов.
А чтобы не писать вручную технические json-файлы, можно закидывать описание в ИИ, чтобы он подогнал всё под определенный формат.
И кажется, что если такая система будет работать - можно будет собирать игры разных жанров из базовых модулей достаточно быстро и просто.
Небольшое отступление. По образованию я ж айтишник (окончил факультет ПМиК). Нас учили именно программировать ядро систем. То есть все эти внутренние алгоритмы, ассемблер, математика (в один год было 5 разных направлений математики).
Но самое неприятное в программировании ядра - это скука при работе. Не видишь какого-то визуального явного подтверждения (обратной связи) по тому, что прогишь и кажется что занимаешься какими то бесполезными буковками на экране.
С этим я столкнулся в начале разработки прошивки куба. И сразу решил откопать какой нибудь экранчик, чтобы уже видеть хоть какие то картинки при работе.
Тестовый стенд и первые визуальные результаты
12-14 августа — вообще при любой работе стараюсь не изобретать велосипед.
Откопав старенькую плату от фризлайт лампы, подцепил к ней экран. Найдя в инете библиотеку графики EmberGL для ESP32, решил попробовать поработать с готовым решением.
Библиотека как старый жигуль из гаража - запустилась не с первого раза (особенно учитывая что её не обновляли уже 3 года). Пару часов пинания кода с помощью ИИ, и получился первый прямоугольник с градиентом и потом 3D. Там был пример с головой обезьяны на 4000 полигонов. И оно даже работало.. Но это прям максимум для ESP32. И причем без текстурирования.
Красивое 3D, но бесполезное..
Интересное открытие: операции с float выполняются процессором с той же или даже большей скоростью, чем с обычными целыми числами.
15-16 августа — работал над системой загрузки картинок и анимаций.
Идея: генерим картинку с персонажем. Делаем из него видео. Видео разбиваем на кадры, складываем на флешку, потом показываем по очереди.
Разбивка и удаление лишних кадров
Первый тест анимации на OpenGL как то оказался медленным..
Настоящее железо и первые результаты
17-19 августа — приехали экраны и тот самый проц с памятью.
Решил отойти от EmberGL в сторону простого самописного драйвера. То инициализация не та, то цвета неправильные, то порядок бит в той библиотеке.
Экран завелся не с первого раза. Зато какой прирост производительности новый проц дал с оптимизированным кодом чтения с памяти (+SPI 4line) и работе с PSRAM. Давайте посмотрим на эволюцию производительности нашего козлика из Diablo.
Обычный проц и медленное чтение с карты
Новый проц и быстрое чтение кадров с карты памяти
Реактивый козел))))) Новый проц и показ кадров из PSRAM
По замерам проца, последние видео это 20 и 90FPS соответственно. Убойная производительность конечно. Видел в инете тесты, там такие скорости обновления не выжимали в принципе)))
20-21 августа — раз у нас такой быстрый показ кадров, почему бы не показать что-то более интересное. Как насчет упрощенной физики жидкости и показа кино (только без звука)?
С последним пришлось немного помучаться. Обычный MP4 проц открыть не может, но с последовательностью BMP565 вполне справляется.
В статье пропускаю все технические сложности и работу с программированием. Главное же результат и какие то забавные моменты.
Например, на этапе с кино впустую потратил 4 часа, пытаясь разобраться в ошибке чтения файлов. А оказывается надо было поправить всего одну циферку при инициализации.
Cамое печальное, raw bmp весит прям очень много. На минутный ролик надо около 110мб.
Конечно можно заметить, что кино выглядит немного пиксельным и с провалами в тенях. Но это особенности сжатия исходного RGB888 в RGB565 для экрана. У последнего формата данных меньше градаций цветов + сжатие jpg сразу видно.
Платы, сборка и фиаско
26-29 августа — мне ранее говорили что видимые винты крепления корпуса не очень красиво и занялся этой задачей.
Решено сделать внутрянку куба на несущей раме, чтобы потом всё вставить в корпус и закрыть крышкой.
С первого раза конечно не получилось. Защелки надо печатать боком, чтобы нагрузка была поперек линий печати. Если гнуть по линии спекания слоев, оно просто отламывается.
Мой первый корпус на защелках
И корпус то это достаточно просто.. Напечатал и пробуй.
А что если читать кино не как bmp, а mjpg. Около дня ковыряния кода, и оно получилось. И главное весит копейки, около 6МБ на минуту, а не 110МБ+. И хитрый трюк - накидывать шум и легкое размытие на кадры, и так получается меньше пиксельности.
30 августа — наконец-то пришли подарки от китайского деда мороза))) Ну то есть новые платы.
Вот такое почти готовое приезжает с Китая. Заводская пайка, все дела =)
На память старый тестовый модуль и новая плата
Конечно сразу взялся за пайку проца и разъемов. Замучился конечно из-за двухсторонней пайки..
Главное, что процессор легко прошивается на новой плате, SD-карта работает. Выжал с карты 10 МБ/с вместо 8.3. Это ещё плюс 5-7 FPS для видео.
31 августа — ИНЖЕНЕРНОЕ ФИАСКО. Когда сказал вслух, что "новая разработка — это исправление недочётов" - накаркал проблему.
Колхозный проводной ад
Из-за большого количества подключённых пинов к процессору упустил, что надо ещё подключать линии включения экранов. Результат: ПРОВОДКИ, которые я ненавижу. Плата для меня — инженерная картина, где всё должно быть аккуратно. А тут проводки.. Но главное что работает. И всё исправляется хотя бы так, а не заказом новой платы и ожидания в месяц.
И под конец месяца поставил акселерометр, обновил прошивку и оно работает.
ЧТО ПОЛУЧИЛОСЬ ЗА АВГУСТ
Основная плата работает (проц, аксель, чтение с карты, дисплей)
Проводки вместо красивой разводки
Куб в полуразобранном состоянии
Игр пока нет, только тесты
Заложена основа для будущей программной системы
Корпус собирается на защелках
Открытия:
ИИ кардинально ускоряет разработку ПО
Железо и чужие библиотеки всегда преподносят сюрпризы
Проверять разводку плат три раза, а не один
Впереди ещё месяцы работы над прошивкой, играми и отладкой. Но основа заложена: железо работает, производительность неплохая, архитектура более менее продумана.
Предлагайте свои идеи, что хотели бы видеть из игр/приложений в кубике. У меня уже в планах змейка 6D, визуальная алхимия частиц, какие нибудь квесты. Очень хочется сделать мини Diablo / GTA2. И конечно что то простое точно будет - выдать число, или предсказание как magic 8-ball.
Также в далеком будущем есть планы перейти на ESP32-P4. Вот там прям вычислительная машина (для своего размера и потребления энергии). И возможно поставить звук, вибрацию, часы реального времени, экраны побольше..
А этом кубике еще на один проводок планируется пищалка - пассивный зуммер =)
И кстати, в моем TG-канале новые новости о проекте почти каждый день =)
1. материнская плата asrock x370 sli killer и процессор r5 1600 (rev. 1 2017) отлично работает и запускается
2. материнская плата ASUS prime b350 plus и процессор r5 3600 (rev. 2 2019) отлично работает и запускается
И ТАК ВЗБРЕЛО МНЕ В ГОЛОВУ ПОМЕНЯТЬ ПРОЦЕССОРЫ МЕСТАМИ
И получается что ни одна из сборок не запускается, то есть из ДВУХ рабочих компьютеров я получил страйк из НЕрабочих компьютеров на свою голову.
Вопрос как это решать пришел давольно быстро, после некоторых танцев со сбросом биоса и перебросом оперативной памяти, необходимо шить биос! В сборке номер 1. появляется камень мощнее и новее чем тот что стоял до этого 1600->3600 следовательно биос нужно обновить, с этим проблем нет никаких просто, ставим обратно 1600 накатываем прошивку, грузимся с флешки, обновляемся и меняем камень на новый 3600, и все прекрасно работает!
А вот со сборкой номер 2. все сложнее оказалось, просто так через 3zflash в уефи биоса нельзя откатываться в прошивках, полез на сайт чтобы найти прошивку которая мне нужна под процессор, оказалось что она аж на 3 года старше той что стоит сейчас, НО по аналогии со сборкой номер 1. я предположил что на последнем билде биоса на сборке номер 2. запуститься камень 1600, соответственно что я делаю, втыкаю в сборку номер 2 камень 3600 чтобы после обновления поменять его на 1600, даунгрейд по железу осуществить, с 3600->1600, накатываю последнюю прошивку от 24 года, комп на 3600 запускается, а на 1600 не запускается.
И так вопрос, как откатить биос на материнской плате асус до прошивки от 2017 года без использования программатора?