Разборка и ремонт посудомойки Candy CDCP6

Некоторое время назад (в январе! И только сейчас дошли руки до ремонта) у меня перестала работать посудомоечная машина Candy CDCP6 – во время очередного запуска начала сигналить о переливе – честно говоря, спустя несколько месяцев уже сложно вспомнить, что именно за звуки были. Как оказалось, машина у меня уже почти 6 лет (как раз 6 исполнилось на днях), так что про гарантию речь уже не шла.

Что ж, разбираем.

Читать далее Разборка и ремонт посудомойки Candy CDCP6

Скользящее окно в filters у ESP Home и переполнение

Заметка между делом.

Давно уже мигрировал код модуля контроля параметров сети главного щитка на базу ESP Home. В основном все работает, но какое-то время назад добавлял “красивости” – хотелось регистрацию максимальных значений мощности по каждой из фаз, суточный объем потребленной энергии и тому подобное.

Читать далее Скользящее окно в filters у ESP Home и переполнение

Автономка, v4: обновление

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

Читать далее Автономка, v4: обновление

Debian, Xen и большой initrd

Заметка между делом.

Столкнулся с тем, что на домашних серверах (на данный момент один обновил до Debian 13) стало мало места в /boot/efi. initrd занимал 47 МБ, что как-то неприлично много, особенно с учетом MODULES=dep в /etc/initramfs-tools/initramfs.conf.

Оказалось, что у xen-tools свое мнение на этот счет в /etc/initramfs-tools/conf.d/xen-tools: “To make the Dom0’s initramfs working inside DomUs, too, most modules need to be included”. В моем случае initrd из dom0 никак не использовался для domU, поэтому копировать все доступные модули в образ для dom0 было излишним.

Asus C60M1-i и 24 ГБ памяти

Не отходя от кассы” протестировал и одну из своих mini ITX-материнок на APU AMD C60, для которой официально поддерживается только 8 ГБ.

Всю ночь гонял Мемтест, без ошибок. Когда докуплю еще планок – проверю и на 32 ГБ.

Скорость обмена небольшая – 2,386 GB/s (с двумя планками получилось 2,645 GB/s). Но при достаточном объеме памяти вполне можно стараться компенсировать хилость процессора активным кэшированием всего чего только можно для каких-нибудь домашних применений – Home Assistant, сидбокс, ejabberd, веб-сервер с легкими сайтиками, etc.

Update 2026-04-18: AMD C60 видит и 32 ГБ ОЗУ:

AMD FX-8320 + DDR3 16 GB одной планкой

…а также поддержка >32 GB RAM.

Заказал себе такое счастье с Али – DDR3 1X16GB 1600 MHz. В свете возни с ИИ-хостом решил попробовать поискать и более емкие модули, чем имевшиеся 8 ГБ. Официально FX-8320 поддерживает максимум 32 ГБ (т.е., как раз только 8 ГБ модули). 16 я никогда в руках не держал и в хозяйстве таких не было. Решил провести эксперимент. Вышло около 32$ на распродажах.

И ведь таки работает. Прошел Мемтест как в соло-варианте, так и в паре с имевшимися Team’ами.

В отличие от Team с XMP на 9/9/9/24@1600, тут было только 11/11/11/27 для такой частоты. На 9/9/9/24 запускаться отказывались. НО. Что интересно, соло-модуль с Али давал чуть более высокую скорость (4,06 ГБ/с), чем соло-модуль с XMP (3,83 ГБ/с). Полный комплект Team в двухканальном режиме, конечно, давал ощутимый прирост – примерно 5,5 ГБ/с.

В общем, надо будет на следующих распродажах набрать себе еще таких модулей. Можно набрать внушительный объем (пусть далеко не новой и быстрой памяти) за относительно недорого и дать вторую жизнь старым платформам.

Update 2026-04-18: получил еще 3 планки. Все ок, FX-8320 корректно видит 64 ГБ ОЗУ:

И сразу после теста оказалось, что именно такие планки разобрали. Хотел еще парочку отдельно под C60 🙁

Экспорт переписки пользователя из MAM в ejabberd

В MySQL / MariaDB:

SELECT timestamp, created_at, peer, txt FROM archive WHERE username = 'USER' and txt != '' INTO OUTFILE '/tmp/USER.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '"';

Далее режем на отдельные файлы:

awk 'BEGIN {FS="\",\"";RS="\"\n"} {peer=$3; gsub(/\/.*|\+/, "", peer); gsub(/"/, "", $1); gsub(/\\\n/, "\n", $4); print $1, $2, $4 >> peer}' /tmp/USER.csv

Прямая замена ESP01 на ESP32 C3

Попалось на глаза, закину в заметки:

GPIO не совсем соответствуют (а чего было не сделать 1 в 1?) и цена не особо гуманна – 3-4$ – при том, что сегодня покупал “чистый” ESP32 C3 по 1,7$. Но мало ли, в каких-то случаях может быть полезно.

Debian 13, Ollama + OpenwebUI и Fluux Agent: заводим персональный AI в Jabber

Первый раз щупаю эту тему.

В целом, не так давно на слуху появился jabber-клиент Fluux Messenger – примечателен тем, что от Process One, разработчиков одного из самых популярных jabber-серверов. Как минимум, находится среди их репозиториев.

А еще там появился Fluux Agent. Роадмап многообещающий: на сейчас он уже может выступать интерфейсом к Ollama или работать с “облачными” сервисами; может работать 1 на 1 или через конференцию; выступать в качестве бота или компонента сервера. А в будущем планируется возможность сделать общение между такими ботами – федеративную AI-сеть.

Идеей заинтересовался; возможностью попробовать запустить локального AI-агента и посмотреть, на что оно вообще годно – тоже. Подсобрал по разным уголкам дома железо и решил развернуть все на нем. В ход пошла старая основа от NAS’а – Athlon 740 и 32 ГБ оперативки с той же материнкой, на которой все было установлено. А в качестве GPU-основы для вычислений – пара видеокарт от майнинг-ригов. Самыми мощными у меня в хозяйстве были Nvidia 1080TI с 11 ГБ памяти, пару из них и задействовал.

Читать далее Debian 13, Ollama + OpenwebUI и Fluux Agent: заводим персональный AI в Jabber

Nextcloud и отправка почты

Наконец-то спустя долгое время наткнулся на решение проблемы отправки почты через простенький локальный почтовик. Что-то “сломали” или переделали несколько версий назад, с тех пор попытка отправки тестового письма в веб-интерфейсе выдавала ошибку. Полез в логи – при настройке None/StartTLS NC таки ломится на почтовик со StartTLS, после чего обламывается.

Закидываем в config/config.php такое:

  'mail_smtpstreamoptions' =>
  array (
    'ssl' =>
    array (
      'allow_self_signed' => true,
      'verify_peer' => false,
      'verify_peer_name' => false,
    ),
  ),

Заметки обо всем