Моя записная книжка. Комментарии отключены из-за спама. Для вопросов используйте эту страничку

Позднее Ctrl + ↑

Замена Q6600 на Q9650

Q6600

# pveperf
CPU BOGOMIPS:      19200.72
REGEX/SECOND:      1214454
HD SIZE:           39.63 GB (/dev/mapper/pve-root)
BUFFERED READS:    261.28 MB/sec
AVERAGE SEEK TIME: 0.09 ms
FSYNCS/SECOND:     482.88
DNS EXT:           699.36 ms
DNS INT:           648.79 ms (timsa.ru)

Q9650

# pveperf
CPU BOGOMIPS:      23997.28
REGEX/SECOND:      1947088
HD SIZE:           39.19 GB (/dev/mapper/pve-root)
BUFFERED READS:    267.85 MB/sec
AVERAGE SEEK TIME: 0.07 ms
FSYNCS/SECOND:     614.74
DNS EXT:           973.98 ms
DNS INT:           984.37 ms (timsa.ru)

Q6600

# cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Core(TM)2 Quad CPU    Q6600  @ 2.40GHz
stepping        : 11
microcode       : 0xb6
cpu MHz         : 2400.094
cache size      : 4096 KB
physical id     : 0
siblings        : 4
core id         : 0
cpu cores       : 4
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl cpuid aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm lahf_lm pti dtherm
bugs            : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit mmio_unknown
bogomips        : 4800.18
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

Q9650

# cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 23
model name      : Intel(R) Core(TM)2 Quad CPU    Q9650  @ 3.00GHz
stepping        : 10
microcode       : 0xa07
cpu MHz         : 3000.000
cache size      : 6144 KB
physical id     : 0
siblings        : 4
core id         : 0
cpu cores       : 4
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 13
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl cpuid aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm pti tpr_shadow vnmi flexpriority vpid dtherm
vmx flags       : vnmi flexpriority tsc_offset vtpr vapic
bugs            : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit mmio_unknown
bogomips        : 5999.32
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:
 56   7 мес   linux

MQTT broker

Ранее использовал простенький mosquitto для IoT и прочего, но понадобилась интеграция с браузером — создать дашборд с отображением информации и возможностью отправлять команды, эдакий информационный киоск.
Клиента mqtt на JS я не нашел (браузерную версию). Ставить node.js и делать шлюз — вроде как лишняя сущность, костыль получается.
Зато в поисках нашел EMQX — брокер MQTT плюс возможность создания дашбордов и трансляции топиков через websocket.

Задача:

  1. Поставить EMQX параллельно действующему mosquitto, но на другие порты
  2. Настроить трансляцию mosquitto -> EMQX
  3. Переключить часть сервисов на EMQX и посмотреть на стабильность/совместимость
  4. Заменить mosquitto полностью.

Пока вижу подводный камень в виде SSL. Далеко не все устройства IoT в состоянии поднимать SSL.

 45   8 мес   esp8266   iot   linux   todo

Наливной пол

грунтовка ст17 (обеспылить обязательно!)
грунтовка миттельгрунд кнауф
демпфер на стены
тапки на шипах
игольчатый валик
ванна 90-95 литров

Нигде не использовал и не буду.
Наливной пол содержит в своем составе гипс, который и обеспечивает мгновенное застывание. Но этот гипс также очень боится воды — разбухает. Во всяком случае как минимум один такой случай я видел у «стройте с нами».

 49   9 мес   стройка

Сравнение SSD

Intel SSD 545S SSDSC2KW128G8
Тип флэш-памяти TLC 3D NAND
Скорость чтения 550 МБ/с
Скорость записи 440 МБ/с
Скорость случайной записи (блоки по 4 КБ) 80000 IOPS
Время наработки на отказ 1 600 000 ч
Суммарное число записываемых байтов (TBW) 72 ТБ
Поддержка технологий NCQ, TRIM, Поддержка секторов размером 4 КБ, Шифрование данных

Kingston SSDNow KC 128 ГБ SATA SKC400S37/128G
Тип флэш-памяти MLC
Контроллер Phison PS3110-S10
Скорость чтения 550 МБ/с
Скорость записи 450 МБ/с
Скорость случайной записи (блоки по 4 КБ) 87000 IOPS
Время наработки на отказ 1 000 000 ч
Суммарное число записываемых байтов (TBW) 150 ТБ
Поддержка технологий Поддержка секторов размером 4 КБ

