?

Log in

No account? Create an account
dimka_rs

> Recent Entries
> Archive
> Friends
> Profile
> My Website
> previous 10 entries

October 14th, 2018


01:52 pm - Simon Stålenhag

Originally published at Шалаш инженера. You can comment here or there.

https://www.simonstalenhag.se/


(Leave a comment)

October 8th, 2018


09:57 pm - Мой комментарий к «Аппаратные "закладки"» от klink0v

Вставлю своё видение. Теоретически, это возможно. Практически - масса нюансов.

1. Печатная плата. Вряд ли вредоносный контроллер был припаян проводочками вручную. Значит, начали с того, что изменили гербера, сделали посадочное место для контроллера и подключили его к нужными линиям. Измененные файлы пустили в серию. Допускаю, что платы производят сразу на нескольких заводах, т.к. большие многослойные платы делаются небыстро. Однако и оборудование для таких плат не в каждом подвале стоит, а значит под удар подставляются немногочисленные крупные компании. Если обман вскроется, потери будут огромные.

1.1. Трафарет для нанесения паяльной пасты обычно тоже делает производитель плат. В нём также нужно не забыть добавить отверстия под новый компонент, иначе пасту не нанесут и контроллер не припаяется.

1.2. Если контроллер встраивается внутрь текстолита, то делается это на этапе производства платы. Сейчас существуют wafer-scale корпуса, тут проблем не вижу, но сам с таким не сталкивался.

2. Сборка платы. Обычно это отдельная фабрика, которая занимается именно установкой и припайкой компонентов. Если чип не встроили в плату, то нас ждут две засады:

2.1. Закупить нужные вредоносные микроконтроллеры (желательно, уже прошитые, ибо совсем уж палево прошивать их у всех на виду), внести их в перечень устанавливаемых компонентов и добавить катушку в станок.

2.2. Доработать программу станка, чтобы он не забыл поставить вредоносный микроконтроллер.

Проще всего поменять документацию к производству.

3. Возможности такой закладки. Сильно маловероятно, что такая штука сможет иметь какой-то доступ к сети, слишком она слабая и медленная для быстрых сетевых инетрфейсов. Наиболее разумное предположение увидел сегодня то ли на хабре, то ли в профильном чатике. Заключалось оно в том, что чип перехватывает обращение к BIOSу или другому внешнему хранилищу, в котором могут быть настройки или пароли. Т.е. позволяет при наличии ограниченного доступа к железке поднять привилегии и ослабить настройки безопасности.


Т.е. сценарий хоть и возможный, но больно уж трудозатратный с непредсказуемым результатом. И предсказуемыми последствиями, когда (а не если) чип найдут. Надеюсь, было интересно :)

Посмотреть обсуждение, содержащее этот комментарий


(Leave a comment)

June 21st, 2018


11:07 am - Как прошить Nordic NRF52 с помощью ST-Link и OpenOCD

Originally published at Шалаш инженера. You can comment here or there.

Во-первых, понадобится собрать последнюю версию openocd из исходников:

git clone https://github.com/ntfreak/openocd.git
cd openocd
./boorstrap
./configure
make

По умолчанию configure включит поддержку некоторых программаторов, в том числе st-link. Если этого не произошло, значит не хватает каких-то зависимостей.

Далее, пишем скрипт:

#!/bin/sh
OPENOCD=/path/to/openocd
SOFTDEVICE=/path/to/nRF5_SDK_14.2.0_17b948a/components/softdevice/s132/hex/s132_nrf52_5.0.0_softdevice.hex

FW=$1
[ -z "$FW" ] && (echo "No fw given!" ; exit 1)

${OPENOCD}/src/openocd \
    -s ${OPENOCD}/tcl \
    -f interface/stlink.cfg \
    -f target/nrf52.cfg \
    -c init \
    -c "reset init" \
    -c halt \
    -c "nrf5 mass_erase" \
    -c "flash write_image ${SOFTDEVICE}" \
    -c "flash write_image ${FW}" \
    -c reset \
    -c exit

Цель для Makefile для Nordic SDK может выглядеть так:

