Author: ncrmnt

  • Биквадрат.

    Соорудил биквадрат для йоты. Попутно кантузил корпус модема, потому пришлось оный выкинуть и запихнуть модем в корпус от ретрогеймбой адаптера (так я его ни разу и не поюзал в детстве).
    Что из этого вышло – фотки под катом.
    На тесте на улицах москвы оная конструкция показала себя очень и очень хорошо – 7-9 мегабит на даунлоад в большинстве мест – только высуни в окно.
    А вот на даче ни в какую. даже после установки на параболику от нтв+… Сдается мне, надо делать что-то более мощное…

  • MakeProgress + mysql + PHP

    ТЗ: Хранить задания со статусом выполнения на серваке и отдавать их плазмойду мейкпрогресс.

    Реализация: Так как набросать надо было быстро – обошлось мне в 100 строк на пыхыпэ, для хранения используется mysql

    Лицензия: WTFPL

    Исходник под катом, выслал Никите Мельниченко, глядишь включит в виде бонуса к плазмойду.

    (more…)

  • Сетевой изврат

    На работе, на стендовом железе рядом с макетом на котором работаю, очень все хитро до извращенности сделано. к машине разрешени входящие подключения по ссх, но с нее в интернет – ни ссх, ни хттп.. ничего. только днс фигашит да пинги.  А встала надобность подать сигнал домой, как борда освободиться. Решил я проблему примерно так:

    conntrack -e DESTROY -s x.x.x.x -E | (while true; do read line; echo $line; lsay “The board is ready to use”; done )

    где вместо x.x.x.x айпишнег стенда. Это конечно не тунель овер ицмп, но тоже весело.

  • Project myPhone: начало

    Принесли мне вечерком 16 гиговый ифон. Купили с рук и жалуются, что оно “ниработает”. Пластик добротный, выглядит аутентично. Только батарея села – показывает яблоко и гаснет… На первые секунды я даже поверил, что оно настоящее. Ну а потом заметил нестыковки, и догадался расхреначить. Фото начинки и полная история под катом.
    (more…)

  • USBasp на стеройдах

    В общем-то задолбал меня мой лптшный небуферизованный, который когда не в духе убивал авры. Пять минут мучительных раздумий, полчаса разводки, пара часов на утюженье и пайку и вуоля. Моя версия программатора USBasp на стеройдах.
    На выбор три варианта напрги: 3.3, 3.6 (если на 78l05 на вход подать ровно пять от усб, получим аккурат 3.6 на выходе, узнал когда собрал) и, собственно, 5 вольт.
    Помимо флешенья авров будет так же уметь общаться по i2c c еепромами и сможет работать как усб<-->уарт бридж. Надо только прошу дописать. Но авры шьет уже на ура.
    Ах да, и, конечно же, пруфпик:

  • Некромантия 80го уровня.

    Вот это действительно Ъ: некромантия восьмидесятого уровня в исполнении француза: радиолампы своими руками.

  • MegaDog, продолжаем доводить клиента до кондиции

    Начнем с небольшой сказки. О текстолите.

    Был у меня текстолит. Часть – который я сам купил, часть – который дед мне отдал из старых запасов, когда сам он этим безобразием занимался. Односторонний миллиметровый пошел хорошо и скоро трофейного однослойного не осталось – только тот, что я впоследствии прикупил. Но вот встала надобность травить двуслойку и достал я трофейный дедов двуслойный текстолит.

    Создается впечатление, что он трофейный аж из германии в 45м, ну либо просто провалялся долго: мало того что поверхность от окисла час тер, так когда уже протравил при пайке он вонял, словно тухлая селедка приправленная не менее тухлыми носками. Ну и дороги после этого как-то подозрительно отрываются легко… В общем, трофей пришлось отложить в сторону, и достать однослойный полумиллиметровый текстолит, купленный на днях в “кварце”. Хотя основную роль в необходимости перетравки платы здесь сыграло то, что я по дури навалял пару косяков в разводке, которые всплыли потом и пока паял оторвал энное количество дрожек.

    Впрочем, оно и к лучшему.

    На полумиллиметровом разводочка вышла просто заглядение – нигде ничего не отрывается, все ровненько, все красиво, прям как с завода, несмотря на то что все еще старый добрый ЛУТ.

    (Слота под карту не видно, он снизу.)

    Ну а дальше уже дело навыка – V-USB, CDC-ACM реализация, и бутлоадерHID

    Девайсина содержит бутлоадер (растрепанированный BootLoderHID (Не влезало в 2кб, местами пришлось напильником допиливать)). Так что ISP может отдохнуть на полочке. Коли перед стартом накинуть джампер, то можно будет его обновить. Ну и если будет целевая аудитория – могут спокойно обновляться без ISP. Автор BootloaderHID’a приспособил его даже для работы под мерзопакостной виндой.

    В штатном же режиме все плугнплей. Втыкай, находи в /dev файлик ttyACM0, ну а дальше кому и чем удобнее. Хоть миникомом, хоть чатом, хоть из кода – открывай и рули АТ командами.

    –cut–

    AT

    OK

    ATV

    MegaDog Prototype I rev. 1.2a CoDeName: maniac

    FW: 0.1-pre; ldr: BootLoadHID-md 0.9

    S/N: lilith-0000

    MEPHI Science Session 2010; Party Build. Kaf 27/Mephi

    –cut–

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

    Суть проста. Первые байты, не считая нулевого (его частенько затирает, потому выкидываем его), являются массивом из N указателей на NULL-trminated стринги в еепроме. Дефайним константы с номерами строк по мере надобности, и делаем хитрую функцию которая по номеру выдает нам стринг. желательно сразу в виртуальный уарт. Ну а далее я соорудил несколько AT команд и функций, которые потом можно исключить из проши дефайном.

    ATSI – инициализирует нулями таблицу строк.

    ATSA TEXT – добавляет текст в ближайшую свободную ячейку. фейлит если кончились ячейки или еепром.

    ATSD – начинает поочередный дамп строк еепрома. выводит первую строку.

    ATSN – дампит следующую строку из еепрома. Для сброса в начало используем ATSD

    В принципе, то что надо, чтобы заполнять еепром скриптом на баше уже после прошивки. Конечно, реализация не самая красивая, зато зараза работает и сэкономит до 512 байт кода, если будем этот текст писать в PGMSPACE. ну и оперативы.

    А вот с дисплеем вышел полный облом. mt6116, который я думал использовать по причине, что олед дисплейчик так и не дошел до меня, имеет минимальный уровень логической единицы – 3.6 вольт. а у меня питание 3.3. Первой мыслью было быренько соорудить на 74hc244 конвертер уровня (пока там придет заказ из элитана с готовым решением?) – читать из дисплея мне все равно не надо, но потом я эту затею оставил, ибо лень. Будем ждать OLED’a из раделя… ну и когда приедут из элитана запчасти можно будет собрать до кучи экстеншн с эзернетом… слотов под экстеншны через SPI я предусмотрел 2. Ну один еще можно добавить, перебросив проволочку на ISP коннекторе.

  • MegaDog, prototype 1

    Картинка под катом.

    В общем, вчера траванул я в два слоя первый прототипчик мегадога. Вот такая вот вышла лабуда с разводкой.

    Пришлось помаяться с полуторамиллиметровым текстолитом времен СССР, да и вонял он при пайке как-то странно, но не суть

    Первое, что пришлось сделать это избавиться от OLED дисплея, ибо поднимать напругу до 10 вольт, необходимых драйверу оного было проблематично. Хотелось оставить питание от пяти вольт USB (3.3 у контроллера и карты по сути), и при этом избежать надобности впендюривать в дизайн дорогостоящий dc-dc преобразователь. Можно конечно было самодельную низкобюджетную конденсаторную помпу замутить, да вот лень было. Посему из патреотический соображений взял валявшийся без дела mt6116, благо либу для рисования на оном всяких кавайностей я перелопатил и заготовил еще осенью.

    Итого в текущем дизайне:

    1. Слот под карту (card detect есть, а на защиту от записи пожадничал пина)
    2. 2 SPI разъема для плат расширения + 1 (последний выполняет роль ISP, но когда с програмированием игры закончены – можно использовать и как экстеншн слот)
    3. Резервное питание/зарядка батареек. выведено как слот под раздельную плату. просто я еще не определился что лучше – Li-Ion или NiCd. По желанию напругу батареи можно мониторить закинув на канал ацп.
    4. Три пина выведены на слот PW-CTL, предназначены для руления питанием пациента. В простейшем случае через транзисторы щелкают ресет и павер, а через релеху еще и 220, на случай если дела пациента совсем плохи.
    5. АЦП. 4 канала свободны для наблюдения за напряжениями пациента, один мониторит питание борды (до стабила на 3 вольта). При желании можно пожертвовать одним каналом и мониторить напругу батареи.

    Что именно буду пихать в слоты расширения пока еще не решил. Разумеется, одна из платок будет с 10ти мегабитным эзернетом, но по поводу остального не решил, так что оставлю про запас. Кто знает, может и разрожусь каким-нибудь сверхполезным экстеншном. (Так что теперь самое интересное – посмотреть будет ли это нечто работать. (27го показываю широким массам!)

  • Номинация на извратство года.

    Картинка под катом.
    Собственно, развожусь потихонечку. мегадог к 28му числу. В три часа ночи потянуло на арт.