Category: техника

Category was added automatically. Read all entries about "техника".

LinkIt Smart 7688 и датчик CO2

Дошли наконец-то руки запустить очередной бриколяж - датчики CO2 mh-z19 (https://geektimes.ru/post/272090/)
Наиболее прямым способом, без ордуин и прочего такого оказалось завести микрокомпутер с OpenWRT на борту - LinkIt Smart 7688 (http://wiki.seeedstudio.com/wiki/LinkIt_Smart_7688).

Подключение достаточно влоб: 3.3v usb-uart на пины земли, P9 и P8 для отладки загрузки c serial консоли, сам датчик на пины земли, +5вольт питания и P18(RX linkit)-P3 (TX датчика) P19(TX linkit)-P2(RX датчика).

USB-UART, похоже желательно подключать после питания - а то он через TX и защитные диоды начинает пытаться питать все это устройство, по крайней мере светодиод питания загорается сразу.

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

В принципе, можно и без консоли - при старте этот девайс включает точку доступа, к которой можно подключится и на адресе 192.168.100.1 найти его веб-морду и переключить в режим wifi-клиента и подключить к своей сети, или открыть полноценный веб-интерфейс openwrt, но с консолью удобнее, особенно когда оно с ума сходит.

Дольше всего времени ушло на то, чтобы чтобы разобраться с wifi - который не умеет каналы выше 11 по умолчанию, а у меня модем сел на 13 канал и его вообще не было видно и на то, чтобы вспомнить питон и как на нем отправить массив байт в uart и получить обратно ответ (2 и 3 питоны ведут себя по разному).

Тестовая прога на питоне: https://gist.github.com/metametaclass/fdcd53e4e699ed5a0a780bc74a8a5eca, отправляет результат опроса по udp на комп, где запущен nc на порту 49344 и всякие тестовые прожки на 49345.

Получается вот такая картинка, ночью - с закрытой дверью, днем с открытой и датчиком, на который я дышу: http://www.cacodaemon.org/co2/20161029_212640_20161030_153355.png

Гребаные микро-usb

В action-камере xiaomi yi, которая сама по себе достатчно приличная альтернатива GoPro, есть видео-выход, который можно подключить к передатчику и смотреть с нее видео в реалтайме. Но, как оказалось, злые китайцы посадили этот выход на 4 пин micro-usb, который обычно не задействован, кроме как в OTG-проводах для идентификации устройства-хоста (тогда он замыкается на землю).
Само собой, что в "этой стране" купить micro-usb разъем без провода возможно либо только через китайпосылторг либо у какой-нибудь "подзаказ-безнал-сфизлицаминеторгуем" конторе, поэтому я подумал, что можно распотрошить бытовые micro-usb кабели и достать разъем.
Так вот, хрен там, однако. Ни в одном из разобранных кабелей 4 пин не выведен для распайки. В OTG он замкнут прямо внутри на 5 пин, в обычных просто не выведен и только в одном чуть-чуть торчит, но для того чтобы к нему припаяться нужен микроскоп и скиллы нейрохирурга.
Я вот думаю, попробовать купить еще пару кабелей на потрошение, или таки ждать китайпосылторга. Или же заменить временно камеру на что-нибудь простое и подешевле с аналоговым выходом, типа модуля камеры от видео-домофона.
Можно, конечно, купить GoPro, для которой переходник с мини-usb на вход передатчика у меня есть, но жаба пока не разрешает.

Кольчатый червъ от программирования

в моей душе негодуэ:
http://ivan-gandhi.livejournal.com/2505488.html?thread=34994704#t34994704
управленцы вообще живут в виртуальной реальности: у них какие-то планы, отчёты, бумажки. у нас - железо, софт, механика, электроника. эти два мира не пересекаются. галочки и проценты всё равно ставятся от балды: ну как я могу сказать, каков процент разработки нового девайса? да хз, по большому счёту. может, всё сразу заработает, а может, засядем на месяц с отладкой. им этого не понять. а я не Заратустра, чтобы предсказывать будущее. пусть радуются процентикам, которые ничего не значат. им не нужна работа, им нужны отчёты. мы поставляем им отчёты и все довольны. ещё я научилась говорить умные фразы, начинённые техническими терминами: они не понимают, но спросить стесняются, чтобы не показаться глупыми. поэтому это работает безотказно, если хочешь, чтобы от тебя отвяли и дали тебе ещё время на отладку и доведение девайса до ума.
но есть проблема: всё это бесит чисто морально. мы делаем столько ненужных телодвижений, что если бы нам не мешали, то разработка бы шла в два раза быстре и ээффективнее.


Одним из главных успехов кольчатых червей-менеджеров за последнее время стало то, что они приучили инженеров думать своими уебищными категориями - о "прибыли", "пользе для бизнеса", "сроках", "worse is better" и прочим подобным двоемыслием.

Адовый SMD монтаж

Чинил одну девайсину, пришлось перепаивать 0402 smd индуктивность (снес в процессе выдирания 455 кгц кварцевого фильтра, который нужно было заменить). Ебаная микрохирургия.
Скажите мне, что можно сделать с говножалом паяльника Lukey 702, чтобы оно не превращалось в тыкву (то бишь окислялось до состояния "не передает тепло вообще")?

Stellarium

Поставил сабж на имеющиеся под руками компы, чтобы знать что за звезды видно из окна.
Так вот он на детском ноутбуке с Core Duo тормозит так, что там там FPS примерно 0.1. Даже до настроек толком добраться невозможно. И, что характерно, на этом же ноутбуке тяжело вычислительный SDR# тоже еле-еле ползает.
Внезапно, неужели ноутбук 2006 года таки морально устарел?

Кухонный пожароопасный электрический кошмар

http://sbj-ss.livejournal.com/175136.html
Регулятор мощности прост, как всё гениальное: на пониженной в цепь питания движка переменного тока включается диод. Я даже не буду ругаться по поводу XXI века, микроконтроллеров, ШИМ и т.д., но в конструкции нет не то что теплового реле - предохранителя, блядь, нет.

Я надеюсь, что все эти Vitek, Scarlett и прочие китайские говноделы загнутся в мучениях.

Жесткий технофетишизм

http://arstechnica.com/science/2013/04/how-nasa-brought-the-monstrous-f-1-moon-rocket-back-to-life/
Разобрать и превратить в CAD-модель двигатель от Сатурна-5, да еще завести от него турбину насоса.
110-метровые ракеты, дикой мощности двигатели, сборка их ручной сваркой в 60х года и на 3D-принтере сейчас. Редкостный позитив.

Про импеданс с положительной мнимой частью.

Ненавидите ли вы трансформаторы и индуктивности так, как ненавижу их я?
У меня еще с радиолюбительского детства существует неприязнь ко всему, в чем существует ненулевое значение мнимой составляющей импеданса.

Из-за того, что в СССР не было китайских сельпо, делать все приходилось из подручного говна и палок, а измерить индуктивность и прочие характеристики было нечем, и формулы для расчета были эмпирические и взятые из "Справочника сельского электрика". Каркасы от индуктивностей из радиоприемника "Океан" плавились при их выпаивании. И при этом не существовало обычного ряда значений, как для конденсаторов или резисторов. Мелкие тороидальные индуктивности приходилось наматывать с помощью челнока, на тонкой проволоке возникали затяжки, это все рвалось, выводы отламывались, приходилось делать заново, итд итп.

Простые модели и кодогенераторы на clojure

https://github.com/csete/gqrx/blob/master/pulseaudio/pa_device_list.h (код не мой, просто я в нем сейчас разбираюсь)
По ссылке есть класс pa_device, единственное назначение которого - хранить три поля описания pulseaudio девайсов. Занимает это дело 23+8 - 31 строку.

Когда у меня возникает надобность на обычных языках делать такие классы, у меня не хватает терпения их писать вручную и я их генерирую или из t4-шаблонов или из описания на Clojure, например, этот класс я бы описал так, сделав макрос def-gen-class:
(def-gen-class pa_device 
  "комментарий к классу"
  index uint "комментарий к полю"
  name string "..."
  description string "...")

в итоге получится переменная pa_device, внутри которой лежит описание класса в удобном для кодогенерации виде. Можно map, можно список кортежей, без разницы, благо кложурь имеет развитый механизм разборки структур данных на составляющие.

Полученное описание можно при желании расширить генерацией, например, пользовательского интерфейса или сериализации-десериализации.
Для своей опердени я таким образом генерю классы документов, которые умеют загружать-сохранять себя в JSON. Из 90 строк кода на кложури создается 1226 строк на дельфи.

Знаете ли вы, что....

внешний zelanton запрещает упоминать внутреннего zelanton.
Алсо, "внутренний zelanton" это локальный мем, означающий стимул, побуждающий к покупке всяких заебатых гаджетов для оптимизации бытовухи и просто полезных и приятных глазу гаджетов, строительству домиков, и проч. и проч.