ESP系列芯片专用下载器

专为ESP8266/ESP32系列芯片设计的USB下载器,解决产品开发中的安全性、成本和设计复杂度问题

一、这个是干嘛的

乐鑫的ESP系列芯片(ESP8266、ESP32等)采用串口下载程序,做PCB板的时候一般会把串口下载部分做到产品PCB上去,并留出USB下载接口到产品面板上。

传统设计存在的问题

  • 安全问题:发售的产品最好不要这样留程序下载口并暴露在设备外壳,会导致安全问题,总有一些别有用心或无心的人用这个USB接口搞事情。发售的产品最好是直接烧死eFuse。
  • 成本问题:每个产品都要在PCB板上设计和焊接USB下载部分的电路元件,这部分又是一般用户用不着的,白白增加产品成本。USB下载部分包括:USB接口、USB转串口的芯片、电源芯片、几个电阻电容、LED灯,成本加起来还是好几块钱了。
  • 设计复杂度问题:USB下载部分的电路在PCB上要占用一定空间,尤其在小型设备上PCB空间问题比较突出。同时设备外壳上也要考虑USB接口的开孔问题。这两方面都白白增加了产品设计的复杂度。

解决方案

把USB下载部分电路从产品拿出来,降低产品复杂度,提升安全性,降低成本。

只在产品PCB上留一个下载接口,把下载所需的IO引到接口上即可。把USB部分的电路单独做一个下载器,这个就是本项目的ESP下载器。

这个下载器的设计核心思想是将开发阶段需要的功能与最终产品分离,既降低了产品成本,又提高了产品的安全性和可靠性。

二、硬件设计

ESP下载器只是把USB接口相关的部分电路拿出来,所以没什么特别的。

防止反供电设计

唯一要说明的是download部分的防止反供电设计。

这里采用MOS管并巧妙利用USB接口的5V电压与download接口的3.3V天然电压差,来防止ESP产品侧对下载器供电。这样做的原因是:

  • 如果USB插口没插到电脑上,而如果CH340C芯片已经从ESP产品侧得到了供电
  • 当USB接口插到电脑上时,会存在有很大概率识别不到串口的问题

所以用MOS管来实现只有当USB接口插入电脑时,才对CH340C供电的目的。

这个设计巧妙地解决了串口识别问题,确保了下载器在各种使用场景下的可靠性。

三、外壳设计

外壳比较简单,但我还是做了2次才调整好。

设计迭代

  • 第1版:把LED做在了PCB正面,和4个螺丝同面,结果不仅存在与螺丝柱空间挤占问题,还有一面全是孔孔不好看的问题。
  • 第2版:把LED放到PCB背面,整体好多了。

产品设计往往需要多次迭代才能达到完美。这个外壳设计虽然简单,但通过两次调整解决了实用性和美观性的平衡问题。

四、成品展示

经过硬件和外壳的优化设计,最终成品既实用又美观。

这个ESP下载器解决了产品开发中的实际问题,降低了产品成本,提高了安全性,同时保持了专业的外观和可靠的性能。