У большинства чипов есть возможность выбрать напряжение IO. Обычно это специальная ножка питания. Некоторые чипы поддерживают 1.8, что необходимо например одроиду.
Да, http update не очень стабильно работал пока я не заменил nginx (просто сервил файлы) на свой сервер, который выдает контрольную сумму md5 в заголовках.
Мне понравилось использовать PlatformIO вместо ардуины.
А для OTA имхо удобнее использовать стандартный HTTP update, запускать процесс командой через MQTT.
Правда для этого метода лучше использовать специальный сервер (или скрипт).
Я быстро набросал на го: https://github.com/vooon/esp-ota-server
Я не знаю, этот код работает только на линуксе, и вроде кто-то собирал под макось (но я не знаю результат). http://ru.cppreference.com/w/cpp/io/c/fprintf — но на платформе, где printf() не по стандарту нет надежды, что stdc++ будет соответствовать стандарту.
Еще нужно бы добавить assert на sz >= 0, но если sz = -1, то все равно должно будет упасть на resize().
Посмотрите как делает OpenWRT: системный образ в squashfs, настройки поверх через overlayfs.
Его можно собрать для малины, хотя я не пробовал. Не уверен, что squash нужен на SD, места то полно, но будет точно RO.
Сейчас уже лучше писать про версию 2.0, т.к. она совместима с 1.0 (выбирается через флаги).
2.0 уже поддерживается APM'ом и PX4. QGC пока в процессе перехода.
И еще, генератор поддерживает куда больше языков: Java, JavaScript, C#, Python, Object C, Swift.
А для C++ мне надоели неудобства C-lib и я написал C++11 генератор (вот только не знаю когда замержат).
Справедливости ради, debugWire есть в AVR Dragon, который одно время можно было купить за $50.
Правда за все время я им так и не воспользовался (только ISP), тогда как ST-Link порой использую.
Я не так давно написал бут для STM32F373, когда оказалось, что вызвать встроенный DFU-бут на F3 невозможно (баг в буте).
На F4 семействе кстати работает без проблем.
У меня бут прошивает с SD-карты, но на будущее — это не удобно.
Бут занял 27 КиБ, это Nil + HAL + FatFS + tinf (zlib inflate) + RIOT CBOR + SHA1.
Открыть модель (здесь скачанная с сайта Molex) и выделил саму модель. Второй элемент (473460001001) это чертеж посадочного места. А за тем экспорт в VRML 2.0.
Подготовить модуль по чертежам производителя (PDF от Molex)
Я уже немного подзабыл что нужно сделать (зимой осваивал), и кажется это нормально работало только на самых свежих версиях (сейчас уже в 16.04).
Если я правильно помню, то нужно выделить части делали в фрикаде, затем пункт меню экспорт выбрать формат VRML V2.0.
Еще есть сложность с подгонкой размера (дюймы или мм), kicad игнорирует теги VRML задающие размерность. Поэтому лучше все делать в миллиметрах. А потом задать scale:
У большинства чипов есть возможность выбрать напряжение IO. Обычно это специальная ножка питания. Некоторые чипы поддерживают 1.8, что необходимо например одроиду.
Да, http update не очень стабильно работал пока я не заменил nginx (просто сервил файлы) на свой сервер, который выдает контрольную сумму md5 в заголовках.
Мне понравилось использовать PlatformIO вместо ардуины.
А для OTA имхо удобнее использовать стандартный HTTP update, запускать процесс командой через MQTT.
Правда для этого метода лучше использовать специальный сервер (или скрипт).
Я быстро набросал на го: https://github.com/vooon/esp-ota-server
Спекулятивное исполнение на уровне микрокода тоже уже давно есть. Достаточно сравнить сколько микрокоманд ISSUED и RETIRED.
Добавьте про такие удобные варианты как, _NAMED, _COND, _THROTTLE.
После 0 — вам это не надо.
А так, построено на базе log4cxx, плюс обвязка, чтобы выдавать через топик /rosout.
Эх, уже почти два года как разрабатывают.
Одно DSP ядро там занято стеком PX4 (под QuRT RTOS).
Я не знаю, этот код работает только на линуксе, и вроде кто-то собирал под макось (но я не знаю результат).
http://ru.cppreference.com/w/cpp/io/c/fprintf — но на платформе, где printf() не по стандарту нет надежды, что stdc++ будет соответствовать стандарту.
Еще нужно бы добавить assert на sz >= 0, но если sz = -1, то все равно должно будет упасть на resize().
Я пользуюсь такой оберткой:
Она конечно хуже буста (нет проверки типов, хотя это делает компилятор), и не умеет работать со строками, но все же удобна.
Посмотрите как делает OpenWRT: системный образ в squashfs, настройки поверх через overlayfs.
Его можно собрать для малины, хотя я не пробовал. Не уверен, что squash нужен на SD, места то полно, но будет точно RO.
Я такой заводил с помощью u8glib.
Siemens C-35i :)
Не уверен, что APM 2.6 (что на atmega) уже поддерживает, проверь свежайшую прошивку.
https://github.com/mavlink/mavlink/tree/mavlink2-cxx11 но его нужно теперь переносить в pymavlink и слить в 3-4 коммита.
del
Сейчас уже лучше писать про версию 2.0, т.к. она совместима с 1.0 (выбирается через флаги).
2.0 уже поддерживается APM'ом и PX4. QGC пока в процессе перехода.
И еще, генератор поддерживает куда больше языков: Java, JavaScript, C#, Python, Object C, Swift.
А для C++ мне надоели неудобства C-lib и я написал C++11 генератор (вот только не знаю когда замержат).
Справедливости ради, debugWire есть в AVR Dragon, который одно время можно было купить за $50.
Правда за все время я им так и не воспользовался (только ISP), тогда как ST-Link порой использую.
На F4 семействе кстати работает без проблем.
У меня бут прошивает с SD-карты, но на будущее — это не удобно.
Бут занял 27 КиБ, это Nil + HAL + FatFS + tinf (zlib inflate) + RIOT CBOR + SHA1.
Сложно поймать гетеродин, если его нет. Эти рации построены на чипе RDA1846 — SDR триемо-передатчике.
Вот пример использования STEP-модели через FreeCAD. Скриншоты: http://imgur.com/a/ViWIs
Открыть модель (здесь скачанная с сайта Molex) и выделил саму модель. Второй элемент (473460001001) это чертеж посадочного места. А за тем экспорт в VRML 2.0.
Подготовить модуль по чертежам производителя (PDF от Molex)
Настроить "3D settings"
Я уже немного подзабыл что нужно сделать (зимой осваивал), и кажется это нормально работало только на самых свежих версиях (сейчас уже в 16.04).
Если я правильно помню, то нужно выделить части делали в фрикаде, затем пункт меню экспорт выбрать формат VRML V2.0.
Еще есть сложность с подгонкой размера (дюймы или мм), kicad игнорирует теги VRML задающие размерность. Поэтому лучше все делать в миллиметрах. А потом задать scale: