суббота
пятница
Фоточки с EVIL-Камеры
Раз уж я написал тексто про свою "карманную зеркалку", то неплохо бы и примеры фоток набросить, а?
Все фотки сделаны на китовый объектив SEL1855
Все фотки сделаны на китовый объектив SEL1855
| 1/3, F/4, ISO-1600 |
четверг
Kindle paperwhite+dropbox: Версия дваноль
Первая версия этого безобразия работала, и позволяла закачивать книжки на читалку безо всяких проводов. Чего же еще надо для полного счастья?
Например, удалять книжки. Тоже без проводов. В читалке не предусмотрено нормального файлового менеджера.
Или избавится от необходимости запускать каждый раз при добавлении книжек, скрипт, собирающий их в архив.
И у меня таки получилось все это реализовать :)
Например, удалять книжки. Тоже без проводов. В читалке не предусмотрено нормального файлового менеджера.
Или избавится от необходимости запускать каждый раз при добавлении книжек, скрипт, собирающий их в архив.
И у меня таки получилось все это реализовать :)
вторник
Kindle paperwhite и Dropbox
Книжка Kindle Paperwhite конечно классная, но у нее есть одно неудобство - загрузка файлов только по USB (очевидно, сервисы amazon мы не рассматриваем). На это можно было бы закрыть глаза, если бы не было никакого другого способа залить файлы... но ведь там есть wi-fi! А у меня есть дропбокс. Так почему-бы их не подружить?
Процесс работы с дропбоксом я представлял примерно так: кидаю нужные книжки в папку в своем дропбоксе, жду пока они загрузятся, нажимаю пару кнопок на киндле - и книжки магическим образом оказываются в папке documents на моей читалке. Удобно? Черт, возьми, да!
Забегая вперед, почти в самый конец, скажу, что у меня таки получилось. Пусть и немного не удобно, но работает.
четверг
EVIL-камера
В середине декабря 2012, понимая, что конец света неминуем, я снял остатки бабла со счета и пробухал с блекджеком и шлюхами купил себе новую камеру, вместо Fujifilm S2950. Потому что я всегда хотел зафоткать что-нибудь эпическое (а ядерные испытания запретили:( )
Логика при выборе камеры была такой:
- Нужна качественная матрица и оптика, с хорошей цветопередачей - чтобы заснять во всех красках падающие метеориты, цунами, вулканы посреди города, вот это все.
- Высокая чувствительность для того, чтобы вести съемку в трудных условиях. Вполне возможно, что конец света наступит под вечер или ночью, поэтому надо готовится к худшему.
- Желательно поворотный (вниз) экранчик - иначе будет неудобно снимать поверх толпы бегающих в панике людишек, держа камеру на вытянутой руке.
- Приветствуются сменные объективы. Очевидно, что в последние часы существования человеческой цивилизации всем будет похер на магазины электроники, а значит можно безнаказанно смародерить себе телевик или светосильный фикс-портретник.
Но в итоге, после долгих раздумий и прикидок "нужно - не нужно", логика упростилась:
DI HALT купил себе Sony NEX-5N, значит надо взять то-же самое, но круче!
С концом света нас обманули, поэтому я здесь...
Логика при выборе камеры была такой:
- Нужна качественная матрица и оптика, с хорошей цветопередачей - чтобы заснять во всех красках падающие метеориты, цунами, вулканы посреди города, вот это все.
- Высокая чувствительность для того, чтобы вести съемку в трудных условиях. Вполне возможно, что конец света наступит под вечер или ночью, поэтому надо готовится к худшему.
- Желательно поворотный (вниз) экранчик - иначе будет неудобно снимать поверх толпы бегающих в панике людишек, держа камеру на вытянутой руке.
- Приветствуются сменные объективы. Очевидно, что в последние часы существования человеческой цивилизации всем будет похер на магазины электроники, а значит можно безнаказанно смародерить себе телевик или светосильный фикс-портретник.
Но в итоге, после долгих раздумий и прикидок "нужно - не нужно", логика упростилась:
DI HALT купил себе Sony NEX-5N, значит надо взять то-же самое, но круче!
С концом света нас обманули, поэтому я здесь...
вторник
Минус 7 миллисекунд
Кратко:
При прошивке AVR через PINBOARD2+AVRDUDE (программатор 2ftbb) в буфер FT2232 может попасть лишний байт, который вызовет сдвиг всего остального массива и неправильное чтение данных - короче, работать нихера не будет. Такое несчастье случается, если за 7 миллисекунд (плюс-минус километр) до фактического начала прошивки (сброса МК) линия MOSI (которая соединена с пином RX на FT2232) находится в низком уровне. При переключении из BitBang режима в UART FT2232 заглатывает байт 0x00.
В качестве основного симптома - строчка "ft245r_drain called but queue is not empty 1" в логе AVRDUDE перед тем, как он скажет, что ничего не работает.
Чуть подробнее :)
При прошивке AVR через PINBOARD2+AVRDUDE (программатор 2ftbb) в буфер FT2232 может попасть лишний байт, который вызовет сдвиг всего остального массива и неправильное чтение данных - короче, работать нихера не будет. Такое несчастье случается, если за 7 миллисекунд (плюс-минус километр) до фактического начала прошивки (сброса МК) линия MOSI (которая соединена с пином RX на FT2232) находится в низком уровне. При переключении из BitBang режима в UART FT2232 заглатывает байт 0x00.
В качестве основного симптома - строчка "ft245r_drain called but queue is not empty 1" в логе AVRDUDE перед тем, как он скажет, что ничего не работает.
Чуть подробнее :)
понедельник
О шнурках (USB)
Абсолютно все дешевые USB шнурки - китайские. Но некоторые более китайские, чем другие!
Тестировал WIZNET модуль для PB2. Штуковина прожорливая - пару сотен миллиампер хавает и даже не морщится. Плюс STM32 на 36Мгц тоже неплохо потребляет. Питалось все это дело через USB от компа.
И в общем-то все работало и выглядело красиво, до тех пор пока я не глянул напряжения на линиях питания. MAIN_PWR (напрямую от USB, через диодную развязку) - всего 3.6V. Что за?! Где еще хотя-бы 1.2V? Из-за такой фигни с MAIN, CPU_PWR (питание для МК) проседало до 1.8V, но МК продолжал работать (хотя минимальное для них - 2V).
суббота
Еще один повод использовать импульсные преобразователи, вместо линейных
"Когда-нибудь энтропия Вселенной достигнет максимума, и вся энергия выравняется. Затем, хотя вся энергия будет присутствовать, дальнейшие изменения станут невозможны - ни движения, ни работы, ни жизни, ни интеллекта. Вселенная будет существовать, но только как замерзшее изваяние Вселенной. "Фильм" перестанет крутиться, перед нами всегда будет стоять один "кадр".
Поскольку тепло - наименее организованный вид энергии и такой, который легче всего поддается равному распределению, всякое превращение любого вида нетепловой энергии в тепло означает увеличение энтропии."
Айзек Азимов. "Катастрофа"
Поскольку тепло - наименее организованный вид энергии и такой, который легче всего поддается равному распределению, всякое превращение любого вида нетепловой энергии в тепло означает увеличение энтропии."
Айзек Азимов. "Катастрофа"
Так-то!
Не грейте зря окружающую среду!
пятница
Определяем тактовую частоту МК - Способ #101
Дано:
Найти:
Цепляем щуп к линии CPU POWER. Переключаем вход в режим переменного тока (AC). Выкручиваем энкодер Volts/Div до предела, чтобы было видно шум на линии:
- Пинборд,
- STM32 модуль
- Осциллограф
Найти:
- На какой частоте работает ядро контроллера
Цепляем щуп к линии CPU POWER. Переключаем вход в режим переменного тока (AC). Выкручиваем энкодер Volts/Div до предела, чтобы было видно шум на линии:
Теперь переключаемся в режим FFT и пыримся в график в поисках пика. Вот он:
36МГц.
А разгадка в том, что МК потребляет ток не равномерно, а импульсами при переключении транзисторов внутри него. Большая часть движухи в камне происходит по тактовому сигналу. Есть конечно всякие асинхронные модули (вроде часов реального времени или сторожевого таймера), но они обычно тикают на низких частотах и с ядром их не перепутать. А вот ядро стучит на своей тактовой частоте и, если присмотреться, срет на линию питания.
Обычно с помехами от цифровых схем успешно справляется фильтрация (блокирующие конденсаторы по питанию). И тут среднеквадратическая амплитуда пульсаций на этой частоте не более 1мВ - фильтры справляются. Шум от подключенного к пинборде сетевого модуля и от шины USB намного больше. Но тем не менее, осциллографом можно разглядеть и такую мелочь.
вторник
Клиент-серверные ролевые игры
Продолжаю играть с wiznet w5100. С сервером разобрался, теперь настало время прикинуться клиентом.
В: А как мне узнать что человек сейчас на сайте? ну всмысле онлайн
О: Все просто. Инициализируете сетевой контроллер. Следите за питанием, иначе он может сбоить. Настраиваете IP шлюза, максу подсети и другие необходимые параметры. Открываете сокет в режиме TCP клиента и подключаетесь к DNS серверу. Делаете запрос на сервер чтобы узнать IP нашего сайта. Закрываете сокет и открываете в том-же режиме но теперь подключаетесь к IP который дал вам DNS. Ждете установки соединения. Отправляете GET запрос, указав в качестве URL адрес странички нужного вам человека, относительно сервера (/id31337 например). Чтобы не сочинять GET запрос, его можно украсть у какого-нибудь браузера. Только, боже вас упаси, не указывайте в запросе, что вы поддерживаете сжатие трафика! А то пришлют какой-нибудь gzip, и что с ним потом делать? Затем читаете то, что отдает сервер. Данных может быть больше, чем у вас оперативки, поэтому обрабатывать их придется на лету. Вам предстоит найти в выдаче текст <b class="lvi"></b> Если нашли, делаете что-то типа LED_PORT->ODR |= LED_PIN; Написали? Прошивайте и запускайте.
Светодиодик загорелся? Значит человек онлайн.
Ну а светодиодик можно заменить сервомашинкой:
P.S. Исходников пока не будет. Ибо там стыд, позор и задержки на циклах. Потом выложу это как аппноту по работе с новым сетевым модулем.
В: А как мне узнать что человек сейчас на сайте? ну всмысле онлайн
О: Все просто. Инициализируете сетевой контроллер. Следите за питанием, иначе он может сбоить. Настраиваете IP шлюза, максу подсети и другие необходимые параметры. Открываете сокет в режиме TCP клиента и подключаетесь к DNS серверу. Делаете запрос на сервер чтобы узнать IP нашего сайта. Закрываете сокет и открываете в том-же режиме но теперь подключаетесь к IP который дал вам DNS. Ждете установки соединения. Отправляете GET запрос, указав в качестве URL адрес странички нужного вам человека, относительно сервера (/id31337 например). Чтобы не сочинять GET запрос, его можно украсть у какого-нибудь браузера. Только, боже вас упаси, не указывайте в запросе, что вы поддерживаете сжатие трафика! А то пришлют какой-нибудь gzip, и что с ним потом делать? Затем читаете то, что отдает сервер. Данных может быть больше, чем у вас оперативки, поэтому обрабатывать их придется на лету. Вам предстоит найти в выдаче текст <b class="lvi"></b> Если нашли, делаете что-то типа LED_PORT->ODR |= LED_PIN; Написали? Прошивайте и запускайте.
Светодиодик загорелся? Значит человек онлайн.
Ну а светодиодик можно заменить сервомашинкой:
P.S. Исходников пока не будет. Ибо там стыд, позор и задержки на циклах. Потом выложу это как аппноту по работе с новым сетевым модулем.
Ламповый (и теплый!) держатель для фена
Не всегда фен используется как основной инструмент при работе. Часто надо прогреть им плату и при этом припаять на нее какую-нибудь деталь. А если паяльник не очень мощный, то так придется очень часто :)
В такой ситуации держать фен в руке становится проблематично: ведь в другой руке надо держать паяльник, а третьей - придерживать деталь, которую паяем. Трехрукие мутанты строят троллфейс, а нам, человекам, придется колхозить держалки для фена.
Обычно их делают из штативов (типа GorillaPod, например). Но такого добра у меня не было, посему решено было применить старую настольную лампу, термоклей, и лего. Вышло так:
В такой ситуации держать фен в руке становится проблематично: ведь в другой руке надо держать паяльник, а третьей - придерживать деталь, которую паяем. Трехрукие мутанты строят троллфейс, а нам, человекам, придется колхозить держалки для фена.
Обычно их делают из штативов (типа GorillaPod, например). Но такого добра у меня не было, посему решено было применить старую настольную лампу, термоклей, и лего. Вышло так:
среда
Лайфхак: колонки и наушники
Обычно музыка, фильмы и игрушки у меня на компе звучат через колонки. Звук более-менее качественный, ну или все делают вид что он не говно :) Но иногда приходится одевать наушники, чтобы никому не мешать. Вот тут-то и начинается квест.
Колонки, мало того, что находятся далеко и высоко, входа для наушников не имеют. Втыкать наушники в разъем на передней панели - тоже не камильфо. Передней панели просто нет, а разъем болтается сам по себе. Приходится ползти в жопу системного блока, выдергивать колонки и включать наушники. Напрягает. Настолько, что я даже начал искать способ передать звук по вафле/бт на свой смарфончег с целью превратить его в подобие беспроводных наушников. Не нашел и потому вернулся к наушникам проводным.
Чуть подумав, я родил простую идею, которая одновременно убивала двух зайцевтактическим ядерным зарядом. Заяц первый: автоматическое переключение звука с колонок на наушники и обратно. Заяц второй: наушники больше не болтаются по всей комнате: у наушников есть место.
Догадались к чему я клоню? :)
Колонки, мало того, что находятся далеко и высоко, входа для наушников не имеют. Втыкать наушники в разъем на передней панели - тоже не камильфо. Передней панели просто нет, а разъем болтается сам по себе. Приходится ползти в жопу системного блока, выдергивать колонки и включать наушники. Напрягает. Настолько, что я даже начал искать способ передать звук по вафле/бт на свой смарфончег с целью превратить его в подобие беспроводных наушников. Не нашел и потому вернулся к наушникам проводным.
Чуть подумав, я родил простую идею, которая одновременно убивала двух зайцев
Догадались к чему я клоню? :)
воскресенье
Как травится плата
Все знают, что платы можно травить в растворе хлорного железа. Продвинутые Ъ-эмбеддеры даже расскажут вам, какая часть платы начнет травится первой, а где останутся залипухи после того, как все остальное будет стравлено.
А вы видели когда-нибудь как травится плата? Отдельные этапы травления несомненно все наблюдали: "только начала" "осталось еще немного" "еще чуть-чуть" "Б#$@! Перетравил!". А в анимации? Например если ускорить в несколько десятков раз:
А вы видели когда-нибудь как травится плата? Отдельные этапы травления несомненно все наблюдали: "только начала" "осталось еще немного" "еще чуть-чуть" "Б#$@! Перетравил!". А в анимации? Например если ускорить в несколько десятков раз:
среда
Питание для фотика
Прогресс не стоит на месте. Цифровые камеры становятся все более компактными и мобильными. Но иногда нужно вести съемку продолжительное время в одном месте. Для таких задач большинство камер имеют поддержку внешнего БП. В батарейный отсек вставляется заглушка с контактами, которые подключены к преобразователю, выдающему то-же напряжение, что и батарейки. Все это безобразие втыкается в розетку и питает камеру сколь угодно долго пока свет есть.
Естественно фирменный адаптер достать в среднестатистическом городе примерно так-же просто, как обогащенный плутоний. И по стоимости он не уступает. Значит, будем делать адаптер из подручного мусора.
Естественно фирменный адаптер достать в среднестатистическом городе примерно так-же просто, как обогащенный плутоний. И по стоимости он не уступает. Значит, будем делать адаптер из подручного мусора.
понедельник
Огрызок флешки
Что чаще всего подвергается разнообразному моддингу? Пожалуй, если забыть про системные блоки и другую недвижимость, то остаются флешки. Вариантов всевозможных украшательств тут over9000. Вчера я увидел еще один
Гиковская флешка в виде обрывка провода. Она показалась мне забавной и оригинальной (а вообще-то старая идея, но я слоупок же) и я решил сделать себе такую-же.
Гиковская флешка в виде обрывка провода. Она показалась мне забавной и оригинальной (а вообще-то старая идея, но я слоупок же) и я решил сделать себе такую-же.
вторник
TV-B-GONE на STM8S
Давным-давно, в далекой-далекой...
Появилась у меня идея портировать TV-B-GONE на STM8S. Было это, наверное, почти год назад (точная дата не установлена :)). Я тогда только начинал изучать STM8 и естественно стремился запилить на базе этих МК разнообразные вундерштуки.
пятница
Вешалка для маркеров
Есть у меня самопальный whiteboard. Вот такой:
А для него нужны маркеры. И их надо где-то хранить. Сделать обычную человеческую полочку меня как-то ломало, поэтому маркеры долго гуляли по комнате. Да и полочка не очень удобна - это я еще со школьной скамьи усвоил.
В итоге решил построить вешалку:
А для него нужны маркеры. И их надо где-то хранить. Сделать обычную человеческую полочку меня как-то ломало, поэтому маркеры долго гуляли по комнате. Да и полочка не очень удобна - это я еще со школьной скамьи усвоил.
В итоге решил построить вешалку:
В крышке каждого маркера просверлил отверстие, куда вставил и приклеил шнурок. Приклеился он просто намертво (цианакрилат же :)) - можно резко дерграть маркер и колпачок останется висеть на шнурке.
Главные плюс от такой конструкции - не нужно думать о том, куда деть колпачок. Просто дернул маркер и рисуешь в свое удовольствие.
Обратно его вставить так-же легко как и выдернуть.
Единственно, что меня смущает - предупреждение на некоторых маркерах, что их надо хранить горизонтально. Но во-первых на моих такого не сказано :) а во-вторых они уже целый день висят, а пишут так-же хорошо. Ну, если уж перестанут писать - в следующий раз прикручу горизонтально :)
вторник
Управление сервомоторами через аудио-выход
Вот такая вот простая идея, которая позволяет поставить смартфон на колеса. А вафля, камера и инет в нем уже есть. В итоге - самобеглая тележка из ведрофона :)srimech: Simple, headphone-controlled phone robot
Подписаться на:
Сообщения (Atom)





