пʼятниця, 28 вересня 2012 р.

Антена для 3g CDMA модема


Так сталося, що переїхали в село. Там, поки що, єдиний доступний варіант -- 3g CDMA. Без антени хоч якийсь сигнал був лише якщо вивішувати модема за вікно. Тому постало питання виготовлення антени. Спочатку зробив схожу на таку:
http://i-net.com.ua/index.php?option=com_content&task=view&id=118&Itemid=20
або тут http://netobzor.org/forum/index.php?topic=554.0
Працювала непогано, але віддав її товаришеві, який живе в сусідньому селі.
Собі зробив таку як тут:
http://netobzor.org/forum/index.php?topic=1059.msg11359#msg11359

Антена -- те, що треба! За даними AxesstelPst підсилення разом з 7 метрами 50-омного кабелю Vector не менше 14 дБ! Принаймні, модем за вікном дає максимум -89..-93 дБ, а антена -74..-76!
Пропускна здатність каналу -- 3 мегабіта в секунду. Правда, в середньому є 500 кбіт/с, але без обривів і підвисань. Вранці, буває, можна зловити і 2 мбіт/с.

Джерело: 6-елементна рамкова антена для 3g CDMA 859МГц

Джерело: 6-елементна рамкова антена для 3g CDMA 859МГц
На антену пішло:
 - 2 метри мідного дроту перерізом 10мм2;
 - кусок витої пари для того, щоб зкрутити між собою в потрібних місцях рамки перед їх спаюванням;
 - кусок коаксіального 50-омного кабелю;
 - конектор на кабель;
 - самий дорогий компонент -- перехідник для модема;

 - пара годин терпіння і пара плоскогубців, щоб з товстенного дроту вигнути рамки максимально близько до потрібних розмірів.

вівторок, 10 липня 2012 р.

Коряві шрифти в qt-додатках

Налаштування qtconfig не зберігаються.
Лікуєтсья видаленням пакунку fonts-nanum. Може можна ще якось, але в xubuntu 12.04  допомагає саме це.

неділя, 1 липня 2012 р.

Мережева смерть

Натрапивши на ось це Тайные профили, пароли-отмычки, "сливы" "органам" США и аморалка в компании "маленького императора" Цукерберга і давно маючи певні параноїдальні відчуття стосовно Інтернету, збираюся вчинити "Інтернет самогубство" -- іншими словами, знищити будь які дані про себе із Інтернет мережі. Мається на увазі, всі дані, за якими можна ідентифікувати особу. Боюся чим далі, то важче то буде зробити. І є сумніви щодо того, чи навіть сьогодні це на 100% реально.

До речі, з Facebooka я д-у-у-же давно звалив. Але ще донедавна оримував від них гадкі приставучі мила про "друзі просять повернутися" з пропозиціями відновити "знищений" профіль.

Інструкція, яка першою потрапила на очі: http://smashgods.com/2008/08/20/become-web-dead-erase-your-online-identity-in-10-steps/

вівторок, 26 червня 2012 р.

Як я запікав відеокарту

Дісталася мені глючна відеоплата Gigabyte GV-NX85T256H (NVIDIA GeForce 8500 GT 256 Mb DDR2 128bit). Несправність проявлялася в страшних артефактах у вигляді мозаїки на екрані зі смугами + підвисання системи.
Після пошуку по темі запікання відеоплат, перечитування різних рекомендацій і перегляду відео, вирішив спробувати собі. Спочатку спробував на старезній дохлій відеоплаті. Все пройшло, як задумувалося, тому я сміливо взявся за GForce.
Фотозвіт процесу і наслідків:

Все це робилося при навстіж відкритому вікні, бо запах печеної відеоплати не з кращих (окрім того шкідливий, хоч там і безсвинцева пайка)
Побачимо скільки протягне ця відеоплата після такої реанімації.

субота, 2 червня 2012 р.

Підсвітка синтаксису коду

http://softwaremaniacs.org/soft/highlight/
http://hilite.me/

пʼятниця, 1 червня 2012 р.

Lazarus. При використанні SQLite3Connection не зберігаються зміни



Кліпаю тут на дозвіллі програму базу даних членів церкви. Все чудово, але вона не хотіла зберігати внесені в записи зміни при використанні DB-aware компонентів (TDBEdit, TDBGrid і т.д.). Намучившися в пошуках баґа вже думав, що такий глюкавий TSQLite3Connection і думав прописувати всі запроси вручну. Але вчора знайшов простенький приклад і там все працює. При порівнянні, вияснилося, що якщо в Design-time в об’єкті SQLite3Connection встановити властивість Connected в True, та в відповідному SQLQuery Active в True, то база виявляється заблокованою і зміни не зберігаються. Як що ж зробити навпаки, то все чудово зберігається!

