А сейчас я на v0.1 проекта on-air. Я смог достичь того, на что надеялся, на этом пути. Я узнал больше о разработке моделей, tensorflow и особенно. Хотя эта версия имеет некоторые явные отличия от того, что я описал для логического потока (ключевые слова, VAD), она достигает функциональной цели. Код, документы, изображения и т. д. для проекта можно найти в этом репозитории, а подробности проекта доступны на HackadayIO. Когда я вернусь к этому проекту и буду работать над v1.x, я сделаю обновления доступными для всех.

Пара мыслей, проработав это вечером пару месяцев:

  • Я действительно должен был обрисовать в общих чертах состояния, через которые должна пройти программа esp, а затем сопоставить их с задачами в цикле событий FreeRTOS. В то время как поток высокого уровня фиксирует поведение внешних систем, esp имеет наиболее подвижные части на уровне приложений, и именно на него влияет большая часть состояния.
  • Я хочу провести еще немного времени с C++ 14/17, чтобы понять подводные камни взаимодействия с C99. Я столкнулся с несколькими различными проблемами инициализации структуры и нашел несколько способов их решения. Я уверен, что есть веская причина для разных решений, но я не тратил на это много времени, поэтому мне нужно учиться.
  • Продолжая изучать esp-idf, я также хочу изучить некоторые работы esp hal. Я кратко изучил esp-adf и skainet, работая через on-air. Оба ориентированы на пару плат, но, похоже, имеют функциональность, которая будет интересна для различных устройств. Лучшее понимание HAL и компонентов, кажется, с чего начать.
  • Данные, особенно структурированные данные, будут по-прежнему оставаться большим препятствием для открытых моделей и для любого, кто сможет обучить модель для своих собственных нужд. Хотя такие источники, как Kaggle, arvix, data.world и другие, работали, чтобы помочь в этом, все еще существует пропасть между тем, что я могу получить дома, и тем, что я могу получить на работе. Кроме того, многие открытые наборы данных представляют собой числовые или текстовые наборы данных, в то время как видео, аудио и другие источники по-прежнему отсутствуют.
  • Документируйте заранее, документируйте часто. Слишком много раз я был настолько увлечен написанием кода или просто выполнением еще одной задачи, что к тому времени, когда я это делал, было трудно заставить себя подробно описать проблемы, с которыми я столкнулся, интересные открытия или даже успешные моменты. Я знаю, что иногда откладываю это, и разные части проекта не так хорошо задокументированы, или детали были потеряны в промежутке между днями.
  • Здесь осталось много интересных вещей, которые можно исследовать. Я понимаю, почему я так много слышал об esp, и с нетерпением жду возможности создать больше.

Первоначально опубликовано на https://burningdaylight.io 30 марта 2020 г.