Search
Write a publication
Pull to refresh
0
0
Владимир Волкских @Volkskih

User

Send message

Визуальный компонент-монитор COM-порта

Reading time3 min
Views26K
Сегодня мы попробуем создать визуальный компонент для работы с разного рода считывателями, подключаемыми по COM-порту (правильное название интерфейса – RS232). Наша цель — получать последовательность байт, которую отправляет устройство при считывании.
Читать дальше →

Файловый менеджер на PHP, с правами, контролем версий и AJAX-ом

Reading time2 min
Views26K
Особенности файлового менеджера:
— Можно задавать права доступа на файлы и директории. Права двух типов: есть доступ или нет доступа. Файлы хранятся в недоступной для скачивания по прямой ссылке папке. Скачивание файла происходит с предварительной проверкой пользователя и прав доступа на файл. Любой пользователь файлового менеджера может обладать правами администратора, что указывается при добавлении нового или редактировании существующего пользователя. Администратор может видеть все, в том числе «удалённые» файлы.
— Контроль версий каждого файла. После загрузки файла он сохраняется с именем, которое не позволяет перезаписать существующие файлы, а его «оригинальное» имя сохраняется в БД. Данный подход разрешает хранить разные состояния файлов.
— Автоматическое создание превью загружаемых изображений.
— Файл в менеджере можно сделать доступным для скачивания
— GPL, код доступен на github



Читать дальше →

Компактный USB HID Bootloader для ATtiny85

Reading time8 min
Views72K

Представляю вашему вниманию новый компактный Bootloader для AVR Tiny 45/85. Данный автозагрузчик распространяется под лицензией GNU GPL, как того требует лицензия V-USB. Основой для данного автозагрузчика послужил ATtiny85 USB Boot Loader от Embedded Creations и его потомок micronucleus-t85, используемый платами Digispark.
Также как и вышеупомянутые, TinyHID Loader основан на библиотеке V-USB.

Ключевые особенности:


  • Работает под ATtiny45 и ATtiny85
  • Компактен (2кб с базовыми функциями)
  • Расширяем (есть ряд дополнительных функций, включение которых увеличит размер)
  • Не треубет драйверов (что особенно важно под новые версии Windows)
  • Не работает с AVRdude, использует вместо этого кросплатформенное API на C#
  • Умеет обновлять сам себя

Читать дальше →

Введение в CMake

Reading time7 min
Views602K
imageCMake — кроcсплатформенная утилита для автоматической сборки программы из исходного кода. При этом сама CMake непосредственно сборкой не занимается, а представляет из себя front-end. В качестве back-end`a могут выступать различные версии make и Ninja. Так же CMake позволяет создавать проекты для CodeBlocks, Eclipse, KDevelop3, MS VC++ и Xcode. Стоит отметить, что большинство проектов создаются не нативных, а всё с теми же back-end`ами.
Читать дальше →

Bitmessage 0.3.5: Что нового?

Reading time2 min
Views29K


Крипто мессенджер Bitmessage продолжает свое активное развитие, новая версия принесла следующие функции:
  • Поддержка русского языка
  • Полностью анонимные децентрализованные чаты
  • Огромное количество баг-фиксов

Читать дальше →

Метод удаления подсетей из SBL или как мы заспамили Spamhaus

Reading time2 min
Views10K
Как образуются списки SBL Spamhaus и меньших его братьев, думаю, знают все. Вот и наши подсети попали в SBL Spamhaus. Все подсети. Включая IP почтового сервера.
image
Как мы решили эту проблему? Добро пожаловать под кат.

Читать дальше →

Сервис, помогающий найти на TaoBao «редкие» товары (+ немного халявного Google Translate API)

Reading time4 min
Views24K
Всех приветствую! Думаю очень-очень многие знают что такое TaoBao или по крайней мере слышали.

Для тех кто не знает: TaoBao — гигантская китайская торговая площадка, количество товаров на которой измеряется числом, близким к миллиарду. Там можно найти практически любой каприз вашей фантазии, причем довольно дешево. Но есть две проблемы: найти товар (весь сайт TaoBao и все описания на китайском) и доставить его (доставка на TaoBao только по Китаю)

Если вторую проблему легко решают множество посредников, то с первой все несколько сложнее. Если вы хотите найти что-то интересное, необычное или выходящее за рамки «обыденных товаров», то перед вами встанет трудность в виде языкового барьера

Примерно два месяца назад я пытался запустить свой интернет-магазин, ассортимент которого довольно уникален для России. Товары планировалось закупать на TaoBao. Задача поиска товаров и некоторые идеи упрощения этого утомительного процесса воплотились в идею сервиса-помощника. Некоторые рутинные действия можно было автоматизировать, что и было сделано. Что из этого получилось смотрите под катом.
Читать дальше →

Arduino watchdog или автоматический RESET в случае зависания

Reading time7 min
Views248K

Речь пойдет о том, как держать Arduino всегда в работоспособном состоянии. Механизм watchdog встроен в контроллеры Atmega, но, к сожалению, не всякий загрузчик (bootloader) Arduino правильно обрабатывает эту функцию. Попробуем разобраться с этой проблемой.