Samsung 870 QVO 2 ТБ SATA MZ-77Q2T0
Тип флэш-памяти V-NAND 4-bit MLC
Контроллер Samsung MKX
Объем буфера 1000 МБ
Скорость чтения 560 МБ/с
Скорость записи 530 МБ/с
Скорость случайной записи (блоки по 4 КБ) 88000 IOPS
Время наработки на отказ 1 500 000 ч
Суммарное число записываемых байтов (TBW) 720 ТБ
Поддержка технологий TRIM, Поддержка секторов размером 4 КБ, Шифрование данных

 49   9 мес   ssd

Фанкойл на ESP32

Есть в наличии внутренний блок кондиционера Panasonic CS-F24DTE5, но, к сожалению, нет наружного блока CU-L24DBE5.

Два варианта.

  1. Искать в продаже внешний блок, это 15-45т.р. в зависимости от состоянии.
  2. Сделать фанкойл. Т. е. пустить по трубкам холодную воду, которой у меня в избытке.

Без внешнего блока электроника внутреннего не работает. Поэтому придется городить своё.

  1. Мозги для всего — ESP8266 ESP32 так как проводов я не заложил.
  2. Управление вентилятором — 3 реле High/Mid/Low.
  3. Реле, управляющее подачей воды.
  4. Реле включающее дренажный насос.
  5. Датчик уровня воды для дренажа.
  6. Опционально несколько датчиков температуры для контроля: на входе и на выходе воздуха, на входе и выходе воды.
  7. Опционально управление моторчиком, который двигает хлебало.
  8. Блок питания на 5 и 12 вольт (для электроники, реле, клапана, насоса).

Не забыть разрыв струи на слив сделать.

 83   10 мес   esp32   todo
 71   10 мес   diy   esp8266   электроника

ESP8266 NodeMCU V3 Lua

Готовые прошивки теперь компилятся в облаке вот тут: https://nodemcu-build.com/
Прошивальщик берем вот тут: https://github.com/nodemcu/nodemcu-flasher
Для работы с платой удобнее всего оказался https://github.com/4refr0nt/ESPlorer

При прошивке надо убедиться что со скоростью порта всё норм, я делал принудительно 9600, это чуть дольше, но без проблем.
Также момент, у меня после прошивки ESP8266 срала в порт мусором. Не знаю в чем было дело точно, но решил так:

  1. Компилим прошивку: к дефолту добавлял i2c, http, tsl2561. SSL/TSL не добавлял, размер больше, а разницы никакой и https не заработает.
  2. Заливаем её флэшером на адрес 0x000000
  3. Не закрывая флэшер указываем прошивку «INTERNAL://BLANK» и льем её по адресу 0x3FC000

Это всё справедливо для ESP-12/Е/F с 4мб памяти. Частота вроде бы 26,7МГц 40МГц.

p.s. Попробовал перепрошивать на скорости 115200 и с выставленной частотой 40МГц — тоже всё нормально. Иногда надо сделать пару перезагрузок.

 60   11 мес   esp8266

Управление P410 под linux

Утилита hpacucli сдохла, а hpssacli переименовалась в ssacli. Её и надо использовать.

Перечень команд https://gist.github.com/mrpeardotnet/a9ce41da99936c0175600f484fa20d03

На всякий случай копия основных.

Допустимые сокращения:
chassisname = ch
controller = ctrl
logicaldrive = ld
physicaldrive = pd
drivewritecache = dwc
licensekey = lk

Show available controllers

ssacli ctrl all show

Show controllers status

ssacli ctrl all show status

Show detailed controllers information

ssacli ctrl all show detail

Show controllers configuration

ssacli ctrl all show config

Rescan for new devices Useful after swapping disks in bays, etc...

ssacli rescan

Show all physical disks (or their status) (controller slot 0)

ssacli ctrl slot=0 pd all show
ssacli ctrl slot=0 pd all show status

Show all physical disks detailed information (controller slot 0)

ssacli ctrl slot=0 pd all show detail

Show logical drives (or their status) (controller slot 0, all or specific logical drive(s))

ssacli ctrl slot=0 ld all show
ssacli ctrl slot=0 ld all show status

ssacli ctrl slot=0 ld 1 show
ssacli ctrl slot=0 ld 1 show status

Show detailed logical drives information (controller slot 0, all or specific logical drive(s))