Ну і в події AfterPost об’єкта SQLQuery треба прописати щось таке:


procedure TForm1.SQLQuery1AfterPost(DataSet: TDataSet);
var bm: TBookMark;
begin
   try
     bm := SQLQuery1.GetBookmark;
     SQLQuery1.ApplyUpdates;
     if SQLTransaction1.Active then
     begin
        SQLTransaction1.CommitRetaining;
        SQLQuery1.GotoBookmark(bm);
     end;
  except
     SQLTransaction1.Rollback;
  end;
end; 

Підглянув ось тут http://professorcarlos.blogspot.com/2010/02/lazarus-acessando-banco-de-dados-com_24.html

середа, 25 квітня 2012 р.

Euro 2012 city cares about your dogs!

Dear animal lovers and Euro 2012  visitors!

Please do not worry about the fate of your cute nitty dogs. Here you can see one of the numerous nature reserves specifically created for them in Donetsk - one of the cities of Euro 2012. The best possible conditions for their happy and carefree life are carefully maintained in these ecosystems.
You can look at the exact address of this place to be able to visit your beloved animals.

And do not believe gossips supposedly they are not allowed to live here, in Ukraine.  Passersby allow to be bitten with joy and love. Even young children relate to them with understanding.
Aiming not disturb them people prefer not walk around in night times.

Even more testimonies about Ukrainian people's extraordinary sacrificial and patient attitude towards stray dogs.


For curiouse: Psinosrach (better read in Russian!)


Even more related videos

неділя, 8 квітня 2012 р.

Карта Пд-Сх Європи для Garmin

Карта з адресним пошуком (поки що до вулиці) з позначеними номерами будинків.
Дані карти -- з проекту OpenStreetMap.org


Країни:
Боснія і Герцеговина, Болгарія, Хорватія, Чехія, Угорщина, Італія, Косово, Македонія, Молдова, Чорногорія, Польща, Румунія, Сербія, Словаччина, Словенія, Україна, Ватикан
Буде корисна для всіх прибульців в Україну та Польщу під час Євро-2012.

Зкачати безплатно готовий файл карти Пд-Сх Європи IMG для GPS навігаторів Garmin.
gmapsupp.img
Просто помістіть цей файл в папку Garmin на внутрішній пам'яті пристрою або SD-карти (Ви повинні створити каталог Garmin, якщо його там немає).

Download free maps for Garmin GPS navigators. Based on OpenStreetMap.org project.
gmapsupp.img 
Countries included:

Bosnia and Herzegovina, Bulgaria, Croatia, Czech Republic, Hungary, Italy, Kosovo, Macedonia, Moldova, Montenegro, Poland, Romania, Serbia, Slovakia, Slovenia, Ukraine, Vatican City
It will be useful for all newcomers to Ukraine and Poland during Euro 2012.
 
Just put this file into Garmin directory on your unit's internal memory or SD-card (you are to create Garmin directory if it is not there).

Важливо! Для коректної роботи прокладання маршрутів потрібно зкачати і записати в пристрій в основну пам'ять базову карту світу (gmapbmap.img), остання версія на даний час: Garmin WW Autoroute DEM Basemap NR 5.01. Зкачати можна або на сайті Garmin, або деінде. Взагалі-то, вона вже має бути в пристрої, але не завжди актуальна.

Пошук по номерам будинків, можливо буде, якщо його генерування з'явиться в пізніших версіях mkgmap. Або можна вручну редагувати OSM за зразком http://4pda.ru/forum/index.php?showtopic=70509&st=1960#entry2032230 (що для величезних територій практично нереально)


Порядок створення. (Без розжовування)

Щоб не чекати годинами, поки відбудуться конвертування, можна тренуватися на невеличких країнах, або взагалі невеличких клаптиках, вирізаних програмою JOSM.

Для конвертації необхідно принаймні 1500 МБ вільної оперативної пам'яті. Також чим потужніший процесор, тим краще.

Визначити, яка теріторія має бути в карті (В прикладі це країни: 'Ukraine', 'Bulgaria', 'Poland', 'Romania', 'Republic of Moldova', 'Hungary', 'Slovakia').
Зкачати відповідні дані OSM в форматі osm.pbf наприклад звідси http://download.geofabrik.de/osm/ (я качаю всю Європу, тобто, http://download.geofabrik.de/osm/europe.osm.pbf  [7.6 Gb на момент 2012-04-01] ).

