четвер, 24 грудня 2009 р.

Новая клавиатура

На моем соневском очень удобная клавиатура, но очень уж характерная. В результате когда на работе набираю текст то на рабочей клавиатуре, то на ноутбуке, получается неудобно: после переключения с рабочей клавиатуры на ноутбучную некоторое время тарабаню по ней со всей дури. Поэтому практически с момента покупки ноутбука я искал себе подходящую по нажатию рабочую клавиатуру. Даже купил одну короткоходную, но оказалось совсем не то.
Практически такие же клавиатуры у маков. Я даже думал себе маковскую купить, но останавливало то, что в продаваемых у нас маковских клавиатурах Enter не горизонтальный (американский), а "ход конем" (английский), а в американских клавиатурах крайняя левая клавиша это какой-то ихний вариант Fn, а не Ctrl.
Летом как-то случайно увидел в магазине All in One компьютер от Sony, с которым шла беспроводная клавиатура точно такая, как надо. Но такие клавиатуры отдельно не продавались нигде (вообще нигде, не только в Украине).
И вот месяца 2 назад sony таки выпустил в продажу клавиатуру VGP-BKB1. Вот только в Украине о ней вообще не было (и до сих пор нет) никаких упоминаний, а в России есть только упоминания (но нет в наличии).
В результате подумав, посомневавшись, таки решился и заказал клавиатуру по интернету с доставкой со Штатов с оплатой по кредитке. Обошлось всё это дело в $147 - $83.75 сама клавиатура и $63.25 доставка со Штатов (почему-то дорогая доставка получилась). Да, сейчас нашел что в России на неё заявлена цена 4490 рублей (то есть те же $147, что я заплатил вместе с доставкой).
Заказ сделал 26-го ноября, 30 ноября магазин её отгрузил, 1 декабря она была отправлена мне из Бруклина. А дальше весело: судя по штампам на посылке в на моё отделение в Киеве она прибыла 9 декабря, а почта смогла донести мне в почтовый ящик уведомление о посылке аж 15-го декабря. То есть из Бруклина в Киев и полкилометра от почтового отделения до дома занимает практически одну и ту же неделю ;) Ну и еще на почте не смогли произвести кирилизацию моей фамилии, написанной на посылке транслитом, поэтому в уведомлении в поле "отримувач" написали просто "Микола". Когда забирал посылку то еще и пробовали возмущаться "как эти ваши американцы фамилии пишут что прочесть не возможно?", на что были посланы "фамилия написана точно так же, как и в загранпаспорте".
Вообще сами американцы очень хорошо относятся к почте и без всяческих сомнений доверяют им посылки. Об этом свидетельствует коробка:

Снизу это посылка, сверху это коробка с клавиатурой. Коробка с клавиатурой находилась внутри посылки, а все промежутки были заполнены запаяными целлофановыми пакетами.
Ну и вот как выглядит клавиатура на столе:

И в сравнении с ноутбуком:

Под freebsd завелась сходу с помощью bthidcontrol и последующего включения bthidd. Естественно до запуска bthidd она не работает, в связи с чем возник вопрос: а как на оригинальных компьютерах Sony заходят в биос с bt клавиатуры? Или там в efi прошыли поддержку bt клавиатуры?

четвер, 10 грудня 2009 р.

3G ExpressCard modem on FreeBSD

Итак, мною куплен HSDPA модем Novatel Merlin XU870. Под FreeBSD 9.x он без каких-либо вопросов распознался с помощью u3g(4):

Dec 10 16:00:29 laptop kernel: ugen5.2: at usbus5
Dec 10 16:00:29 laptop kernel: u3g0: on usbus5
Dec 10 16:00:29 laptop kernel: u3g0: Found 2 ports.

После втыкания появляются два порта: ttyU0.0 и ttyU0.1. Первый обычный AT порт, второй судя по всему порт для мониторинга и какого-то управления.
Через первый порт стандартно всё почти работает через ppp(8) обычными настройками как для мобилки. "Почти" потому, что umc додумался выдавать адреса на концы туннеля в стиле 95.109.188.33 -> 0.0.0.0 . В принципе вполне рабочая конструкция, но ppp офигевает от такого, ругается что не может выставить адреса на tun интерфейс и всё сваливается. Поэтому немного покопался и настроил через mpd.
В mpd всё получилось достаточно просто вот такой секцией в mpd.conf

