I don't know when to quit! But I know when do I quit!

분류 전체보기 133

GoPro 동영상 파일명을 날짜 형식으로 변경하는 프로그램

언제 부터인가 (라고 하기엔 오래 전부터...) 고프로가 동영상을 찍으면 GH010069.MP4 이런 식으로 이름이 붙습니다. 앞에 2자리 숫자가 일련 번호, 뒤에 숫자가 촬영 번호라 정렬도 안되고 촬영 날짜를 알기도 힘듭니다. Mp4 헤더의 Creation Date에는 정상적으로 기록이 되는데, 이 정보를 가지고 파일명을 변경하는 프로그램입니다. 찾다 찾다... 그냥 만들었습니다. 혹시라도 고프로 파일명의 구조가 궁금하신 분은 여기에.. https://community.gopro.com/s/article/GoPro-Camera-File-Naming-Convention?language=ko 고프로 뿐만이 아니라 동영상이나 음원 헤더에 생성 날짜가 기록된 정보만 있으면 변경이 가능합니다. 헤더에 포함된 시..

Diy -자작 2023.01.21

리버스 엔지니어링을 하는 과정들... 3/n

2번째 글을 적고 시간이 많이 지나 버렸네요. 지난 번에는 대략적인 HW 구성을 봤습니다. 이번에는 실질적인 통신 분석을 진행 해봅니다. 다행히도(?) 컨텍터 부분에 Tx, Rx 라는 명칭이 있어서 시리얼 통신이라는 것을 알 수 있습니다. 컨텍터와 CPU 사이에 다른 신호 변환 부품이 없기 때문에 TTL Level 의 시리얼 통신으로 확인이 됩니다. 아래 사진과 같은 방식으로 오고 가는 통신을 가로채서 어떻게, 그리고 어떤 데이터를 주고 받는지 확인을 합니다. 시리얼 통신은 Tx 는 송신만, Rx 는 수신만 합니다. 따라서 저 통신을 모두 가로채기 위해서는 2개의 USB 시리얼 컨버터를 이용해서 Rx 부분에 모두 연결을 해서 가로채는 방식을 써야 합니다. 적당히 배선을 연결합니다. 보통 구하기 쉬운 US..

Diy -자작 2023.01.21

리버스 엔지니어링을 하는 과정들... 2/n

리버스 엔지니어링 대상 제품은 바로... https://www.clien.net/service/board/use/16440744 사진 왼쪽의 이쁘장하게 생긴 차량용 그래픽 LCD OBD2 속도계입니다. 왜 하려고 하느냐? 첫번째 문제는 이 제품은 OBD2 단자에서 전원과 통신을 받아옵니다. OBD2 단자는 12v 상시 전원이 연결되어 있습니다. 즉 시동을 꺼도 제품은 켜져 있습니다. 배터리 방전의 원인이 되죠. 그래서 이 제품은 이런 방식으로 배터리 방전을 보호합니다. 차량 RPM 신호와 속도가 0이면 차량이 주차되어 시동을 끈 상태로 인식을 하고 제품이 꺼집니다. 일반 내연기관 차량에서는 뭐 괜찮은 방법입니다. 근데 하이브리드 차량에서는 배터리 운행 중 신호에 걸려 주차를 하게 되는 상황에서 시동이 꺼..

Diy -자작 2023.01.21

리버스 엔지니어링을 하는 과정들... 1/n

리버스 엔지니어링을 해보자. 리버스 엔지니어링은 흔히 말하는 해킹이랑 비슷한 개념입니다. 기존에 있는 제품이나 시스템을 분석해서 헛점을 뚫으면 해킹, 대체품이나 복제품을 만들면 리버스 엔지니어링이죠. 대체품이나 복제품을 만든다는게 꼭 불법은 아닙니다. 제품 제조사가 도산을 했거나 전체 중 일부만 개선이나 개량을 해야 할 경우등에 많이 사용을 합니다. 또는 기존에는 시리얼 통신 시스템이였는데 , 이것을 이더넷 통신 시스템으로 변경하기 위해 중간에 컨버터를 개발하는 경우도 있죠. 이런 경우 기존 제품은 그대로 두고 통신 라인만 건드리는 작업을 하게 됩니다. 저도 이런 저런 작업을 진행 봤기에.. 이번에는 개인적인 이유로 리버스 엔지니어링을 하는 과정을 올려 볼까 합니다. 제목에 1/n 이라고 적은 것은 언제..

Diy -자작 2023.01.21

arduino를 이용한 TRDP PC104 인터페이스 테스트용 보드

