상용 제품에 CH340G를 사용하는 것이 끔찍한 아이디어입니까? [닫은]


12

상당히 적은 양 (수백)으로 생산 될 틈새 제품을 개발 중입니다. Atmega uC를 사용하고 있으며 요구 사항 중 하나는 사용자가 현장에서 플래시를 사용할 수있는 기능입니다. 저의 계획은 USB-UART IC와 함께 Arduino 부트 로더를 사용하는 것입니다.

많은 선택이 있습니다. 현재 프로토 타입 보드는 FTDI FT232RL을 사용하고 있지만 전체 보드의 가격대가 약 $ 20이므로 생산에 너무 비쌉니다.

내가 고려한 IC는 다음과 같습니다.

  • CH340G
    • 가장 저렴한 옵션이지만 OSX 용 서명 된 드라이버의 상태는 무엇입니까? 이것이 완전히 플러그 앤 플레이인지 여부를 결정할 수 없습니다. 누구 든지이 상태가 무엇인지 알고 있습니까?
  • CP2102
    • 견고하고 서명 된 드라이버 등에 대해 걱정할 필요가 없습니다. 그러나 더 비쌉니다.
  • MCP2200
    • 또한 서명 된 드라이버에 대해 걱정할 필요가 없습니다. CP2102와 비교하여 이것을 어떻게 선택합니까? 그들은 거의 같은 가격입니다.

서명 된 드라이버 이외의 다른 선택 사항이있는 다른 "gotchas"가 있습니까? 사용자가 서명되지 않은 드라이버를 설치하거나 재 플래시 절차에 잠재적으로 고통스러운 프로세스를 추가하고 싶지는 않지만 실제로 사용자 플래시 기능을 위해 BOM 비용에 2 달러를 추가하고 싶지는 않습니다.

일반적인 지침 / 조언이 유용 ​​할 것입니다. 감사.


3
사용자가 실제로 다시 플래시를 원할 경우 구입할 수있는 별도의 케이블을 제공 할 수 있습니까? 또는 제품 사용시 재 발광이 필수적입니까?
DKNguyen 2016 년

많은 다른 시나리오에서 사용될 수 있으므로 제품을 사용하려면 재 플래시가 필수적이며, 나중에 다른 애플리케이션에 대해 고객이 완전히 재구성 할 수 있어야합니다.
willem.hill

한 고객이 보통 하나의 장치 만 가지고 있습니까? 고객 당 많은 결정이있는 경우 Chetan Bhargava 가 좋은 옵션 일 수 있습니다. 프로그래밍 인터페이스를 장치 자체와 분리하십시오.
jcaron

CH340을 사용하고 문제를 해결하기 위해 CP2104로 전환해야하는 제품의 예 : github.com/sqfmi/badgy#rev-2b
jcaron

더 좋은 질문은 CH340 칩을 구입할 수 있습니까? 내가 마지막으로 확인했을 때 그것을 운반하는 미국 공급 업체는 없었습니다.
CrossRoads 2016 년

답변:


26

가장 간단한 옵션과 여기에서 권장하는 옵션은 기본적으로 USB를 지원하고 USB DFU (Device Firmware Update) 부트 로더로 프로그래밍 할 수있는 마이크로 컨트롤러를 사용하는 것입니다. 이러한 마이크로 컨트롤러의 한 예는 Arduino Leonardo에서 볼 수 있듯이 ATmega32U4입니다. 다른 하나는 ST STM32F103입니다. 이러한 마이크로 컨트롤러가 다른 것보다 약간 비싸더라도 비용 증가는 개별 USB UART 인터페이스의 비용보다 적을 수 있습니다. 단일 부품을 사용하면 장치의 전체 크기와 전력 소비도 줄어 듭니다.


16U2는 OS X와 ​​호환되는 Arduino Uno 및 Mega에서 사용되는 일반적인 옵션입니다.
Greenonline

1
@Greenonline 제가 언급 한 32U4와 동일한 제품군으로 더 작은 버전입니다.
duskwuff -inactive-

8

최신 버전의 MacOS가 포함 된 CH340 용 Apple 제공 드라이버가 있습니다. "AppleUSBCHCOM".


2

일반적으로 고객에게 기기를 플래시 할 수있는 기능을 제공하는 경우 고객이 기기를 손상시키지 않기를 바랍니다.

따라서 가장 우선적으로 제공하는 것은 호스트 장치에 대한 견고하고 안전한 연결입니다. 내 경험상 모든 칩은 도시 및 실험실 환경에서 다소 잘 작동합니다.

구성 요소가 제대로 작동하는 데 필요한 시간도 고려하십시오. 생산 수는 수백 달러에 이르며 각각에 2 달러를 더합니다. 그 "손실"이 귀하의 (또는 개발자의) 시간보다 더 가치가 있습니까? 잘 문서화 된 칩은 실제로 더 많은 비용이 들더라도 더 나은 선택 일 수 있습니다.

CH340

네, 적어도 플러그 앤 플레이를 원한다면 정말 나쁜 생각입니다. Win 8.1의 경우 CH340SER.exe영어 번역이없는 (중국어) 제조업체 웹 사이트에서 다운로드 해야하는 드라이버 ( ) 를 수동으로 설치해야했습니다 .

