Category: технологии

Лампа

Технология удаления ржавчины

Купание красного шкива

Понадобилось мне отмыть от ржавчины шкив и ещё некоторое количество разных деталюх. Шкив был ржавый просто капец, разве что отвёрткой откалывать ржу. На фотках плохо видно, но это скорее кусок ржавчины, чем металла.

Набор для омовения


У Дани Крастера узнал замечательный рецепт, то как без лишних усилий удалить ржавчину с изделий. Он описывал в этом видео

Collapse )
Лампа

Боли портирования Sailfish OS

В предыдущем посте я уже затрагивал тему портирования Sailfish о мудрённости sdk и прочее.
Так вот - это всё цветочки. Ягодки в том, что ОСь активно разрабатывается (и это реально круто, правда), но из-за этого идёт безумное устаревание инструкций и инструментов. Вот яркий пример. How to build Sailfish OS for Samsung Galaxy S7



Берём официальный HADK от Августа 2018 и инструкцию выше от февраля. Вроде в целом всё совпдает, на первый взгляд. Но когда пытаешься повторить, и ВНИМАТЕЛЬНО сравнивать каждую строчку, чётко понимая что она делает (вплоть до того куда какой пакет ставится), понимаешь что разница чудовищна. Не, а вы что думали, портирование по инструкции? Не, здесь вам не тут. В общем, вот пример строчки:

HADK: PLATFORM_SDK $
sudo zypper in android-tools-hadk tar


Менеджером пакетов зиппер устанавливаем пакет андроид тулс и архиватор тар. Всё. Инструкция по сборке самого сунга:

PLATFORM_SDK $
sudo zypper in android-tools createrepo zip


Вот ирония в том, что пакетов android-tools и createrepo в последнем SDK нет, а значит это нифига работать не будет. А старый sdk как поставить не ясно (да и смысл какой, если есть более новый) А значит вот инструкция, по сборке самого сунга - не рабочая. Там множество таких "мелких" отличий, которые сводят на нет все попытки собрать. В общем я уже несколько десятков раз пытался пройти квест сборки, застреваю на сборке rpm-пакетов. Дальше пока не продвинулся.
Лампа

Сборка Sailfish OS

Вы хотите суровой программерской наркомании? Их есть у меня!

Если вы когда-нибудь собирали какие-то ОС, то наверняка помните какое это муторное занятие, скрипты для сборки и т.п. Но всё это ничто по сравнению со сборкой Salfish OS.

Существует официальный мануал HADK (Hardware Adaptation Development Kit Documentation) (Есть шанс, что в России ссылка не работает) или тот же примерно вариант, но на русском (с некоторыми отличиями).

Поскольку никто мануалы читать не будет, а если и будет - этого мало. Их надо ещё и понять.

— Слушай, ты можешь понять, что вообще происходит?
— Тебе объяснить?
— Да нет, объяснить я и сам могу. Ты ПОНЯТЬ можешь?


Так вот, с пониманием плохо, а вот объяснить попытаюсь.



Ладно, отбросим лирику. Для сборки системы нам нужен linux 64 бита. На него ставим sdk, который (внимание) запускается в chroot. На него ставим ubuntu, которая запускается в chroot из quemu (глаз не дёргается?). Далее, для сборки системы нужен Андроид! Т.е. нам от андроида нужно ядро, с дровами, которое и будет тем самым ядром линукс, а работа с ним будет через хардварные библиотеки, а именно libhybris (т.е. не напрямую с ядром, как в нормальном линуксе, дёргая апи, а через библиотеки совмещения). Если вы ещё не потеряли нить, андроид собирается в том втором чруте. После сборки андроида, мы настраиваем песочницу в первом чруте, где идёт эмуляция таргета...

А теперь добавьте сюда, что у Ведра, у каждой под системы выше, у каждого rpm-хардварного пакета есть свой скрипт. И представьте себе что вам ещё это нужно сконфигурировать, а главное ПОНИМАТЬ зачем вы это делаете!!! Да, а всё недостающее дописать в библиотеку libhybris ручками, на си.
Матрёшки Арбата в полном составе нервно закурили!



