:::: MENU ::::

CH340 USB to Serial driver

WCH라는 중국회사의 CH340시리즈의 맥용 USB to Serial Driver.

http://www.wch.cn/download/CH341SER_MAC_ZIP.html

만약 설치에 문제가 발생하면, 다음과 같은 작업을 한후 다시 설치한다.

1. 기존 드라이버 제거

sudo rm -rf /System/Library/Extensions/usb.kext

sudo rm -rf /Library/Extensions/usbserial.kext

2. 맥을 재시작

3. 드라이버 패키지 파일 재설치

4. 재부팅


3D Printer – S3G, X3G 파일 포맷

  • S3G는 “Sanguino3 Gcode”의 약자로 3D 프린터를 제어하기 위한 언어
  • 자세한 내용은 이 링크를 참고
  • Makerbot과 Sailfish 팀에서 기능을 추가해서 S3G와 구별하기 위해 X3G를 만듦
  • Makerbot 프린터는 gcode를 직접받아서 출력하지 않음
  • 따라서 ReplicatorG, MakerBot MakerWare, MakerBot Desktop 프로그램의 슬라이서에서 Gcode를 변환하는 기능이 있음
  • OctoPrint의 경우 다음 링크 참고

참고: http://www.sailfishfirmware.com/doc/details-s3g-and-x3g.html#x52-1340009.3



lsusb 명령어를 Mac OS에서 사용하기

리눅스에 있는 lsusb를 사용할 수 있는 프로그램: https://github.com/jlhonora/lsusb

다음과 같이 brew로 인스톨한다.

brew update && brew tap jlhonora/lsusb && brew install lsusb

다음과 같은 옵션으로 사용 가능.

List USB devices
  -v  Increase verbosity (show output of "system_profiler SPUSBDataType")
  -s  [[bus]:][devnum]
       Show only devices with specified device and/or
       bus numbers (in decimal)
  -d  [vendor]:[product]
       Show only devices with the specified vendor and
       product ID numbers (in hexadecimal)
  -p  Display manufacturer names in parentheses
  -t  Dump the physical USB device hierarchy as a tree
  -V  Show version of program
  -h  Show usage and help

CP2104 레퍼런스 회로도

CP2014는 USB to UART bridge 칩이며, 데이터 시트에 보면 다음과 같은 레퍼런스 회로가 있다. REGIN 핀은 레귤레이터 입력핀인데, 이 회로도에서는 여기에 VBUS핀과 같이 연결을 해 놓고 있다. CP2104의 TX, RX가 시스템의 MCU의 RX, TX와 연결이 되어 있는 경우에는  일반적으로는 USB 케이블을 연결하는 순간 VBUS와 REGIN에 전압이 가해지면서CP2104의 TX값이 low로 되면서 시스템 MCU의  RX값이 바뀌게 된다. 따라서 시리얼 입력을  처리하는 루틴이 제대로 동작을 하지 않을 수 있다. 해결책은 REGIN의 입력을 VBUS가 아닌 시스템 전원으로 바꾸면 해결이 된다.


하드웨어 스타트업에서 제품 개발시 유의 사항

몇년전 킥스타터에서 펀딩에 성공한 프로젝트인 TIKO 3D프린터가 회사를 닫는다고 공지를 했다. 제품은 겨우 4천대 정도 미주지역에 배송을 했고, 전세계에 배송할 수만대분을 포기한 상태이다. 기술적인 혁신을 통해 비용을 줄여서 매우 값싼 3D 프린터를 개발한다고 되어 있었는데, 내용을 보니 기술적으로 해결하지 못한 부분도 있고, 프로토타입이 검증이 되기 전에 펀딩금액으로 이미 부품들을 주문해 버리기도 했으니, 어쩌면 당연한 결과이다.

하드웨어 스타트업에서 제품 개발시 유의 사항

고객군을 세분화하라.

Look for a sub-group of users in your target market and focus on them

제품의 기능을 설명하는 대신 혜택을 이야기 하라.

Most users care about what a product does, not how a product does it.

제품의 한가지 기능에 집중하라.

Focus on finding the single reason a customer would use this product and extend a limited feature set out of this single reason.

최종 제품전 작은 수의 시생산으로 제대로 동작하는 제품을 만들라.