OPENOCD := /path/to/openocd
SOFTDEVICE := /path/to/nRF5_SDK_14.2.0_17b948a/components/softdevice/s132/hex/s132_nrf52_5.0.0_softdevice.hex

flashst: $(OUTPUT_DIRECTORY)/nrf52832_xxaa.hex
    @echo Flashing: $<
    $(OPENOCD)/src/openocd -s $(OPENOCD)/tcl -f interface/stlink.cfg -f target/nrf52.cfg \
            -c init \
            -c "reset init" \
            -c halt \
            -c "nrf5 mass_erase" \
            -c "flash write_image $(SOFTDEVICE)" \
            -c "flash write_image $<" \
            -c reset \
            -c exit


(2 comments | Leave a comment)

February 25th, 2018


11:48 am - STM8 StdPeriph_Lib: UART1_ITConfig()

Originally published at Шалаш инженера. You can comment here or there.

Для общего развития ковыряю STM8 + SDCC + StdPeriph_Lib. Дошёл до уарта и обнаружил, что контроллер виснет на инициализации прерываний. Проблема где-то в uart.c:UART1_ITConfig(). Если вместо вызова функции сделать запись в регистр, то инициализация проходит и контроллер начинает работать. Выглядит функция не очень. Особенно меня впечатлила вот такая строка:

itpos = (uint8_t)((uint8_t)1 << (uint8_t)((uint8_t)UART1_IT & (uint8_t)0x0F));

Дело в том, что библиотека универсальная, а контроллеры могут сильно отличаться. Так что функция настройки прерываний сначала выясняет в каком регистре и с каким смещением находится нужный бит. Посчитать в уме что делает этот код я не смог и просто засунул его в сишник на компе, скомпилировал и запустил. Результат - 32, т.е. 5-й бит (RXNE), что сходится с даташитом. Смещение регистра вычисляется проще:

uartreg = (uint8_t)((uint16_t)UART1_IT >> 0x08);

UART1_IT в данном случае равен 0x255, т.е. в итоге мы должны получить 0x02, что тоже верно, флаг лежит в регистре UART1_CR2. Однако что-то всё равно идет не так. В итоге вместо вызова функции написал:

//UART1_ITConfig(UART1_IT_RXNE, ENABLE);
UART1->CR2 |= (uint8_t)UART1_FLAG_RXNE;

Так работает.

+++ UPD
На форуме ST пишут, что проблема с ассертом.


(Leave a comment)

February 17th, 2018


11:00 am - Муки выбора MP3 плеера

Originally published at Шалаш инженера. You can comment here or there.

Уже много лет не могу найти mp3-плеер, который бы меня устроил. Долгое время моим идеалом были iRiver’ы, последним хорошим плеером — Cowon iAudio 7. С тех пор хороших плееров мне не попадалось. Иногда я делаю попытки купить что-то подходящее, но каждый раз разочаровываюсь. В итоге решил составить список требований и опробованных плееров, чтобы не забыть.

Мой идеальный плеер:

  1. Запоминает место остановки и при включении продолжает с него;
  2. Перематывает треки быстро, 5-10 секунд за секунду. В идеале скорость настраивается;
  3. При перемотке назад из первых секунд файла перескакивает в конец предыдущего файла;
  4. Сортирует треки по алфавиту, а не по порядку попадания в FAT;
  5. Позволяет регулировать громкость сразу, без хождений по меню;
  6. Имеет большой экран на котором видно приличный кусок имени файла;
  7. После включения начинает играть музыку.

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

Digma S3

  1. Фатальный недостаток — плеер всегда включается на первом файле. Сразу в помойку;
  2. Скорость перемотки приемлемая;
  3. Перемотку назад не проверял;
  4. Сотрировка по алфавиту возможна через отдельный пункт меню;
  5. Громкость регулируется сразу;
  6. Большой экран занят фальшивым спектром, на имя файла остается 10, если не 7, символов;
  7. После включения попадаешь в главное меню. Явно воспроизведение музыки не было приоритетом.

Итог: 4 из 7, но всё множится на 0 первым пунктом.