У випадку, коли потрібно лише якась одна країн, можна просто скачати відповідний osm.pbf і не обов'язково створювати файл OSM Poly. Також, напевне, можливо об'єднати готові файли кількох країн, але десь читав, що краще вирізати одним куском (щось пов'язане з навігацією і дублюванням ліній).

Створення OSM Poly для вибраної ділянки (лише для нестандартної ділянки).

Створити файл OSM Poly потрібної ділянки, якщо потрібна карта з нестандартним набором територій. http://wiki.openstreetmap.org/wiki/Osmosis/Polygon_Filter_File_Format за туторіалом http://oegeo.wordpress.com/2011/11/05/tutorial-poly/
 - качаємо Quantum GIS http://www.qgis.org/ і плагін OSM POLY export до нього.
 - качаємо дані кордонів країн http://thematicmapping.org/downloads/world_borders.php
 - додаємо векторний шар в Quantum GIS і вставляємо ці дані:

- вибираємо необхідний набір країн:
  ПКМ (права кнопка миші) по назві шару, "Запит" і створюємо потрібний запит:


 - результат:



- спрощуємо
Вектор Vector-->Обробка даних--> Буферні зони



"Додати результат до шару?" - "Так":


Вектор Vector-->Обробка даних--> Опуклі оболонки або, якщо потрібно точніше обмежити ділянку, користуємося іншими інструментами векторної обробки.


"Додати результат до шару?" - "Так":


 - експортуємо в OSM POLY
Потрібно виділити відповідний полігон і "Плагіни" --> Export --> OSM Poly, формат для ексорту ISO2.
Отримуємо файл .poly в папці з програмою Quantum GIS (вибрати директорію для збереження плагін не дає) з подібним вмістом:


Чудово! Тепер треба вирізати з файлу усієї Європи OSM-дані лише потрібної ділянки.
Для цього використовуємо  osmosis.jar (java) http://wiki.openstreetmap.org/wiki/Osmosis або osmconvert.exe http://wiki.openstreetmap.org/wiki/Osmconvert
Напр. Osmconvert:
  osmconvert.exe "j:\maps\europe\europe.osm.pbf" -B=soeseu\seu-op.poly -o=seu.pbf


Отримуємо потрібний pbf-файл.

Тепер, можливо, передостанній етап -- потрібно порізати цей величезний файл на дрібніші кусочки, щоб конвертер міг його переварювати..

Для цього є splitter.jar http://wiki.openstreetmap.org/wiki/Splitter

Я запускаю з такими параметрами:
java -Xmx1500m -jar splitter.jar --max-nodes=1000000 seu.pbf
 -Xmx1500m  -- дозволяю використати до 1500Мб ОЗП

Качаємо Mkgmap 
http://wiki.openstreetmap.org/wiki/Mkgmap,
http://wiki.openstreetmap.org/wiki/Mkgmap/help/How_to_create_a_map

Для того, щоб працював адресний пошук потрібні спеціальні дані адміністративного поділу. Можна скачати звідси http://www.navmaps.eu/index.php/developers/bound і розпакувати в папку bounds поряд з Mkgmap.jar

Також треба мати TYP-файл з іконками для POI
Його можна десь скачати, або виковиряти з готових карт. Напр. з цих, що тут  ftp://ftp5.gwdg.de/pub/misc/openstreetmap/download.openstreetmap.de/aio/ (до речі там є готові карти для заливки в Garmin, але без адресного пошуку наразі).
Виковиряти можна програмою GMapTool
Редагувати TYP-файли прогами TYPViewer або TYPWiz 2 http://www.pinns.co.uk/osm/


Також потрібний спеціальний набір файлів стилю конвертування для Mkgmap
Я використовую стилі з цього набору: http://maptourist.org/files/myConfigs/ . Я лише дещо підправив, щоб видаляти полігони житлових кварталів, бо вони накривали полігони будинків і також задав показувати будинки стилем спортивних комплексів (інакше на Garmin nuvi 350 номери будинків показувалися лише при підведенні курсора). І ще дещо несуттєве. Також в M00001ef.TYP додав іконку для дерев.

mymaptourist.zip

В файлі видалив name:ru, щоб правильно відображалися назви:
   name-tag-list = name:ua,name,name:en,int_name

Насамкінець моя команда запуску збирання IMG-файлу:
java -Xmx1500M -jar mkgmap.jar --style-file=examples\styles\maptourist  --route --remove-short-arcs  --add-pois-to-areas --index --location-autofill=bounds  --gmapsupp *.osm.pbf --family-id=495 M00001ef.TYP

На виході отримуємо gmapsupp.img, котрий кидаємо на картку в теку garmin і дивимося що вийшло.
Щоб не тикати туди сюди карткою, можна також відкривати один з готових фрагментів програмою MapSource і переглядати результат.

Ще посилання:
http://wiki.openstreetmap.org/wiki/OSM_Map_On_Garmin
http://4pda.ru/forum/index.php?showtopic=70509&st=1960#entry2032230
http://www.dandra.cz/geo/gps/typ/typ_en.html
http://www.cferrero.net/maps/maps_index.html
http://gis-lab.info/data/mp/#
http://www.splav-with-gps.ru/karti-dlya-garmin/
http://maptourist.org/