ssacli ctrl slot=0 ld all show detail
ssacli ctrl slot=0 ld 1 show detail

Show array information (controller slot 0, array A)

ssacli ctrl slot=0 array a show

Show array status (controller slot 0, all arrays)

ssacli ctrl slot=0 array all show status

Create new RAID 0 logical drive (controller slot 0, disk in port 1I:box 1:bay 1)

ssacli ctrl slot=0 create type=ld drives=1I:1:1 raid=0

Create new RAID 1 logical drive (controller slot 0, disks in port 1I:box 1:bay 1 and 2)

ssacli ctrl slot=0 create type=ld drives=1I:1:1,1I:1:2 raid=1

Create new RAID 5 logical drive (controller slot 0, diks in port 1I:box 1:bay 1 to 4)

ssacli ctrl slot=0 create type=ld drives=1I:1:1-1I:1:4 raid=5

Delete logical drive (controller slot 0, logical drive 1)

ssacli ctrl slot=0 ld 1 delete

Add new physical disks to logical drive (controller slot 0, logical drive 1, disks in port 1I:box 1:bay 6 and 7)

ssacli ctrl slot=0 ld 2 add drives=1I:1:6,1I:1:7

Add spare disks (controller slot 0, logical drive 1, array A, disks in port 1I:box 1:bay 6 and 7)

ssacli ctrl slot=0 array a add spares=1I:1:6,1I:1:7

Add global spare disks (controller slot 0, logical drive 1, all arrays, disks in port 1I:box 1:bay 6 and 7)

ssacli ctrl slot=0 array all add spares=1I:1:6,1I:1:7

Turn on/off blink logical drive LED (controller slot 0, logical drive 1)

ssacli ctrl slot=0 ld 1 modify led=on
ssacli ctrl slot=0 ld 1 modify led=off

Turn on/off blink physical disk LED (controller slot 0, physical disk port 1I:box 1:bay 1)

ssacli ctrl slot=0 pd 1I:1:1 modify led=on
ssacli ctrl slot=0 pd 1I:1:1 modify led=off

Modify smart array cache read and write ratio (controller slot 0, cacheratio 80% read/20% write)

ssacli ctrl slot=0 modify cacheratio=80/20

Show physical drive write cache status (controller slot 0)

ssacli ctrl slot=0 modify dwc=?

Enable/disable physical drive write cache (controller slot 0) Important: Because physical drive write cache is not battery-backed, you could lose data if a power failure occurs during a write process. To minimize this possibility, use a backup power supply.

ssacli ctrl slot=0 modify dwc=enable
ssacli ctrl slot=0 modify dwc=disable

Show status of smart array write cache when no battery is present (no-battery write cache option, controller slot 0)

ssacli ctrl slot=0 modify nbwc=?

Enable/disable smart array write cache when no battery is present (no-battery write cache option, controller slot 0)

ssacli ctrl slot=0 modify nbwc=enable
ssacli ctrl slot=0 modify nbwc=disable

Enable/disable smart array cache for certain Logical Volume (controller slot 0, logical drive 1)

ssacli ctrl slot=0 ld 1 modify arrayaccelerator=enable
ssacli ctrl slot=0 ld 1 modify arrayaccelerator=disable

Enable/disable SSD Smart Path (controller slot 0, array A)

ssacli ctrl slot=0 array a modify ssdsmartpath=enable
ssacli ctrl slot=0 array a modify ssdsmartpath=disable

Show spare activation mode

ssacli ctrl slot=0 modify spareactivationmode=?

Set spare activation mode

ssacli ctrl slot=0 modify spareactivationmode=predictive
ssacli ctrl slot=0 modify spareactivationmode=failure

Show rebuild priority

ssacli ctrl slot=0 modify rp=?

Modify rebuild priority

ssacli ctrl slot=0 modify rp=low
ssacli ctrl slot=0 modify rp=medium
ssacli ctrl slot=0 modify rp=mediumhigh
ssacli ctrl slot=0 modify rp=high

Erase Physical Drive (controller slot 0, physical disk port 1I:box 1:bay 1)

ssacli ctrl slot=0 pd 1I:1:1 modify erase

 92   1 год   hp   linux

Мне вас жаль

Эта фраза говорится, когда аргументов нет, а признать своё поражение очень не хочется. Является пассивно-агрессивной и выражает скрытое пожелание смерти. «Я бы вас убил, но не могу».

 94   2023   лурк
Ранее Ctrl + ↓