업무용이든 개인용이든 잡다하게 만드는게 많은데, 기록을 남기고자 하나 둘 올려 보려고 합니다. 철도 차량용 제어기나 관련 전장품을 만드는 회사를 다니고 있는데, 지금은 기존의 HDLC나 RS-485 계열의 통신에서 MVB 통신을 지나 이더넷 기반으로 넘어가는 초입 단계입니다. 철도 차량용 통신은 이미 TCN 에서 진행하고 있으며 WTB (Wired Train Bus)나 MVB (Multifunction Vehicle Bus)도 여기에 포함되어 있고, 이더넷 기반으로는 TRDP (Train Real-time Data Protocol)가 있습니다. 제가 다니는 회사에서는 자체적으로 MVB 표준 문서를 이용하여 순수하게 자체적으로 제품 제작을 진행 했으며 , 이미 여러 프로젝트에 납품 및 설치 운용이 되고 있..

Diy -자작 2023.01.21

NodeMCU를 이용한 Wifi AP 스캐너

업무용이든 개인용이든 잡다하게 만드는게 많은데, 기록을 남기고자 하나 둘 올려 보려고 합니다. 불법적인 용도는 아니고, 업무용으로 Wifi AP 를 검색 할 일이 있어서 만들어봤습니다. NodeMCU (ESP8266)에서 검색하고 USB-시리얼로 PC SW 에 전송하는 겁니다. 안드로이드나 NodeMCU 나 일반 PC 나 Wifi 를 검색하게 되면 검색하는 순간에 검색된 장치만 나타납니다. 그래서 전체 목록을 보기 힘들죠. 어떤 장치는 보이다가 안 보이기도 하고요. 특히 신호 강도가 낮은 경우는 더 그렇죠. NodeMCU 그냥 NodeMCU에 있는 Wifi AP 스캔 예제를 그대로 이용했습니다. 다만 시리얼로 출력하는 부분과 Hidden SSID 가 나타나도록 했고요. 제가 사용하는 Ya~G 에 플러그인..

Diy -자작 2023.01.20

미세 먼지 측정기 자작 하실 분, 깃허브에 올려 두었습니다.

미세 먼지 측정기 자작 하실 분은 아래 깃허브에 올려 두었습니다. https://github.com/dudals-jung/Arduino-M5Stack_BME280_PMS7003 CPU, LCD, 배터리 모듈인 M5Stack 40달러 정도. 미세 먼지 센서 PMS7003 13달러 정도 온도, 습도, 기압 센서 BME280 5천원 정도 그외 약간의 납땜 가능한 도구 정도와 아두이노 개발툴 입니다. PM 2.5 PM10 은 국내 기준으로 설정했는데, PM1.0 은 안 보이길래 PM2.5 와 같이 했습니다. 아두이노 사용하시는 분은 꼭 M5Stack 가 아니더라도 다른 아두이노 제품에 붙이는데는 어려움은 없을겁니다.

Diy -자작 2023.01.20

half D.I.Y 자동차용 LCD 속도계

마음에 드는 HUD 는 없고, 구간 단속를 하는 곳이 많다 보니 속도는 자주 봐야하고, 속도계를 보려니 시선은 아래로 내려야되고.. 그래서 만들어서 사용하는 차량용 속도계입니다. GPS 모듈을 이용한 건데요. 재료비가 만원 정도 되었죠. 만물상이라고 폐업하거나 사업을 접은 곳의 제품이나 재료를 파는 곳이 있는데, 거기에서 카드 사인을 하던 단말기를 5천원에 사서 LCD 와 콘트롤러를 뺐고, GPS 수신기를 3천원인가 5천원인가 주고 사서 재료비는 만원 정도 들었었네요. 차에서 보면 요렇지요. 속도 근데 GPS 백업 배터리 상태가 좋지 않은가 위치 잡는데도 오래 걸리고(출근하는 동안 한번도 안되는 경우도 있고요), 요즘은 터널들도 많다보니 GPS 가 의미 없을 때도 있고요. 그래서 차량 OBD-2 에서 신..

Diy -자작 2023.01.20

포터블 STM32용 Programmer 만들기 시도 중.

까먹을까봐 올려 둡니다. 완료 목표는 ST-Link 의 동작을 모방하는 수준까지 한 한달 정도 예상 함 Data 핀이 St-Link에서 송신하거나 타켓 보드에 송신하는 경우가 어느 경우인지를 찾는 것이 관건인 것으로 보임 SWD관련 자료 찾기가 쉽지 않음 Github 에 유용한 일부 소스가 있으나 설명이 별도로 없음 목표 : STM32F4 , STM32F7 시리즈용 포터블 Programmer 만들기 구상 : M5stack 를 이용해서 저장된 Hex 나 bin 파일을 STM32F4, STM32F7 시리즈에 직접 다운로드 할 수 있도록 한다. Jtag 말고 SWD 를 이용한다. I2C와 비슷하게 Clock 과 Data 만 사용 함 로직 및 프로토콜 아날라이져를 이용해서 ST_Link 의 동작을 분석해서 직접..

Diy -자작 2023.01.20