hypernet:
create link static LHP modem
set modem device /dev/cuaU0.0
set modem watch -cd
set modem var $APN "hyper.net"
set modem script DialGprs
set link disable chap pap
set link accept chap pap
set link action bundle BHP
create bundle static BHP
set bundle links LHP
set iface addrs 0.0.0.0 !10.253.252.251
set iface route default

Плюс еще поправил штатный mpd.scripts: была добавлена секция

DialGprs:
set $DialPrefix "DT"
set $Telephone "*99#"
goto DialPeer

(хотя не думаю что это правильный метод - это можно было и в mpd.conf вынести), и добавлено определение и инициализация модема: после строки print "ATI\r\n" была добавлена строка match "+CGSM" ModemIdentGSM и описана Ident секция:

ModemIdentGSM:
set $ModemDescription "GSM modem"
set $ModemIsAnalog "no"
set $ModemSetupFunc GsmSetup
return
...
GsmSetup:
set $Baundrate 921600
set $modemCmd "+CGDCONT=1,\"IP\",\"${APN}\",\"0.0.0.0\",0,0"
call ModemCmd2
return

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

UMC криворукие?

СМС приходят с номерами отправителя в междугороднем формате (с нуля), вместо E164 ( +380... )

субота, 5 грудня 2009 р.

Пишу Вам с горящего танка...

Точнее с поезда Киев-Берлин. Нет, родину не покидаю, на границе выйду :)
Я один на купе и вряд ли уже кто-то будет подседать (не считая тетенек-контрабандистов, которые с Ковеля начнут загружать сигареты). Сначала был очень обрадован наличию розетки в купе, потом сразу обнаружил что же в этот раз я забыл: забыл дома шнур питания к ноутбучной зарядке. Так что насколько хватит зарядки, столько и будет.
Заодно тестирую купленный вчера HSDPA модем Novatel Merlin XU870
Карточка от Utel, собственно самого утеловского 3G покрытия нет, поэтому всё время работаю на роуминге от beeline (карточки utel автоматически переключаются в роуминг beeline если нету свой сети, при этом все цены остаются те же). Покрытие хреновое, часто пропадает (хотя следует признать что сам поезд идет такими огородами, что UMC/MTS тоже часто пропадает), там где есть, далеко не всегда EDGE.
Вобще utel порадовал тем, что в книжечке, идущей в комплекте со стартовым пакетом, про настройку интернета сказано "звоните оператору или идите на utel.ua" (ага ага, pkunzip.zip). В результате пришлось с ямобилки по umc-шной сети сходить таки на сайт и посмотреть настройки. Их оказалось аж целых одна: APN. Неужели нельзя было её написать в книжечке? И не надо мне рассказывать про то, что в следующей пятилетке APN у них может поменяться: во к следующей пятилетке далеко не факт что стартовый пакет вообще доживет, во вторых не смотря на то, что стартовый пакет был куплен весной этого года, в книжке все номера даны через восьмерку (и кому как не utel, дочерной компании ukrtelecom, знать о предстоящей смене нумерации).
Сам модем достаточно удобен, завелся легко, почти не мешает, только когда к Escape тянусь то иногда касаюсь мизинцем антены (не мешает, но вызывает опасения что когда-нибудь неосторожным движением отламаю её нахрен). Отображение покрытия (наличия и типа) разноцветным диодиком удобно, и по крайней мере днём совершенно не мешает (просто светится разными цветами, без подмигивания, подмигивание только при всяких инициализациях и ошибках)
Под FreeBSD пока что не завел. Сам модем без лишних вопросов опознается u3g(4), но со всякими строками инициализации пока еще не разбирался.

пʼятниця, 20 листопада 2009 р.

Двохвидеокартная система на vaio

