esp32 Autoprogramming не работает

Господа и дамы, работающие с esp32, прошу помощи в локализации странного бага. У меня есть DevBoard от Olimex, на которой, почему-то, не работает Autoprogramming. Программер пытается, но ничего не выходит, пишет свои ....----...., после чего выпадает с ошибкой.

Если в это время начать нажимать на резет - иногда (не всегда, нужно 5-10 раз попытаться!) подхватывается.

[Вот схема того, что на плате]

В остальном все работает, порт открывается, make monitor работает. Есть подозрение на какой-то непропай, но какой и где? Прозвонил пока что EN (от кнопки до модуля и до транзистора) и gpio0 (от диода до модуля), ошибок не нашел. Номиналы основных деталей в этих цепях выглядят нормальными.

Странно, что на этом модуле нет внешней подтяжки на gpio0 (с аргументом, что есть внутренняя, OK) и нет конденсатора на EN к земле, хотя espressif его настоятельно рекомендует.

Подкинете идей, хотя бы что и как проверить? Спасибо!

ПС. А оно вообще у всех работает? Или я пытаюсь запустить то, что не работает в принципе? :):):):)

WiFi и стальной гроб

Всем превед, и я опять хочу странного.

У меня есть знакомый, который вписался в блудняк (честно! это не я! я бы такой фигни не сделал!). Суть проблемы, думаю, понятна из заголовка — есть устройство с вайфаем, которое по какой-то прихоти судьбы похоронили в плотно закрытом металлическом шкафу. Но коннект должен быть! Мы же коммунисты!

Если бы на устройстве был антенный разъем, всё было бы слишком просто. Но нифига. Это законченное фабричное изделие, антенна на печатной плате внутри, корпус пластиковый, гарантия, все дела. Т.е. открывать нельзя, вносить изменения в конструкцию нельзя, и так далее. Пыль смахивать тряпочкой можно, но аккуратно. Тем не менее, надо же что-то делать! Потому что... см выше, коммунисты мы или нет! Пулемет должен застрочить с новой силой!

Моё предложение заключалось в том, чтобы пропилить в шкафу дырку d=62мм (2.4 гига) или схожую по параметрам щель. Ну или, если это предложение не пройдет по эстетическим соображениям, вывести через кабельный ввод кусок RG-213, заголить ему кончик на 31 мм, оплетку тут же заземлить об шкаф, а внутри тем же кабелем изобразить что-то типа полуволнового диполя. Обещали попробовать.

Вопрос состоит в том, можно ли на коленке при небольшом увеличении затраченных усилий изобразить что-то заметно более эффективное? Если, скажем, дотянуть кабель непосредственно до корпуса устройства, то как изменить антенну для работы в ближнем поле (и будет ли от этого толк)? Да, антенного анализатора нет, спектроанализатора нет, даже банального радиосканера нет и не будет, и вообще, эксперименты хотелось бы свести к минимуму.

Никому не попадалось готового решения?

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

ППС. Предлагающим активные решения вроде репитеров, PLC и прочего — это сразу +50+100% к цене решения, что не есть хорошо, хотя и сгодится как запасной вариант.

ESP32 wired ethernet promiscuous mode

Господа и дамы, получится ли встроенный esp32-ethernet порт (не WiFi!!!) запустить в "promiscuous mode", чтобы сделать на этом чуде что-то похожее на wireshark?

Если кто-то считает, что да, может он тогда кинуть в меня примером кода для приема пакета в этом режиме? Мне нужно получить все пакеты, независимо от целевого IP.

Ожидаемая средняя скорость приема данных - около 100кбайт/с.

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

Подбора FPGA псто.

SYN ACK, джентльмены.

Задача:
Есть две однонаправленные параллельные цифровые шины, состоящий из трех линий. A1,A2,A3; B1,B2,B3. TTL/HCMOS.
fmax = 12 MHz

Есть две мелкосхемы, к которым эти шины надо коммутировать, соответственно, два выхода: Y1,Y2,Y3; Y4,Y5,Y6.

Есть две линии сигнала управления, которые управляют, откуда и куда послать данные.
Частота переключения сигналов коммутации - менее 1 Гц.

Итого, 12 ножек для данных + 2 для управления.
Напряжения питания - 3.3V.