Итак, что такое watchdog? Простыми словами — это встроенный таймер на определенное время (до 8 сек в зависимости от чипа), который можно запустить программно. Как только таймер «дотикает» до нуля, контроллер подает правильный сигнал сброса (RESET) и всё устройство уходит в hard перезагрузку. Самое главное, что этот таймер можно сбрасывать в начальное состояние также программным способом.

  • Правильный сигнал сброса — достаточный по длительности для того, чтобы контроллер начал перегружаться. Иногда есть соблазн подключить к RST входу какой-либо цифровой выход Arduino и устанавливать его в 0 когда надо перегрузиться. Это плохой подход к решению проблемы, т.к. такого сигнала может быть недостаточно по времени, хотя и не исключено, что в некоторых случаях это тоже будет работать..
  • hard перезагрузка это самая настоящая перезагрузка, которая происходит при нажатии на кнопку RESET. Дело в том, что есть еще понятие soft перезагрузки — это программный переход на 0-вой адрес. В принципе, это тоже полезная вещь, но с помощью нее невозможно перегрузить зависший контроллер Ethernet или взглюкнувший LCD.

Короче говоря, встроенный watchdog это как раз то, что нужно и без дополнительных схем, пайки и соединений.
Читать дальше →

Недорогая альтернатива Arduino. Дадим шанс?

Reading time3 min
Views111K

TI LaunchPad MSP-EXP430G2


Что это?


Недавно мне довелось наткнуться на отладочную плату TI LauchPad MSP-EXP430G2. Похоже, что плата достаточно активно позиционируется как альтернатива другим МК такого же уровня как Arduino.
Интересно?

Мало выводов? Используем RESET

Reading time4 min
Views32K
Многие разработчики устройств на микроконтроллерах хотя бы однажды сталкивались с ситуацией, когда выбранный МК подходит по всем параметрам (быстродействие, объем памяти, наличие нужных функций), за исключением количества портов ввода-вывода. Особенно обидно, когда не хватает всего одной «ножки» и из-за этого приходится выбирать следующую модель чипа. Она будет занимать больше места на плате, потреблять больше энергии, наконец будет просто дороже стоить.

Чтобы сэкономить порт, разработчики прибегают к невероятным ухищрениям. Например, на одном форуме мне встретился способ управления сдвиговым регистром по одному порту (данные и тактовый импульс) через RC-цепочку. Некоторые такие способы приводят к снижению надежности работы устройства и ухудшению его повторяемости (зависят от параметров конкретного экземпляра микросхемы), поэтому прибегать к ним следует с осторожностью, проанализировав все «за» и «против».

Однако есть способ найти «лишний» порт, который прост, работает стабильно и может быть применен во многих случаях. Это — использование вывода RESET.

Два варианта такого использования, применительно к семейству 8-битных МК AVR фирмы Atmel.

Как масштабировать Meteor

Reading time4 min
Views7.6K
От переводчика: MeteorJS — открытый (MIT) фулстек JavaScript фреймворк (и клиент и сервер). Текущая версия 0.7.0 — в начале 2014 планируется выход версии 1.0. Публикации на хабре: 1, 2, 3.

Подготовка к масштабированию


Диаграмма компонентов:
image
Здесь три сервера Метеор, один MongoDb-сервер и HaProxy-сервер, как балансировщик нагрузки. Для поддержки SSL поставим Stud перед HaProxy.

Давайте обсудим компоненты и их настройку.
Читать дальше →

Открытый Терминальный Клиент — первый шаг

Reading time6 min
Views35K
Это первая моя статья на Хабр. Спасибо Хабру за предоставление этой возможности нашей компании.
Мы делаем конечное устройство — ультратонкий клиент — терминальный клиент для «всех» (RDP, VMWare, S.P.I.C.E. и другие) терминальных систем. «Всех» в кавычках потому что это пока не реализовано, но пути есть.
Сейчас готов прототип — плата DS-109 (размером 100мм*100мм) — CPU 1 ГГц, RAM 1 ГБ, NAND 4Гб,…

Закончено производство платы DS-110, характеристики платы opensourceclient.org/faq/specifications-ds-110

Ниже я кратко расскажу о пути, который привел нас под предводительством меня к нынешнему состоянию дел.
Рассказ

USB для AVR. Введение

Reading time4 min
Views89K

Речь пойдет об популярном интерфейсе USB, а именно как заюзать этот самый USB на простых микроконтроллерах AVR. Планирую написать несколько топиков с примерами кода и разъяснениями как со стороны микроконтроллера, так и со стороны компьютера. Конечно на просторах интернета полно всяческих примеров на данную тематику, но в лучшем случае это исходник в котором сам черт ногу сломит, да краткое, на страничку, его описание.

Начну с того, что ранее широко распространенные интерфейсы как COM, LPT, MIDI в настоящее время морально устарели, но ещё нередко присутствует на современных компьютерах и используется в промышленном и узкоспециализированном оборудовании. Так что для связи какой нибудь собственной железки с компьютером давно уже пора осваивать что-то другое. Как вариант ещё можно использовать всякие конверторы/переходники/эмуляторы, но они не всегда работают как оригинальный интерфейс, порождая массу проблем.

