422 lines
28 KiB
Markdown
422 lines
28 KiB
Markdown
---
|
||
title: "🧰 t610: прошивка BIOS и тест памяти (memtest86+) — процедура"
|
||
aliases:
|
||
- t610 BIOS update
|
||
- t610 memtest
|
||
- memtest86+ флешка
|
||
- HP_TOOLS флешка
|
||
- UMA frame buffer t610
|
||
- обновление BIOS HP t610
|
||
tags: [family, tech, smarthome, t610, howto, bios, memory]
|
||
updated: 2026-09-17
|
||
related:
|
||
- '[[family/tech/t610-hang-investigation]]'
|
||
- '[[family/how-to/home-automation]]'
|
||
- '[[family/how-to/t610-backup-to-truenas]]'
|
||
---
|
||
|
||
# t610 — обновление BIOS и тест памяти (memtest86+)
|
||
|
||
> **Зачем:** HP t610 периодически зависает насмерть, помогает только сброс питанием. Из 4 ГБ памяти система видит 1.44 ГиБ — карта памяти от BIOS обрывается на `0x5e7fffff`, то есть память теряется **на уровне BIOS**, до ядра.
|
||
> **Что даёт эта процедура:** (1) проверка, сколько памяти видит BIOS и сколько поднимает из каждого слота; (2) поиск неисправной планки; (3) подъём BIOS с K30 v01.07 (2012) до актуальной; (4) правка UMA Frame Buffer — на t610 эта настройка крадёт до ~650 МБ памяти сверх номинала.
|
||
> **Родительская дока расследования:** [[family/tech/t610-hang-investigation]] — там формулировка задачи, факты момента смерти, что опровергнуто, кандидаты и приоритеты. **Эта дока — процедурная: как физически сделать тест памяти и обновить BIOS.**
|
||
> Связанные: [[family/how-to/home-automation]] (§3.1 RCU stall, §3.5 ограничения аддона, §3.9 память), [[family/how-to/t610-backup-to-truenas]]
|
||
>
|
||
> 🕐 **Статус 2026-09-17 (обновлено):**
|
||
> ✅ **BIOS-softpaq `SP71296` получен и распакован** — Alex скачал браузером, номер был неизвестен, теперь известен (§2.2).
|
||
> ✅ **Флешка записана** — `HP_TOOLS`, FAT32/MBR, структура `HP/BIOS/{Current,New}/K30_0120.BIN`, SHA256 сверен (§2.4).
|
||
> 🔴 **НО метод оказался НЕ ТЕМ:** каталога `ToolLess` в SP71296 **нет**. Структура восстановлена вручную из образа. **Основной путь прошивки для t610 — `DOS Flash`, не `ToolLess`** (§2.5).
|
||
> ⏳ **memtest86+ на флешку НЕ записан** — вторая флешка не выделена (§6).
|
||
|
||
> 🔴 **ГЛАВНОЕ ОТКРЫТИЕ СЕССИИ (по прошивке):** `Linux Flash` из softpaq **для t610 НЕ ПОДХОДИТ** — требует UEFI (`hpuefi` модуль), а t610 legacy BIOS. `HPQFlash` требует Windows. **Единственный рабочий метод — `DOS Flash`** (FreeDOS-флешка).
|
||
|
||
---
|
||
|
||
## 0. Что уже скачано
|
||
|
||
Каталог на Mac: **`~/Downloads/t610-bios-memtest/`**
|
||
|
||
### BIOS — `SP71296` (✅ получен, распакован)
|
||
|
||
**`~/Downloads/sp71296.exe`** → 7 065 776 байт, `SHA256 4fbd38875612f1c85822c10a1b36ea413415f0ad31e30ba955d142b715c5a898`
|
||
Распакован через `/opt/homebrew/bin/7zz x sp71296.exe` в `~/Downloads/t610-bios-memtest/sp71296/`.
|
||
|
||
```
|
||
TITLE: ROM Firmware for t610 Thin Clients (K30)
|
||
VERSION: v01.20 ← ПОСЛЕДНЯЯ (у Alex v01.07)
|
||
SP: SP71296 SUPERSEDES: SP70800
|
||
DATE: 2015-05-08
|
||
CATEGORY: BIOS
|
||
```
|
||
|
||
⚠️ **7zz, а не 7z:** на этом Mac стоит `/opt/homebrew/bin/7zz` (7-Zip 21+). `7z`/`7za` — **нет**.
|
||
|
||
Содержимое:
|
||
```
|
||
sp71296/
|
||
├── Bios Flash.htm (23 КБ, инструкция)
|
||
├── History.txt (5 КБ, история версий K30 — см. §2.1a)
|
||
├── How to Use.txt
|
||
├── K30.CAB (1.99 МБ)
|
||
├── SP71296.cva / SP71296.txt
|
||
├── DOS Flash/ ← ✅ ЕДИНСТВЕННЫЙ рабочий путь
|
||
│ ├── DOSFlash.exe (58 КБ, v1.15.01)
|
||
│ ├── FlshUefi.cpu (3.9 КБ) — ОБЯЗАТЕЛЕН рядом
|
||
│ ├── K30_0120.BIN (4 194 304 байт)
|
||
│ ├── DOSFlash.txt (ключи запуска)
|
||
│ └── README.TXT
|
||
├── HPQFlash/ ← ❌ нужна Windows
|
||
│ ├── hpqFlash.exe (1.47 МБ) + ROM.CAB (1.99 МБ)
|
||
│ └── HPQPswd.exe
|
||
└── Linux Flash/ ← ❌ требует UEFI
|
||
├── hp-flash-1.00-1_x86_64.tar.gz
|
||
├── hp-flash-1.00-1_i686.tar.gz
|
||
└── hpuefi-mod-1.0.3.tar.gz
|
||
```
|
||
🔴 **Каталога `ToolLess` НЕТ** — отсюда весь вывод про DOS Flash.
|
||
|
||
### memtest86+
|
||
|
||
| Файл | Размер | SHA256 |
|
||
|---|---|---|
|
||
| `mt86plus_8.10_i586.iso.zip` | 232 КБ | `a55c3a12b6c4d4f444df3e5213aa85045f2629eb0d56e98a06cc31ef1cda51b9` ✅ |
|
||
| `mt86plus_8.10_x86_64.iso.zip` | 234 КБ | `93530005d6ac6a85aa2a49c68604a43c25794ecccf796c4f8849a73a8001be9a` ✅ |
|
||
| `mt86plus_8.10.binaries.zip` | 221 КБ | `7e6c5162cb84ab959aeb9d13c9cfd6976b0dec3b34936b73820b20c55eb26c29` ✅ |
|
||
| `sha256sum.txt` | — | эталонные суммы (совпали с вычисленными) |
|
||
|
||
**Версия: memtest86+ `v8.10`** (релиз `2026-05-16`). Прямые ссылки (работают curl-ом, в отличие от HP):
|
||
|
||
```bash
|
||
BASE=https://memtest.org/download/v8.10
|
||
curl -sL -o mt86plus_8.10_i586.iso.zip $BASE/mt86plus_8.10_i586.iso.zip
|
||
curl -sL -o mt86plus_8.10_x86_64.iso.zip $BASE/mt86plus_8.10_x86_64.iso.zip
|
||
curl -sL -o mt86plus_8.10.binaries.zip $BASE/mt86plus_8.10.binaries.zip
|
||
curl -sL -o sha256sum.txt $BASE/sha256sum.txt
|
||
shasum -a 256 *.zip # сверить с sha256sum.txt
|
||
```
|
||
|
||
**Для t610 берём `i586`** — у него legacy BIOS (не UEFI), 32-битная загрузка. В v8.10 единый бинарник умеет и UEFI, и legacy, но **i586-образ — правильный выбор для этой машины**.
|
||
|
||
⚠️ **НЕ путать два разных проекта:** `memtest.org` = **memtest86+** (open-source, есть legacy-загрузка — берём этот). `memtest86.com` = **MemTest86** (проприетарный; текущая v11.7 — **только UEFI**, на t610 **не загрузится**; для legacy у них только старая v4).
|
||
|
||
⚠️ **BIOS-softpaq получен:** **`SP71296`** (K30 **v01.20**) — Alex скачал браузером вручную. Номер, который не удалось найти скриптами, теперь известен — см. §0.
|
||
|
||
---
|
||
|
||
## 2. Обновление BIOS
|
||
|
||
### 2.1. Текущая версия
|
||
|
||
```
|
||
BIOS K30 v01.07 07/27/2012
|
||
Плата: HP t610 WW Thin Client / 17E2
|
||
```
|
||
|
||
Смотреть заново: **F10** → `System Information`.
|
||
|
||
### 2.1a. 📋 История версий K30 — что даёт прошивка ЛИЧНО нашей проблеме
|
||
|
||
Из `sp71296/History.txt` (у Alex **v01.07** — пропущено **7 версий**):
|
||
|
||
| Версия | Что исправлено | Отношение к зависаниям / памяти |
|
||
|---|---|---|
|
||
| **1.04** | Initial System BIOS | — |
|
||
| **1.06** | **`memory module overtemp support`** (thermal protection) | 🔑 планка перегревается |
|
||
| **1.06** | Исправлено отображение модулей памяти в `F10 → System Information` (правильный номер слота и channel mode) | 🔑 нужно для диагностики |
|
||
| **1.06** | **Исправлены метки модулей в SMBIOS record 17** | 🔑 объём планок BIOS показывал неверно |
|
||
| **1.07** | ← **ТЕКУЩАЯ У ALEX** (`07/27/2012`) | |
|
||
| **1.10** | Bluetooth, 2D graphics, DisplayPort VBIOS, **устранён непреднамеренный сброс boot order в F10** | |
|
||
| **1.14** | 🔴 **`Optimize memory settings to improve the reliability of the memory system`** | 🎯 **ПРЯМОЕ ПОПАДАНИЕ** |
|
||
| **1.14** | `Fixed issue with Power button not functioning after power brownout` | 🎯 просадки питания |
|
||
| **1.14** | WES8 OA3, Stringent Password, PXE Allied Telesis | |
|
||
| **1.16** | Improved reliability of BIOS flash update. **`Allowed BIOS Config Utility to set UMA Frame buffer size`** | 🔑 та самая настройка памяти |
|
||
| **1.18** | Added **S3 support**, Broadcom 2-port fiber NIC, USB 3.0 port disable, USB keyboard on L2206tm | |
|
||
| **1.19** | Security updates (UEFI) | |
|
||
| **1.20** | Security updates (UEFI variables) — **рекомендовано HP** | последняя |
|
||
|
||
> 🔑 **Ключевой вывод:** у Alex **1.07**, то есть **НЕТ** ни `Optimize memory settings` (1.14), ни `memory module overtemp support` (1.06), ни исправления SMBIOS record 17 (1.06), ни возможности менять UMA через BIOS Config Utility (1.16).
|
||
>
|
||
> ⚠️ **Но ожидание осторожное:** в разборе parkytowers обновление до `1.20` **памяти не вернуло** (§3.1.3 родительской доки). Версия 1.14 «оптимизация памяти» — **кандидат**, не гарантия. Поднимать стоит и как гигиену, и как проверяемую гипотезу.
|
||
|
||
### 2.2. Скачать softpaq
|
||
|
||
**Страница драйверов:** `https://support.hp.com/us-en/drivers/hp-t610-flexible-thin-client/5226816`
|
||
|
||
⚠️ **HP блокирует скриптовые запросы** (`Access Denied` от Akamai). Качать **браузером вручную**.
|
||
|
||
✅ **РЕШЕНО 2026-09-17:** Alex скачал **`sp71296.exe`** (7 065 776 байт). Файл лежит в `~/Downloads/`.
|
||
|
||
### 2.3. Подготовить флешку
|
||
|
||
**Требования (критично):**
|
||
- Таблица разделов: **DOS/MBR**
|
||
- Раздел: **FAT32**, метка ровно **`HP_TOOLS`**
|
||
- Размер: 100 МБ достаточно
|
||
- ⚠️ Флешки >32 ГБ обычно в exFAT — **не работает**. Переформатировать в FAT32.
|
||
|
||
```bash
|
||
diskutil list external physical # найти флешку (external + physical!)
|
||
diskutil eraseDisk MS-DOS "HP_TOOLS" MBR /dev/diskN # ✅ проверено 2026-09-17 на /dev/disk29
|
||
```
|
||
|
||
> ⚠️ **Флешка была 61.5 ГБ — FAT32/MBR встал нормально.** Ограничение «>32 ГБ = exFAT» относится к заводской разметке, а `eraseDisk … MS-DOS` принудительно даёт FAT32. Работает.
|
||
|
||
### 2.4. Распаковать softpaq и разложить
|
||
|
||
⚠️ **`ToolLess` в SP71296 НЕТ** — но структуру можно собрать вручную: BIOS при `Update System BIOS from USB` читает `HP/BIOS/New/<VER>.bin`.
|
||
|
||
```bash
|
||
cd ~/Downloads/t610-bios-memtest
|
||
/opt/homebrew/bin/7zz x ~/Downloads/sp71296.exe -o sp71296 # ⚠️ 7zz, не 7z (его нет)
|
||
|
||
# разложить на флешку
|
||
V=/Volumes/HP_TOOLS
|
||
SRC=~/Downloads/t610-bios-memtest/sp71296
|
||
mkdir -p "$V/HP/BIOS/Previous" "$V/HP/BIOS/Current" "$V/HP/BIOS/New" "$V/HP/BIOSUpdate"
|
||
cp "$SRC/DOS Flash/K30_0120.BIN" "$V/HP/BIOS/New/"
|
||
cp "$SRC/DOS Flash/K30_0120.BIN" "$V/HP/BIOS/Current/"
|
||
|
||
# 🔴 ОБЯЗАТЕЛЬНО: убрать AppleDouble-мусор macOS
|
||
find "$V" -name "._*" -delete
|
||
rm -rf "$V/.Spotlight-V100" "$V/.fseventsd"
|
||
```
|
||
|
||
**✅ Записано 2026-09-17 на `/dev/disk29`:**
|
||
```
|
||
/Volumes/HP_TOOLS
|
||
└── HP
|
||
├── BIOS
|
||
│ ├── Current/K30_0120.BIN (4 194 304 байт)
|
||
│ ├── New/K30_0120.BIN ← BIOS читает отсюда
|
||
│ └── Previous/ (пусто)
|
||
└── BIOSUpdate/ (пусто)
|
||
```
|
||
`SHA256 efb2806d52a139a09739e06723a2698a4d0491d85eb45332e5464052915c02b6` — совпал с источником.
|
||
|
||
### 2.5. Прошить — ⚠️ ОСНОВНОЙ ПУТЬ: `DOS Flash`, НЕ `ToolLess`
|
||
|
||
🔴 **Разбор методов из softpaq SP71296:**
|
||
|
||
| Метод | Инструмент | Подходит для t610? |
|
||
|---|---|---|
|
||
| `HPQFlash/` | `hpqFlash.exe` + `ROM.CAB` | ❌ **нужна Windows** |
|
||
| `Linux Flash/` | `hp-flash` + модуль `hpuefi` | ❌ **требует UEFI** — t610 legacy BIOS |
|
||
| **`DOS Flash/`** | **`DOSFlash.exe` + `FlshUefi.cpu` + `K30_0120.BIN`** | ✅ **ЕДИНСТВЕННЫЙ рабочий** |
|
||
| ~~`ToolLess`~~ | — | ⚠️ **в этом softpaq отсутствует** |
|
||
|
||
🔴 **Почему `Linux Flash` не годится:** его README требует загрузить модуль ядра **`hpuefi`** (`hpuefi-load`) — это UEFI-интерфейс. У t610 `/sys/firmware/efi` **не существует** (проверено: legacy BIOS). Это **не** то же самое, что `flshuefi.cpu` в DOS-каталоге — там файл назван по UEFI-переменным, но работает из DOS.
|
||
|
||
**Прошивка через DOS:**
|
||
1. Сделать **FreeDOS-загрузочную флешку**
|
||
2. Положить в корень **три файла рядом**: `DOSFlash.exe`, `FlshUefi.cpu`, `K30_0120.BIN`
|
||
3. Загрузиться с неё на t610
|
||
4. Запустить:
|
||
|
||
```dos
|
||
dosflash :: обновить, если Setup-пароля нет
|
||
dosflash /f flshuefi.cpu K30 :: без запросов (K30 — семейство, из System Information)
|
||
dosflash /p <пароль> :: если Setup-пароль установлен
|
||
```
|
||
|
||
**Коды возврата DOSFlash:** `0` — ок · `4` — не открылся входной файл · `16` — неподдерживаемый тип системы · `44` — не открылся `flshuefi.cpu` · `45` — пароль/размер/размеры изображения.
|
||
|
||
⚠️ `DOSFlash.exe` и `FlshUefi.cpu` **обязаны лежать в одном каталоге**.
|
||
⚠️ «Windows command line is not supported» — только DOS/FreeDOS.
|
||
|
||
**Альтернатива (если DOS-флешку делать не хочется):** попробовать `F10 → File → Flash System BIOS → Update System BIOS from USB` с уже записанной `HP_TOOLS`-флешкой (§2.4) — структура `HP/BIOS/New/` собрана именно для этого. **Но без `ToolLess`-каталога с `.efi`-загрузчиками успех не гарантирован** — BIOS может не найти загрузчик. **Основной путь — DOS.**
|
||
|
||
### 2.6. Прошить (USB-метод, если сработает)
|
||
|
||
1. Вставить флешку в t610
|
||
2. **F10** → Computer Setup
|
||
3. `File` → `Flash System BIOS` → `Update System BIOS from USB`
|
||
4. Пойдёт **отсчёт 15 секунд** на отмену → дальше не трогать, не выключать
|
||
5. Обновление завершится и t610 перезагрузится сам
|
||
|
||
### 2.7. ⚠️ НЕОБРАТИМОСТЬ — прочитать до прошивки
|
||
|
||
```
|
||
ALERT: This BIOS includes critical updates. Once the system is updated to this
|
||
version, rollback to previous versions is restricted. This restriction
|
||
also applies to BIOS recovery files.
|
||
```
|
||
|
||
🔴 **После прошивки до 1.20 откат на 1.07 ЗАБЛОКИРОВАН — включая recovery-файлы.** Пункты «Flash Back Restrictions» введены с 1.19. **Решение принимается один раз.**
|
||
|
||
### 2.8. После обновления
|
||
|
||
- Обновление **может включить Secure Boot**. Выключить: `Security` → `Secure Boot Configuration` → **F10** → `Secure Boot: Disabled` → сохранить **F10**
|
||
- При первом бусте после смены Secure Boot попросит ввести **случайное 4-значное число** — это защита от тихой отмены Secure Boot, не ошибка
|
||
|
||
---
|
||
|
||
## 1. memtest86+ — флешка и запуск
|
||
|
||
### 1.1. Записать флешку
|
||
|
||
**Требования:** флешка от 100 МБ, **данные будут стёрты**.
|
||
|
||
```bash
|
||
# 1. Найти флешку — смотреть только physical, не disk image
|
||
diskutil list physical
|
||
# либо только внешние:
|
||
diskutil list external physical # ← пусто = флешка не подключена
|
||
|
||
# 2. Распаковать образ
|
||
cd ~/Downloads/t610-bios-memtest
|
||
unzip mt86plus_8.10_i586.iso.zip
|
||
|
||
# 3. Записать (⚠️ /dev/diskN — НОМЕР ДИСКА флешки, НЕ раздела, НЕ s1!)
|
||
diskutil unmountDisk /dev/diskN
|
||
sudo dd if=mt86plus_8.10_i586.iso of=/dev/rdiskN bs=1m
|
||
diskutil eject /dev/diskN
|
||
```
|
||
|
||
⚠️ `rdiskN` (raw) — в разы быстрее, чем `diskN`.
|
||
⚠️ **НЕ ОШИБИТЬСЯ С НОМЕРОМ.** На этом Mac внутренние физические диски: **`disk0`** (2 ТБ, APFS — система) и **`disk6`** (511.9 ГБ, `SanDisk512`, NTFS). Флешка — только среди `physical` **внешних**.
|
||
⚠️ В `diskutil list` **десятки `disk image` и `synthesized`** (симуляторы iOS) — их игнорировать полностью. Смотреть только строки `(internal, physical)` / `(external, physical)`.
|
||
⚠️ `diskutil list external physical` возвращает **пустоту**, если флешка не вставлена. Проверка перед записью — обязательна.
|
||
|
||
### 1.2. Загрузиться с флешки
|
||
|
||
1. Вставить флешку в t610
|
||
2. Включить, нажать **F9** → Boot Menu
|
||
3. Выбрать флешку в **Legacy Boot Sources** (не UEFI)
|
||
4. memtest86+ стартует сам, тест идёт автоматически
|
||
|
||
**Если F9 не ловится:** t610 часто грузится сразу в syslinux и игнорирует нажатия. Приём — на этом меню **Ctrl+Alt+Del** (перезагрузка), после неё F9/F10 срабатывает.
|
||
|
||
### 1.3. Что смотреть
|
||
|
||
- **Верхние строки экрана:** сколько памяти memtest нашёл и на каких адресах. Сверить с 1.44 ГиБ.
|
||
- **Errors:** должны быть **0**. Любая ошибка = планка неисправна, в строке будет адрес — по нему определяется модуль.
|
||
- **Гонять минимум 2–3 полных прохода**, лучше несколько часов.
|
||
|
||
### 1.4. Тест по одной планке
|
||
|
||
Чтобы понять, какая планка битая:
|
||
1. Снять правую боковую панель t610 → доступ к слотам SO-DIMM
|
||
2. ⚠️ **Отключить кабель питания и подождать ~30 секунд** — питание на модули подаётся, пока шнур воткнут
|
||
3. Вынуть **вторую** планку, оставить **первую** → memtest
|
||
4. Поменять местами → memtest
|
||
5. Так разводится: планка / слот / контакт
|
||
|
||
⚠️ **На HP t610 (не PLUS) на SO-DIMM обязателен thermal pad** — без него планка перегревается.
|
||
|
||
---
|
||
|
||
## 3. UMA Frame Buffer — настройка, крадущая память
|
||
|
||
**Путь в BIOS:** `Advanced` → `Device Options` → `Integrated Graphics`
|
||
|
||
| Значение | Что делает |
|
||
|---|---|
|
||
| **Auto** | 256 МБ при 4 ГБ RAM (128 МБ при 2 ГБ) |
|
||
| **Force** | Появляется параметр **UMA Frame buffer size**: 32M / 64M / 128M / 256M / 512M / 1G |
|
||
|
||
### Замеры parkytowers.me.uk (4 ГБ установлено)
|
||
|
||
| UMA Frame Buffer | Свободно памяти |
|
||
|---|---|
|
||
| Auto (256 МБ) | 2 607 496 К |
|
||
| 256 МБ | 2 869 640 К |
|
||
| **128 МБ** | **3 525 000 К** |
|
||
| 64 МБ | 3 590 536 К |
|
||
|
||
**Наблюдения автора:**
|
||
- 64 → 128 МБ: минус 64 МБ — логично
|
||
- **128 → 256 МБ: минус ещё ~650 МБ — «absurd», объяснения нет**
|
||
- Явный 256 МБ вместо Auto дал чуть больше — код инициализации Auto не выбрасывается полностью
|
||
- **Обновление BIOS до 1.20 ничего не изменило**
|
||
|
||
> 🔴 **Вывод: на t610 надо ставить UMA Frame Buffer = 128M или 64M.** При Auto теряется существенно больше, чем номинальные 256 МБ.
|
||
|
||
> 📌 **Гипотеза для нашего случая:** если BIOS сбросился в дефолт (жёсткое отключение питания при севшей батарейке CMOS), значение UMA могло уехать, и часть памяти «пропала». Батарейка на t610 — CR2032, доступ через левую панель.
|
||
|
||
---
|
||
|
||
## 4. Диагностический чек-лист (что снять в BIOS за один заход)
|
||
|
||
| Экран | Что смотреть | Зачем |
|
||
|---|---|---|
|
||
| `System Information` | версия BIOS, объём памяти | сколько видит BIOS |
|
||
| `Advanced → Device Options → Integrated Graphics` | значение UMA Frame Buffer | нестандартное значение = потеря памяти |
|
||
| `Storage → Device Configuration` | список устройств | проверка видимости железа |
|
||
| `Advanced → System Options` / Memory | **слот 1 и слот 2, объём каждого** | разводит: планка / слот / контакт |
|
||
|
||
⚠️ **Из SSH-аддона объём слотов не достать** — `/dev/mem` запрещён (`Operation not permitted`), `/sys/firmware/` пуст, `dmidecode` нет. Только BIOS или доступ к хосту.
|
||
|
||
---
|
||
|
||
## 5. Итог по памяти (факты)
|
||
|
||
- Установлено **4 ГБ**, оба слота заняты (`DMI: Memory slots populated: 2/2`)
|
||
- Система видит **1.44 ГиБ** (`MemTotal 1 475 788 kB`)
|
||
- e820 от BIOS обрывается на **`0x5e7fffff` = 1.48 ГиБ**
|
||
- **Потеря ~2.5 ГиБ происходит на уровне BIOS**, до ядра
|
||
- `MemFree` 16–18 МБ при ~1 ГБ в файловом кэше — **это норма**, не признак нехватки (см. [[family/how-to/home-automation]] §3.9)
|
||
|
||
**Гипотезы (не проверены):**
|
||
1. Планка отваливается (контакт / деградация) → тест по одной планке, memtest
|
||
2. UMA Frame Buffer в нестандартном значении → смотреть BIOS
|
||
3. BIOS не поднимает модуль → обновление BIOS
|
||
4. Батарейка CMOS села, BIOS сбрасывается при каждом отключении питания → заменить CR2032
|
||
|
||
---
|
||
|
||
## 6. 📋 Что сделано / что осталось (состояние 2026-09-17)
|
||
|
||
### ✅ Сделано
|
||
|
||
| # | Шаг | Артефакт |
|
||
|---|---|---|
|
||
| 1 | Найдена процедура обновления BIOS без Windows (3 источника) | §2, §8 родительской доки |
|
||
| 2 | Найдены прямые ссылки на memtest86+ v8.10 | §0 |
|
||
| 3 | **Скачаны 3 архива + sha256sum.txt** в `~/Downloads/t610-bios-memtest/` | §0 |
|
||
| 4 | **SHA256 сверены** — все три совпали с эталоном | §0 |
|
||
| 5 | Определена целевая версия для t610 (`i586`) и разведены два проекта memtest | §0 |
|
||
| 6 | Снят факт по дискам Mac: внешних физических **нет** | §1.1 |
|
||
| 7 | Инструкция записана в эту доку | — |
|
||
|
||
### ⏳ Осталось
|
||
|
||
| # | Шаг | Блокер |
|
||
|---|---|---|
|
||
| 1 | **Записать memtest на флешку** | 🔴 **Флешка не вставлена.** `diskutil list external physical` → пусто |
|
||
| 2 | **Скачать BIOS-softpaq** для t610 | 🔴 **Номер softpaq не установлен.** HP отдаёт `Access Denied` на скриптовые запросы. Качать **браузером** со страницы драйверов (§2.2) |
|
||
| 3 | Залить BIOS на вторую флешку (FAT32 + `HP_TOOLS`) | Зависит от п.2 |
|
||
| 4 | Снять 3 экрана BIOS (память / UMA / дата) | Нужен физический доступ к t610 (§4, §5.1 родительской доки) |
|
||
| 5 | memtest: прогон, затем **по одной планке** | Зависит от п.1 |
|
||
|
||
> 🔴 **Порядок, который имеет смысл:** сначала **3 экрана BIOS** (1 минута, ничего не разбирая — сразу показывает, видит ли BIOS 4 ГБ и что стоит в UMA). Только потом разбирать корпус под memtest.
|
||
> Проверка «сколько памяти видит BIOS» — **самая дешёвая и самая информативная**: она разводит «BIOS не поднимает планки» и «теряется после BIOS».
|
||
|
||
---
|
||
|
||
## Питфоллы
|
||
|
||
| # | Питфолл |
|
||
|---|---|
|
||
| 1 | `dd` на `/dev/diskN` **раздел** вместо **диска** — загубит не то. Писать в `/dev/rdiskN` |
|
||
| 2 | Флешка >32 ГБ = exFAT → **BIOS с неё не обновится**. Только FAT32 |
|
||
| 3 | Метка раздела **`HP_TOOLS`** обязательна для части моделей HP |
|
||
| 4 | Обновление BIOS может **включить Secure Boot** → HA не загрузится. Выключать сразу |
|
||
| 5 | t610 не даёт войти в BIOS с первого раза — **Ctrl+Alt+Del на syslinux-меню**, потом F10 |
|
||
| 6 | Из SSH-аддона SMBIOS недоступен — объём слотов смотреть **только в BIOS** |
|
||
| 7 | При снятии панели **отключить питание и подождать 30 с** — на модулях всегда есть напряжение |
|
||
| 8 | На t610 (не PLUS) **thermal pad на SO-DIMM обязателен** |
|
||
| 9 | `MemFree` 16 МБ ≠ кончилась память. Верные метрики — `MemTotal` и `MemAvailable` |
|
||
| 10 | 🔴 **HP Support (`support.hp.com`) блокирует скриптовые запросы** — `Access Denied` от Akamai EdgeSuite на `/wcc-services/rest/…`, пустой ответ на прямые curl. Скачивать **браузером вручную** |
|
||
| 11 | ⚠️ **`ftp.hp.com/pub/softpaq/` отвечает 200 на «угаданные» имена** (`sp70221.exe`, `sp60365.exe` отдаются) — но это **НЕ значит, что это BIOS для t610**. Без точного номера качать нельзя: получишь чужой softpaq |
|
||
| 12 | 🔴 **`diskutil list` на этом Mac забит `disk image`/`synthesized`** (симуляторы iOS, 20+ записей) — легко принять за флешку. Фильтровать по `physical` + `external` |
|
||
| 13 | ⚠️ **Два разных memtest:** `memtest.org` (memtest86+, open-source, legacy OK) и `memtest86.com` (MemTest86, v11.7 только UEFI). Для legacy BIOS t610 — **первый** |
|
||
|
||
---
|
||
|
||
## Связанные
|
||
|
||
- [[family/tech/t610-hang-investigation]] — **родительская дока:** формулировка задачи, факты, что опровергнуто, кандидаты, приоритеты
|
||
- [[family/how-to/home-automation]] — главный справочник по t610 (§3.1 RCU stall, §3.5 ограничения аддона, §3.9 память)
|
||
- [[family/how-to/t610-backup-to-truenas]] — бэкап конфигов t610
|
||
- [[family/tech/t610-bios-and-memtest]] — эта дока
|