중국에서 개최되었는데, 이는 보안을 염두에 둔 개인과 조직 및 / 또는 정치적 규칙에 구속 된 사람들에게 문제가 될 수 있습니다. 또한 많은 모호한 "무료"드라이버 다운로드 사이트로 인해 검색 결과 순위보다 높았습니다.

이것이 Arduino와 "중요한"장비가 아닌 심각한 장비라면 내 눈썹을 천장으로 올릴 수 있습니다. 고객에게 플래시 전용 장비가없는 경우 수동 설치는 매우 성 가실 수 있습니다.

그렇지 않으면이 칩이 예상대로 작동했습니다.

CP2102

할 말이 많지 않고 즉시 사용 가능하며 아무런 문제도 제기하지 않았습니다. 아마 평범한 디자인을위한 나의 선택 일 것입니다.

FTDI

독립형 USB-Serial 컨버터 보드 에이 제품이 있으며 제대로 작동합니다. 당신이 쓴 것처럼, 그것은 다소 비싸지 만 거친 환경 (예 : 커넥터의 부식 된 접점, EMI)에서 더 나은 선택이라고 생각합니다. 원래 개발자를 지원하기 때문에 따뜻한 퍼지 느낌을 줄 수 있습니다.

다른 아이디어

ISP

@Chetan Bhargava의 답변에 따라 SPI 용 커넥터를 가지고 독립형 USB 직렬 변환기를 사용하는 옵션이 있습니다.

또한 ISP에 연결할 수있는 안정적이고 안전한 커넥터를 제공해야합니다. 분명히 여기에서 핀 헤더로 저렴하게 갈 수 있지만, 올바르게하고 싶거나 고객을 충분히 신뢰하지 않으면 이 커넥터가 추가 칩 및 재고 USB 커넥터보다 비용이 많이들 수 있습니다. 직렬 연결은 작동하지 않으면 디버그하기가 어렵습니다. USB와는 달리 고객은 USB 장치가 작동하지 않는다는 알림을받습니다.

보드와 함께 독립형 변환기를 번들로 제공하는 경우 변환기 보드의 가격도 지불해야합니다. 나는 이것이 칩을 통합하는 것보다 저렴하지 않다고 가정합니다. 각 고객이 많은 보드를 소유하고 있다면 변환기를 재사용 할 수 있거나 프로그래머를 고객 측으로 확보하는 데 드는 비용을 삭감 할 수있는 경우에 효과적입니다.

이 옵션이 가능하다면이 시점에서 Atmel의 고유 한 AVRISP도 있는데, 이는 약간 오래된 것이지만 일반 USB 대 직렬 대신에 여기에 적합한 선택입니다. 현대 USB 직렬 변환기가 메가 비트 범위에 들어가는 약 100 또는 200kbps에서 작동한다고 생각합니다. 그러나 (미스) 사용과 관련하여 매우 강력합니다.

또 다른 좋은 옵션은 TC2030 커넥터 일 수 있습니다. PCB의 패드 만 있으면되지만 일부 전문 지식이 필요합니다 (프로그래밍이 완료 될 때까지 제자리에 고정해야 함).

통신 인터페이스

최신 마이크로 컨트롤러에는 여러 가지 다른 통신 인터페이스 (이더넷, WiFi, Bluetooth)가 제공되며 일반적으로 이러한 인터페이스를 사용하여 플래시 할 수 있습니다. 예를 들어 약 6 USD의 비용이 들고 Wi-Fi 연결에 필요한 모든 구성 요소가 포함 된 SoC 인 ESP32 가 있습니다 . 또한 Arduino와 호환되며 (IDE를 사용할 수도 있음) WiFi OTA 부트 로더를 포함하여 매우 철저한 예제 세트가 있습니다. 부트 로더의 초기 배포에는 ISP 만 필요합니다.

질문에 들리 듯이 프로젝트가 대부분 완료되면 더 이상 옵션이 아닐 수 있습니다.


-2

제품을 현장에서 프로그래밍 가능 / 플래시 여기에 이미지 설명을 입력하십시오케이블로 사용하려면 공통 헤더 핀 출력을 사용해야합니다. Arduino 핀아웃은 매우 일반적입니다. 업데이트가 매주가 아닌 경우 USB- 직렬 변환기를 내장 할 필요가 없습니다. 현장 설치의 경우 현장 프로그래밍 기능보다는 현장 프로그래밍 장비 비용을 증가시킵니다.


덜 자주 깜박이는 경우 직렬 변환기를 내장 할 필요가 없습니다.

일반적인 (그리고 저렴한) USB- 직렬 변환기는 다음과 같은 칩셋을 기반으로합니다.

FTDI-Windows 및 Linux 드라이버이지만 드라이버가 케이블을
차단할 수 있습니다 -CH340은 피하십시오 -Windows 및 Linux 드라이버 PL2303
-Windows 및 Linux 드라이버

드라이버는 Windows 및 Linux 플랫폼에서 쉽게 사용할 수 있습니다. 나는 애플 노트북을 감당할 수 없어서 애플에 대해 많이 말할 수 없다.

현장에서 프로그래밍 할 확률이 <50 %이면 USB-Serial을 프로젝트에서 제외시킵니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.