С сатирой закончили. С другой стороны, это единственная рабочая, в меру современная мобильная ОС под Linux, которая поддерживается в актуальном состоянии (если думаете, что это не так, то мануалы по сборке написаны в ноябре текущего года, и продолжают актуализироваться). Настоящая полноценная наследница Maemo! Ядро андроид используется потому, что драйверов половины железа просто нет под другие ОС. А сами дрова имеют только бинарный вид и единственный путь - это использовать ядро ведра. Да, костыли всем не нравятся, но пока это единственный путь.

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

Журнал "Хакер" за 720 рублей

На фейсбучке в рассылке зашёл на сайт "Хакера". Внезапно, он ещё жив! Удивительное рядом. Вот даже анонс свежего номера.


Не буду вас утомлять переходом по ссылке. Вот что в номере, самое интересное:


Ещё там по электронике и взлому. За 720 рублей, КАРЛ!!! Убили рубрику "Фрикинг", созданную специально для этого. Есть ещё несколько интересных статей.
Существует некоторый порог, выше которого люди не готовы платить. За 200 рублей, я бы ещё купил бы журнал (и то подумал бы), за 720 даже при лютом фанатизме - забил. Актуальность инфы сомнительная, даже Хабр и то более полезен, актуален и бесплатен. Для кого этот журнал сейчас? Кто его читатель?

Эх, былые времена...
Лампа

Не доверяйте китайцам...

Итак, очередной пост лучей поноса желтолицым братьям.

Итак, существуют в природе такие замечательные 1-wire датчики, с резьбой 1/2 дюйма, для замера температуры прямо в трубах. Продаются вот тут. Да, понятно, что чистый Китай, но мне там точность нужна относительная, плюс-минус пол лаптя. Хоть в попугаях чтобы измеряло. Тебе приходят эти датчики в милом пакетике без какого либо описалова. Просто фигнюшка с торчащими проводами. Описание берёшь там же на сайте, к слову у другого продавца, цвета проводов другое и описание другое. Т.е. стандарта на эту поделку нет. Итак распиновка:



Профессионалов сразу насторожит, что сигнал почему-то синий, а земля белая. Ну, может у них там, у китайцев всё через жопу. Включаю по схеме, нифига не работает. Более того, все контроллеры вообще вешаются, буквально. wtf? Горелый датчик? Беру другой, та же фигня. Психанул, с помощью газовой горелки, белого дыма и чьей-то матери разобрал это поделие китайской промышленности.



Смотрим проводки.



Смотрим описание на микрушку.



WTF!!! Дядя Ляо, за что ты так нас ненавидишь? Что за пидорасы... Почему нельзя всё было описать для людей... Кстати, не читал бы "инструкцию", а включил бы по наитию - всё бы работало. Суки, что сказать.
Лампа

Telegram bot

После сборки обработать напильником.

Понадобился мне под одну задачку телеграмный бот. Как оказалось не так страшен чёрт, как его малюют. Можно за часок набросать бота, хотя для управления умного дома, хоть для управления шатлом. На питоне писать не хотелось по ряду причин. Одна из которых, как не смешно звучит - переносимость кода. К питону надо ставить дополнительные либы, которые ухудшают его переносимость, особенно на встраиваемые системы, так что тут пока что рулит си и php.


Есть расчудесный проект сишного телеграмного бота https://github.com/smartnode/telebot/ . В принципе за 20 минут у меня он завёлся, минут сорок ковыряний левой пяткой я научился отправлять изображения и отвечать на сообщения. Короче, штука всем распрекрасна и уже казалось, что разверзлись врата рая и можно мутить управление шатлом, но ждал вселенский облом...

Мне понадобилось скачивать передаваемые картинки, файлы и прочую шолупень. Не только отсылать (что оказалось как два пальца об асфальт), но и получать и тут я лососнул тунца. Собстна говоря код, для получения файла примитивно прост (если я верно понял всё API). Я не поленился прошерстить весь код, чтобы понять логику работы. И родил такого монстра:

if (message->photo[1].file_size > 0) {
  char file_id[TELEBOT_FILE_ID_SIZE];
  strcpy(file_id,message->photo[1].file_id);
  ret = telebot_download_file(file_id, "photos/file_7.jpg");
  if (ret != TELEBOT_ERROR_NONE) {
   printf("Failed to download file: %d \n", ret);
  }
 }