Всё хватит пустой болтовни, приступим к делу. Как использовать USB в собственных устройствах?
Читать дальше →

Индустриальная революция. Часть 2. Атомы – новые биты

Reading time3 min
Views18K
Продолжение захватывающей статьи из американского журнала Wired «In the Next Industrial Revolution, Atoms Are the New Bits» (в прошлый раз я рассказал о Rally Fighter – автомобиле, созданным «толпой»).

Коренные преобразования в любой индустрии происходят тогда, когда контроль над отраслью переходит от компаний, кланов, правительств, к рядовому человеку. Интернет сделал доступным широким массам издательское дело, телевидение и связь, что привело к радикальному увеличению участников в цифровом мире – длинной цепочке битов (the long tail of bits).

Теперь то же самое происходит и с производством – длинная цепочка вещей (the long tail of things).

image
Читать дальше →

TOP-50 достойных сайтов на LiveStreet

Reading time1 min
Views17K
Представляем подборку 50-ти достойных проектов на базе блого-социального движка LiveStreet.
Основные критерии отбора — оформление и функционал. Данный TOP не претендует на стопроцентную полноту и объективность, его цель — показать, что на LS можно построить достаточно уникальные и качественные проекты.

TOP-50

Все картинки кликабельны — открывается оригинал в PNG

Осторожно, трафик!

LiveStreet движок аля Хабра

Reading time2 min
Views12K
Добрый день.
Сегодня вышла в свет первая публичная версия моего движка блого-социальных сетей LiveStreet.
Движка, который попытался приблизиться к функциональности Хабра, и я думаю, у него это получилось.
Читать дальше →

Как мы пытаемся продать PVS-Studio в Google или очередные ошибки в Chromium

Reading time14 min
Views53K
PVS-Studio интегрируется в Ninja для проверки Chomium.


Когда мы пишем статьи про проверки каких-либо проектов с помощью PVS-Studio, то, как правило, у нас прибавляется клиентов. Тут все честно. Программисты не любят рекламу, но охотно отзываются на интересные материалы, которые легко проверить. Поэтому мы не рекламируем свой инструмент, а просто показываем, что он умеет. Однако, хотя мы проверили код Chromium уже три раза и трижды находили в нем ошибки, ордера с почтой в google.com в моей почте до сих пор нет. Поскольку мне интересно, что я делаю не так, и почему Google пока не использует PVS-Studio, я решил написать очередную статью.

Эта статья состоит из двух частей. В первой рассказывается об инфраструктуре проекта Chromium и нюансах интеграции, во второй приведены очередные найденные ошибки.

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

Хотите узнать, почему разрабатывать Chromium сложно и далеко не каждый инструмент для программистов может быть использован в проекте Chromium? Тогда читаем…

Читать дальше →

ZigBee. Совместимость устройств, профили приложений, кластеры, конечные точки, привязки

Reading time4 min
Views20K


Основное назначение сетей ZigBee – связь между устройствами в автоматизированных системах. Области применения сетей ZigBee – самые различные. Типы и назначение связываемых устройств – также весьма разнообразны. Связь может устанавливаться между выключателем и светильником в «умном доме», приборами учета и сервером сетевой обслуживающей компании, датчиком движения и пультом охраны. Возможно, просматривая этот топик, Вы, сами того не подозревая, пользуетесь сетью ZigBee – многие беспроводные мыши с USB адаптером 2,4 ГГц соответствуют ZigBee RF4CE specification.

В этом топике речь пойдет о регламентированных спецификацией ZigBee механизмах, обеспечивающих совместимость и взаимодействие устройств автоматики (приложений) через сеть ZigBee.
О построении и работе сетей ZigBee я писал в предыдущих топиках (можно посмотреть также здесь).

Читать дальше →

Представлен новый стандарт IEEE 802.22

Reading time2 min
Views6.9K


Главное отличие этого стандарта от предыдущих, например, 802.11, в «дальнобойности». Сигнал единственной передающей станции, без всяких там усилителей и репитеров, можно будет поймать на расстоянии до 100 километров. Впечатляюще, правда? Новый стандарт был представлен международной ассоциацией специалистов в области техники IEEE (Institute of Electrical and Electronics Engineers). Возможно, стандарт 802.22 заменит то, что есть у нас сейчас — 802.11 a/b/g/n.

Читать дальше →

Tor предлагают встроить в браузер Firefox как стандартную опцию

Reading time2 min
Views70K
В трекере Bugzilla зарегистрирован билет 901614, в котором предлагается улучшить безопасность браузера Firefox, внедрив в него анонимайзер Tor в качестве стандартной опции.

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

Если будет реализована инициатива по внедрению Tor в браузер Firefox, то «луковичный» анонимайзер станет стандартным средством для сёрфинга по Сети.
Читать дальше →

Information

Rating
Does not participate
Location
Тверь, Тверская обл., Россия
Registered
Activity