BENJIE C-ONE

  1. Место остановки запоминает, но иногда сбивается. Почему — не понял;
  2. Скорость перемотки терпимая;
  3. При перемотке назад попадает в начало предыдущего файла. Т.е. в конец длинного файла можно попасть только перемотав его от начала до конца;
  4. Файлы сортируются только по фату, даже при выборе альбома/исполнителя;
  5. Громкость регулируется через меню. Если держал кнопку недостаточно долго, то попадаешь в главное меню и долго из него выходишь;
  6. Большой экран занят фальшивым спектром, но для имени файла остается много места;
  7. Включается плеер на паузе, нужно нажать кнопку воспроизведения.

Итог: 3.5 из 7. Тем не менее с этим плеером я хожу каждый день, потому что Cowon слушаю перед сном. Разделение именно такое из-за того, что у Cowon бесшумное сенсорное управление, а у Benjie очень громкие металлические кнопки, которые будят жену.

xDuoo X2

  1. Вроде бы запоминает место остановки;
  2. Скорость перемотки никакая, что сразу выкидывает этот плеер из кандидатов в хорошие;
  3. Поведение при перемотке назад не проверял;
  4. Порядок сортировки не проверял;
  5. Громкость, вроде, регулируется сразу;
  6. Экран небольшой, под имя файла отдана строка;
  7. Поведение после включения не помню.

Итог: моё знакомство с плеером было очень коротким — как только я увидел скорость перемотки, сразу убрал плеер в коробку и выставил на авито. Данных для взвешенной оценки маловато.


(Leave a comment)

December 20th, 2017


03:11 pm - Космическая Atmega

Originally published at Шалаш инженера. Please leave any comments there.

http://www.microchip.com/wwwproducts/en/ATMEGAS64M1

Microchip’s ATmegaS64M1 AVR® microcontroller (MCU) brings the automotive-leading AVR core with CAN capabilities to the aerospace industry. The ATmegaS64M1 MCU is designed for enhanced radiation, extended temperature and increased reliability in critical aerospace applications.

Ждем спутников на ардуине 🙂


 

01:58 pm - Развод на деньги

Originally published at Шалаш инженера. Please leave any comments there.

https://doktorbel.livejournal.com/745248.html

Развод старый, но английский текст просто шикарный — чем внимательнее читаешь, тем больше перлов находишь 🙂


 

December 9th, 2017


03:47 pm - Питер Уоттс — Ложная слепота, Эхопраксия

Originally published at Шалаш инженера. Please leave any comments there.

Потрясающая научная фантастика, под которую автор подводит весьма серьёзную теоретическую базу, показывая, что практически все описанные им события вполне могут произойти в недалеком будущем. Особую атмосферу создает аудиокнига в исполнении BlackTracktorist — высокий темп, минимальная, очень уместная музыка в начале глав. Присутствуют ошибки в ударениях, но они совершенно теряются в быстро разворачивающемся захватывающем сюжете. Очень рекомендую.


 

November 4th, 2017


09:21 pm - Игра про скрепки

Originally published at Шалаш инженера. Please leave any comments there.

Эта простая с виду игра отняла у меня сутки! Помесь кликера с экономической стратегией. Начинаешь с ручного производства скрепок и внезапно оказываешься повелителем мировой экономики. Рекомендую!

http://www.decisionproblem.com/paperclips/index2.html


 

October 6th, 2017


11:20 pm - CH376 — file manage control chip

Originally published at Шалаш инженера. Please leave any comments there.

Наткнулся на интересную платку и решил открыть рубрику интересных компонентов. Сегодня у нас аппаратная реализация FAT для работы с флешками и SD-картами.

Внешний вид платы:

Структурная схема:

Поддерживаются 3 интерфейса для взаимодействия с микрокнотроллером: параллельная шина, SPI и UART. Подключить можно USB-накопитель или карту SD/MMC. Выпускается в двух корпусах, отличающихся наличием/отсутствием параллельной шины.

Даташит

Модуль на Али


 

> previous 10 entries
> Go to Top
LiveJournal.com