Если перевести с программерского на русский, то мы определяем что структура сообщения имеет в поле фото не нулевой размер, и после чего пытаемся скачать его с помощью команды telebot_download_file(file_id, "photos/file_7.jpg"); в файл photos/file_7.jpg . Но, увы и ах, болт с левой резьбой.

Отладкой дошерстил до функции json_object_object_get_ex (obj, "file_path", &file_path) , которая является библиотечной и тут заткнулся. Так как надо уже мануалить работу функций. Толковых мануалов на работу апи, как и примеров нет, или по крайне мере я не смог нагуглить. Задал вопрос автору, но чуйка мне подсказывает, что он останется без ответа, а жаль... В общем, хорошая тема, но либо лыжи не едут, либо что-то не так делаю.
Лампа

Изготовление таймерных табличек

Каждый программист в душе немного столяр

С недавнего времени начал посещать русский клуб Toastmasters Zlatoust и даже стал там секретарём. Пару слов о системе Тостмастерс Интернешнл: "Международная некоммерческая образовательная организация, целью которой является развитие у её членов навыков общения, публичных выступлений и лидерства. Процесс обучения в организации заключается в регулярном посещении местных, чаще всего англоязычных, клубов организации и прохождении в них программ развития ораторского мастерства и лидерства."
Пользуясь случаем всех приглашаю в наш клуб, это бесплатно и очень интересно.

Для выступлений надо контролировать время, и для этого используется специальный человек Хронометрист с тремя табличками. Зелёной, жёлтой и красной. У нашего клуба таких табличек не было, вот и принял решение изготовить их самостоятельно.Collapse )
Лампа

Изготовление лампового усилителя

От этого видео я испытываю просто максимальное эстетическое удовольствие. Как от работы с электроникой, подходов и т.п., так и от работы с эпоксидной смолой и карбоном, так и от работы с деревом. Особенно поразил капитальный подход к изготовлению соединения "ласточкин хвост".

Лампа

Варка деревях

Проблема свежеспиленного дерева для обработки в том, что после высыхания оно сильно растрескивается. Вот на даче напилив яблони и вишни, хотелось сохранить их как можно лучше. Если просто взять и высушить, то будет чурка вся в трещинах. Если будет интересно, покажу во что превратился яблоневый пенёк у меня на балконе, без выварки.
Чтобы ускорить сушку, при этом чтобы древесину не порвало, существует дедовский метод. (сцуко, не знаю как правильно в этом предложении поставить знаки препинания). Метод заключается в выварке древесины в крепком соляном растворе (у меня четверть пачки соли на 3-4 литра воды) с хвойными опилками (сосна, ель). Опилки я делаю просто электрорубанком на балконе. На выход вешаю полиэтиленовый пакет и через 5 проходов на кастрюлю уже есть.


Чан после варки. Сверху опилки, внизу деревяхи


Смысл метода в том, что соляной раствор выводит влагу из связанного состояния (химически связанного) в состояние свободное. Плюс соль очень гидроскопична и вытягивает влагу. А хвоя даёт смолу, которая упрочняе деревяху. Минус метода в том, что деревяшка меняет цвет.
В прошлом посте деревяха с утюгом сверху тупо не давали всплыть деревяшкам внизу. Варится всё это дело около 6 часов на медленном огне. Я обычно даю закипеть, и потом ставлю на 1. Кастрюлю после процедуры использовать НЕЛЬЗЯ!!!Collapse )
Лампа

Изготовление скрипkи

Гугля по различным технологиям обработки дерева, по наводке bootsector с его покрытием шеллаком, наткнулся на фотогайд изготовления скрипки!


Читать на форуме вот тут (англ). Даже не зная языка - можно посмотреть. Очень интересны технологии изготовления инструмента. Чувак там заморочился варкой лака из канифоли и льняного масла, в общем - просто чума.
Особая упоротость заключается в том, что льняное масло сохнет при ультрафиолете. А чувак, как я понял, живёт где-то на севере. И чтобы ускорить сушку, придумал вот такую приблуду.


Про сушку описано вот тут.

Чего только не узнаешь и не увидишь в мире! Вообще, когда открываешь не только русские издания и публикации, узнаёшь что самодельщиков в мире очень много и есть просто гениальные, и есть чему учиться и учиться!

К слову, всячески также рекомендую посетить ЖЖ товарища bootsector, у него тоже очень много наикрутейших поделок! Очень вдохновляет! Рад что девиртуализировались!