The best hardware startups iterate early and often by making multiple runs of small numbers of units as they hone in on the right product.

참고자료: Hardware startups should lower user expectations


Makerbot, Prusa 그리고 3D 프린팅 시장

최근 메이커봇이 인원을 30% 감원한다는 기사

여기서 Makerbot과 Prusa의 현재 상황과 3D 프린팅 시장을 알 수 있다.

consumers are incapable of 3D design, fixing wonky machines and desire 3D models that aren’t easily found

  • 고객들이 아직은 3D 디자인을 할 수 없고
  • 기기에 문제가 생길 경우 해결이 안되며
  • 원하는 3D 모델을 찾기 여러움

그래서 시장은 아직 일반인 대상이 아니라 DIY community인데, 이쪽을 포커싱하고 있는 Prusa의 경우 90명 정도의 스텝이 월 3천대 이상을 판매한다고 함.


USB 하드웨어 디자인 가이드

USB 하드웨어 디자인 가이드

  • GND, 샤시에 FB
  • 15 Ohm Termination resistor
  • ESD 인증에 문제가 있을 경우 protection device – NXP IP4220CE6
  • Common mode choke – Murata plw3216s900sq2t1
  • 2개의 USB 신호쌍은  parallel 하게하며, 간극은 최대 150 mil을 넘지 않도록
  • 신호선의 최대 길이는 18인치를 넘지 않도록

참고자료


Ultimaker 3 내부 구성

Meet the new Ultimaker 3

Ultimaker 3의 특징 – Ultimaker 3 Spec.

  • 듀얼 노즐:서포트를 쉽게 제거하기 위해 물에 녹는 재질의 필라멘트 사용가능
  • 쉽게 교체 가능한 노즐
  • 향상된 쿨링 시스템
  • 상태를 나타내는 LED
  • Wi-Fi & USB stick 지원: Wi-Fi는 Local에서만 지원된다.
  • 카메라 지원
  • Active bed leveling

Ultimaker 3 내부 구성

A20 LIME2 Linux보드 & ATmega 보드

위 블럭다이어그램에서 보듯이기존 UM2의 경우에는 메인보드에 ATmega2560칩이 있었으나, UM3는 Connectivity를 추가하기 위해 A20 LIME2 Linux보드가 메인이 되고, 기존의 Atmega보드는 실시간 처리가 필요한 모터제어에만 사용이 되었다. 이 보드에 카메라 및 WiFI, Ethernet, USB Host, NFC 리더가 있는데, NFC리더는 필라멘트에 붙어 있는 NFC 테그를 태깅하기 위해 사용이 된다. WiFi의 경우 USB to WiFI 동글이 사용되는데, 앱을 확인해 보니 Local network에서만 사용이 된다.

프린터 헤드 보드

레벨링을 위한 센서 /  쿨링팬 / LED 제어 / 노즐의 온도 컨트롤 및 사용시간 체크를 위한 EEPROM이 있다.

네트웍을 통한 원격제어

REST API를 사용해서 원격 제어가 가능하다. 즉 http://10.180.1.209/api/v1/system/hostname 이런 형태로.. 관련 내용은 https://ultimaker.com/en/community/23283-inside-the-ultimaker-3-day-2-remote-access-part-1 에서 확인할 수 있다.

참고자료


Jlink를 사용한 nRF51 flashing

지난번 nRF51개발 환경 포스팅에 빠진 부분인 flashing 부분

nrfjprog – Programming Tool

nrfjprog는 nRF5x-Command-Line-Tools의 번들 프로그램으로 SWD를 이용해 펌웨어 이미지를 로딩한다.

nrfjprog:

/* Optional: erase target if not already blank */
nrfjprog --family <nRF51/52> -e 
/* Load FW image to target */
nrfjprog --family <nRF51/52> --program _build/<name>.hex
/* Reset and run */    
nrfjprog --family <nRF51/52> -r

JlinkExe:

/* Open Jlink Commander from terminal in _build directory */ 
JLinkExe -device <nRF51/nRF52>
> erase // Optional: erase target if not already blank
> loadfile <name>.hex // loads FW
> r // Reset and halt
> g // Run
> q // Exit

JlinkExe -device nrf51822_xxaa -if swd -speed 4000


Pages:1...11121314151617...56