Как я уже писал, в моём vaio (как и во всех z серии) стоит две видеокарты: NVIDIA GeForce 9300M и Mobile Intel Graphics Media Accelerator 4500MHD. Windows Vista умеет динамически (без перезагрузки) переключаться между ними: работать на intel когда нужна длительная работа от аккумулятора или на nvidia когда нужна высокая производительность графики и/или hdmi выход. Переключение делается специальным переключателем stamina<->speed на ноутбуке. Текущий режим работы отображается светодиодом возле переключателя.
Так вот работает это дело в тесном сотрудничестве с драйверами висты. Точнее даже не так: переключатель просто сообщает висте "надо бы переключиться", после чего виста правильно пинает всё на предмет переключения. Естественно под другими операционками это не работает, даже под Windows XP оно работает частично: необходимо перезагружаться чтобы переключение вступило в силу.
Под FreeBSD же в pciconf отображаются обе видеокарточки, но реально работает только intel. На переключатель реакции никакой, оба индикатора режима не светятся, и судя по всему электричество жрут обе видеокарты.
Но после гугления по всяким другим поводам была найдена тема на ixbt, а в ней ссылка на разлочку Intel VT и advanced menu в EFI bios. Собственно Intel VT пока что интересен только потенциально на будущее, а вот advanced menu оказалось очень полезным: в нём была найдена опция "Video swtiching" со значением по умолчанию "dynamic" и возможностью переключиться в "static" и "automatic". И вот после переключения в "static" видеокарты стал переключать bios в процессе загрузки в зависимости от положения переключателя. При этом включается нужная видеокарта, светодиод режима, во FreeBSD видно только одна выбранная видеокарта, и при этом работает и Intel, и Nvidia. Переключателем можно щёлкать и после загрузки, но это ничего не меняет - переключение видеокарт выполняется только при перезагрузке (что меня вполне устраивает).
При работе на nvidia xrandr кроме lvds и vga (видимых и на intel) так же показывает dvi1 и dvi2. Очевидно один из них это hdmi выход, второй не известно (возможно просто не разведен). Но сходу подключенный к hdmi порту монитор не определился: по xrandr оба dvi продолжают писаться как "not connected". Вероятно нужно еще что-то правильно пнуть чтобы включить hdmi выход.
Для упрощения нарисовал себе скрипт, определяющий при загрузке какая сейчас включена видеокарта и подсовывающий нужный xorg.conf:

# cat /usr/local/etc/rc.d/video
#!/bin/sh
#
# PROVIDE: video
#

. /etc/rc.subr

: ${video_enable="NO"}
: ${video_configdir="/usr/local/etc/X11"}

name=video
rcvar=`set_rcvar`

start_cmd="video_start"

video_start()
{
if ! checkyesno video_enable
then
return 0
fi
if [ -L "${video_configdir}/xorg.conf" ]
then rm "${video_configdir}/xorg.conf"
fi
if ( pciconf -lv|fgrep -q 'Intel Mobile Graphic' )
then
echo "Changing video to Intel"
ln -s xorg.conf.sony.intel "${video_configdir}/xorg.conf"
else
echo "Changing video to nv"
ln -s xorg.conf.sony.nv "${video_configdir}/xorg.conf"
fi
}

load_rc_config ${name}
run_rc_command "$1"

По оценкам FreeBSD на intel время автономной работы больше минимум на 40 минут, чем на nvidia. Но все-равно обещаных 3+ часа автономной работы против обещаных виндой 5 часов немного расстраивают. Думаю что виндовс вытягивает за счет яркости подсветки (которая у меня во FreeBSD на максимуме и не регулируется) и за счет отключения питания с неиспользуемых устройств (dvd привод, firewire порт)

неділя, 1 листопада 2009 р.

Intel WiFi Link 5100 AGN on FreeBSD

Благодаря стараниям Bernhard Schmidt мой нутбучный Intel 5100AGN таки заработал на current. За что ему огромное спасибо.
Сначала в пятницу после применения его последних патчей я смог практически всегда сканировать эфир (при соблюдении определенной последовательности загрузки модуля и создания интерфейса) и с переменным успехом подключаться к AP, а после патчей, которые я получил от него сегодня, всё стало вообще просто замечательно: особой последовательности соблюдать не надо, можно настраивать штатными методами и при этом всё нормально работает.
Для интересующихся и страждущих подробности в freebsd-net@ в ветке с Subject: Intel WiFi 5100/5300
Последних изменений пока что нет ни в HEAD, ни даже в рассылке. Но я думаю что в рассылке они появятся совсем скоро (например завтра) и после этого попадут в HEAD.
P.S. Это и предыдущее сообщение написано по wifi линку через этот самый iwn(4) :)

ata(4) в FreeBSD 8.0

В FreeBSD 8.0 и выше ata(4) разделен на отдельные функциональные и специфичные для вендоров модули. Если вы привыкли прописывать device ata в конфиг ядра, то ничего не изменится, так как device ata в конфиге ядра включит все vendor модули. Если же использовать подгрузку ata модулями (как делаю это я), то обязательно нужно подгружать и соответствующий vendor модуль (ataintel.ko , atanvidia.ko , atavia.ko etc), даже если обычный atapci нормально распознает контроллер.
Я уже два раза нарвался на последствия отсутствия vendor модуля:
- на рабочей станции с ide контроллером Marvell 88SX6121 UDMA133 controller не определялся dvd rw привод, хотя канал определялся
- на сервере с ich7 под нагрузкой пропадал диск со второго sata канала