Вопрос: необходимо подобрать небольшую FPGA, которая была бы оптимальна для решения такой задачи + evolution board для прошивки и отладки.

Заранее спасибо!

UPD:
Нашел EPM3032ALC44. Поругайте/отговорите.

__

Как правильно эмулировать EEPROM во флеш STM32?

Обычно занимают лишь одну страницу флеша, что кажется расточительным, особенно когда прошивка занимает 8кБ, а флеша 128кБ! Инициализирую так:
typedef struct{
	user_conf all_stored;
	char struct_end[0] __attribute__ ((aligned(FLASH_BLOCK_SIZE))); // this pointer provides size of structure multiple of page size
} flash_storage;

#define USERCONF_INITIALIZER  { \
	.userconf_sz = sizeof(user_conf)	\
    ,.id = "identifier" \
	,.dist_min = LIDAR_MIN_DIST			\
	,.dist_max = LIDAR_MAX_DIST			\
	}

static const flash_storage Flash_Storage __attribute__ ((aligned(FLASH_BLOCK_SIZE))) = {
	.all_stored = USERCONF_INITIALIZER
};

static const user_conf *Flash_Data = &Flash_Storage.all_stored;

И gcc помещает этот блок перед другими константами серии text. А мне нужно, чтобы он был последним и я мог использовать всю свободную память.

Ткните, пожалуйста, в примеры кода, где это реализуется правильно. Может, надо в линкере какую-то секцию указать и эту переменную с нужным смещением из линкера размещать?

P.S. Если кто знает ответ, можно себе увеличить карму на SO.

Подбор аккумулятора для Rapsberry Pi Zero - вопросы новичка

Задача - известен потребляемый ток некоторого устройства (пусть это будет Raspberry Pi Zero), известно что устройство будет питаться через преобразователь USB 5В 1А 134N3P (https://mcustore.ru/store/moduli-pitaniya/drajver-lipo-akkumulyatora-s-vyxodom-usb-5v-1a-134n3p/). Необходимо подобрать аккумулятор минимальных габаритов, пригодный для питания этого устройства.

При решении задачи возникло несколько вопросов:
1. Где можно узнать, какой максимальный ток разряда является допустимым для аккумулятора? На корпусе батареи обычно пишут только ёмкость (например 1100 mA*h). Если ёмкость 1100 mA*h - значит ли это, что максимальный допустимый ток аккумулятора - 1100 mA?
2. Как определить ток, потребляемый преобразователем от аккумулятора, если известен ток, потребляемый устройством от преобразователя? (То есть, насколько ток на входе преобразователя выше тока на выходе преобразователя?).
3. На что ещё нужно обратить внимание при выборе аккумулятора/конструировании устройства, чтобы всё было в первую очередь пожаробезопасно? Не произошло возгорания аккумулятора и прочих радостей.

Извиняюсь, если вопросы детские, просто я совсем начинающий.

Schematics: The Heroin Of Electronics Design

Доклад "Schematics: The Heroin Of Electronics Design" от Dave Vandenbout на KiCon 2019 заслуживает внимания. Вероятно не все видили этот пост от ramlamyammambam. Использовать Питон для создания принципиальной схемы с помощью утилиты skidl это свежо.



Вопрос клея

Здравствуйте, уважаемое сообщество. Ремонтировал намедни гарнитуру, пришлось разбирать дужку с помощью фена. После того, как собрал все обратно, оказалось, что изначально монолитное соединение уже не обеспечить. Присутствует люфт, что не очень радует. Хотел было внутрь термоклея немного дать и опять посадить на горячее, но боюсь, если придется разбирать повторно, то от термоклея будет гемор. Может есть какой-то вариант клея или герметика, чтобы был текучим как суперклей, но по консистенции после высыхания как силикон. Нужно чтобы он просто заполнил стык и уплотнил его, не склеивая намертво.


Как народ обычно делает "привод" к кнопкам ?

Дано: плата, на плате запаяны несколько мелких кнопок. От платы до морды - 2см. Нужно вывести кнопки на морду. Изделие не серийное - для себя, для дома, то есть особые понты не нужны, нужно чтоб жена/гости могли на кнопки удобно нажимать. (Сам-то я и отверткой в плату тыкать могу, но другим это не доверю)
Как это лучше сделать ? Разумный компромисс между "просто-быстро" и "красиво" :)