2021년 6월 2일 수요일

Hyper M.2 SSD를 제대로 써보자.

 1. 새로운 시작

 19년 하고도 6개월을 넘게 다닌 회사를 최근에 나왔다. 거참 오랜 세월 한 회사에서 일한 듯 하다. 기존까지는 2012년도 모델의 Mac-mini로 10년 가까이 버티었는데, 일하는 종류가 바뀌고 나니 Windows PC가 절실하게 되었다.  수년 전에 마눌님의 PC도 베어본으로 조립해 드린터라 이번에도 아무 생각없이 베어본 PC를 조립하게 되었다.  또한 친숙한 회사가 있어서 그 회사의 메인 보드를 선택하게 되었다. 

[ DeskMini H470 ]

2. 끝없는 고민

 메인보드의 설명서를 살펴보면서 알게 되었는 것이 이 보드는 Hyper M.2 슬롯을 지원한다는 것이었다. 폭풍 검색을 통하여(실은 대충 검색) PCle 4.0 NVMe 라는 것이며 기존의 NVMe (일명 Ultra M.2) 대비 2배 이상 빠르다는 것을 알게 되었다.  물론 관련 설명과 함께 표시된 내용은 11세대 CPU에서만 지원 가능하다고 적혀 있었다.

 급 생각이 들은 것이 저장장치인데, 가격이 비싸지 않다면 Hyper M.2로 하면 어떨까 생각되었다. 역시 검색을 통하여 그리 비싸지 않다는 것을 알게 되었다. (500 GB 정도 구매 한다면 SATA 방식의 SSD 보다 약간 더 비싼 느낌 정도). 여러가지 글을 읽어 보면서 이전 방식보다 속도가 빨라진 반면 발열도 어느 정도 있다고 해서, 방열판까지 구매했다. (읔.. 이건 정말 필요한 것인지는 나중에 다시 검토해야 할 듯 하다..뭐.. 이미 구매 했으니 쓰겟지만은....) 

- 2023.02.17 추가 : M.2 저장장치는 생각보다 발열이 심하고, 웹검색을 해보니 뜨거워지면 성능이 떨어진다고 한다. 가급적이면 방열판을 붙여서 사용하자

[ 외형은 이전 방식하고 동일하게 보이는 Hyper M.2 지원 SSD ]

 그 다음이 11세대 CPU인데 구매 예정인 메인보드는 그래픽 카드를 꼽을 수 없기 때문에 내장 그래픽을 가지는 것이어야 하고, i5, i3 두개중 고민하다가 결국 i5를 선택하게 되었다. 개발용으로 사용할 예정이라서 코어수에 조금더 욕심을 부렸다.  (인텔 코어i5-11세대 11500 로켓레이크S) RAM이야 뭐... 가장 최신 것이 구형보다 싼 형태라(어차피 최신 것이 필요) 8G 짜리 두장을 구매했다. 

3. 부품 조달 완료후

 이것 저것 조달된 부품을 조립하여  PC를 하나 만들었다. 


그런데....아... 이것 참 난감한 상황이 벌어졌다. 방열판을 부착한 M.2 SSD는 생각보다 엄청난 높이 였던 것이다.
[ 난감 1 ]

[ 난감 2 ]

[ 난 감 3 ]


이 상황을 타개하기 위하여 니퍼, 쇠톱을 이용하여 보드를 받치고 있는 가이드를 썰었다. 사진상에는 아주 조악한 결과물을 보이지만, 실제 마지막에는 줄로 다듬어서 나름 나쁘지 않은 결과를 만들었다. 배송된 첫날 보드 받침대를 자르고 있는 아들이 보면서 하는 말이, "아빠 새거 사서 왜 망가트리고 있서?"  ㅠ.ㅠ  미안하다 아들아.. 아빠가 좀 모자랐다.


[ 한시간 넘게 걸린 작업 ]

이 보드는 원래 SATA 방식의 저장 장치를 2개 탑재 할 수 있는데(아마도 보드에서 레이드 방식도 지원하는 것 같다.) 그중 하나를 과감하게 포기한 형태가 되는 것이다. 잘라낸 부분은 보드에서 SATA 중에서 두번째로 인식하는 것의 자리가 된다.

[ 잠자던 SATA 방식의 SSD와 함께 찰칵 ]

[ 아마도 이런 느낌? ]



4.  Power ON?

 완벽한 마감을 하기 전에 늘 그렇듯이 일단 켜 보기로 했다. 전원선을 연결하고 모니터를 연결하고 키보드 연결하고 마우스 연결하고 전원 버튼을 눌렀다. 
 허걱 또 난감한 상황이 왔다.
살면서 지금까지 수십대의 PC를 조립했다. 내가 사용하는 것도 있지만, 지인의 것을 조립해 주기도 하고, 마눌님 PC를 조립해 주기도 했다. 지금까지 조립후에 못 켜본  PC가 없는데, 아무리 해도 이번 것은 켤 수가 없었다. 
 여러가지 의심을 했다. HDMI 케이블이 문제인가, Hyper M.2 단자가 문제인가, CPU가 문제인가,  메인 메모리가 문제인가... 

일단 기존에 사용하던 HDMI  케이블로 대체 하여 시도 -> 실패
Hyper M.2 SSD 탈거후에 SATA SSD로 시도 -> 실패
기존에 챙겨둔 메인 메모리로 교체 후에 시도 -> 실패

머리 속이 하얀색으로 변하기 시작했다. 대체 어느 부품이 문제인가!!
마지막에 이르러서 메인보드를 의심하기 시작했다. 사실상 보드는 큰 힘을 주거나 쇼트날만한 작업을 한 것이 없고, 보드 가이드는 뭐... 쇠조각이라 아무리 자르고 접고 해도 고장날 만한 것은 아니고...  
 결론은 메인보드에 문제가 있다고 내리고, 어떻게 할 것인가 고민했다. 사실상 파워 버튼으로 켜지고, CPU 팬이 돌아 가는 상황을 지켜보면 정상인 것 같기도 했다. 다만 화면이 출력안되는 상황인것 같았다. 구글신에게 폭풍 검색을 의뢰하여 정보를 수집하기 시작했다.  1시간 정도의 검색을 통하여 드디어 실마리를 찾게 되었다. 구매한 메인보드는 H470 이라는 것인데 이것은 11세대 CPU가 나오기 전에 발매를 시작한 것이고 내가 구매한 제품 사이트에서는 11세대를 지원한다는 이야기는 없었다.
 무슨 이야기냐 하면 제품 설명에는 Hyper M.2를 지원합니다라고 썻고, 이 기능은 11세대 CPU 부터 사용 가능합니다. 라는 것이었다. 이걸 유추해 보면 11세대 CPU를 지원하는 것처럼 보이지만, 사실상 지원을 보장한다는 이야기는 아니였다. 보드 판매사의 홈페이지에서 H470 관련 펌웨어가 3월에 릴리즈 되었으며 버전이 2.5 이었다. 이 펌웨어부터 11세대 CPU를 지원한다는 이야기 였다. 내 보드를 살펴보니 펌워어는 1.1 이었다. (보드를 잘 살펴보면 스트커 형태로 P1.10 이라고 붙어있다)

5. 펌웨어 업그레이드

 결국 지금 구매한 보드를 쓰기 위해서는 보드의 펌웨어를 업그레이드 해야 하는 상황인데, 문제는 펌웨어를 업그레이드하기 위해서는 일단 PC가 켜져야 하며, 화면이 보여야 한다는 이야기다. 보드가 CPU 소켓이 1200 이라서 오래된 CPU는 맞지도 않고 결국, 10세대 CPU중에서 가장 낮은 가격의 인텔 셀러론 G5905 (코멧레이크S)를 다시 구매하였다. (하.. 이건 정말 아닌데...) 수일 후에 배달된 10세대 셀러론을 끼고, 겨우 화면을 볼 수 있게 되었다. 펌웨어 업그레이드 방법은 USB에 담아서 BIOS 화면에서 선택을 하면 된다. (보드 제작사의 홈페이지에 너무나도 친절하게 설명되어 있다.)



[ 펌웨어 업그레이드 중.... ]



[ 드디어 펌웨어 업그레이드 완료 ]


이제... 윈도우를 설치할 수 있게 되었다.


6. 결론

 그 고생을 한 결과는 저장장치에 대한 읽기/쓰기 속도를 측정하여 캡쳐한 아래의 2장 그림으로 설명이 가능할 듯 하다. 

[ SATA 방식의 SSD ]

[ Hyper M.2 방식의 SSD ]

디스크 정리가 잘 되었다면 SATA방식 대비 Hyper M.2는 10배 이상의 읽기/쓰기 속도가 가능하다.  이 정도면 노력할 만 했다. 고생한 나에게 시원한 막걸리 한사발 접대했다. 



1. 혹시 DeskMini470으로 11세대의 CPU를 사용하실 분들은 펌웨어를 꼭 확인하시기 바란다.

2. 하... 이 10세대 셀러론 CPU는 어디다 써야 하나... 많은 고민이다.








 

  

2021년 1월 5일 화요일

원격 모니터링 : 12V 듀얼 전원 공급장치 만들기 - ver 1.0

1. 모니터링의 시작

시골에 노모께서 홀로 계신다. 덥지는 않으신지, 춥지는 않으신지 늘 걱정이다. 그래서 어머니께서 주거하시는 안방의 온습도 정보를 모으기 시작했다.  대단한 것은 아니였고 ESP8266 계열의 D1 mini 와 AM2302 온도 센서를 달아서 만들었다. 

가장 초창기 모델

 위의 사진은 내가 ESP8266을 공부하면서 가장 처음으로 만든 모델이다. 지금 보면 구성 자체가 어설프고, 납땜도 어설프고, 심지어 전선의 배색도 어설프다. VCC와 GND 색상이 동일하다니.. 대체 무슨 생각으로 전선 색상을 고른것인지.... 그나마 요즘은 전선 색상은 구별해서 사용하려고 노력한다. 가능한 GND는 검정 (또는 파랑) 을 사용하려 하고, 3.3V는 주황, 5V는 빨강, 12V는 노랑 색상의 전선을 사용하려고 노력중이다.  위에 사진에 표시된 1차 버전은 얼마나 어설펐는지 ESP8266의 DeepSleep을 위해서 필요한 전선 연결이 나중에 떨어졌다. 설치해서 가만히 두는 것이었는데 ㅠㅠ
 초기 버전을 만들고 나서 2차 보수까지 수행했지만, 역시나 문제가 생겨서 2차 버전을 다시 만들었다.  초기 버전과 2차 버전 사이의 기간이 수개월 있었고, 그 사이 내 실력도 많이 늘었다. 초기 모델은 퇴역 하였고, 2차 버전은 현장에 설치되어 있는데 아무리 사진을 찾아도 안보인다.   이를 이용하여 정보를 수집하기 시작하였다. 



 수집된 정보는 서버에 업로드하여 30일까지의 이력을 보게 만들었는데, 서버 부분은 내가 특별히 만든 것은 아니고 Adafruit를 활용하였다. (여러가지 이유가 있지만 일단은 돈이 안들어 가고 이미지 전송이 가능해서 사용하게 되었다.)  아래의 링크를 보면 활용하는 방법이 기재되어 있다. 예전에 내 블로그에서 다루었던 내용이다.

[Adafruit 활용기]

 단순히 온습도를 로깅하고 있지만, 어머니의 행동 패턴과 연계하여 고려하면 어머니의 취침시간과 기상 시간을 알게 되었다. 이제 어머니가 일어 나셨구나... 라는 것을 알게 되었다. 

2. 모니터링의 확장

 온습도를 기반으로 하여 어느 정도의 내용을 짐작하게 되었지만, 이것은 정말 정확한 정보가 아니였다.  카메라 장치가 더더욱 필요하게 되었다. 내 의견은 어머니가 주거 하시는 방에 카메라 장치를 설치하자는 것이었지만, 큰 형님의 "어머니 사생활을 존중하자" 라는 의견에 감명을 받아 외부에 설치를 고려하게 되었다. 



 태양광 패널을 이용하여 스스로 충전하며, 주기적으로 사진을 촬영하여 서버에 전송하는 형태의 작품이다.  위의 사진은 역시 초기 버전이며, 수차례 수정 보완하였다.  가장 큰 문제점은 태양광 패널이었다. 태양에 노출되면 생각보다 쉽게 못쓰게 되었다. (패널 가격이 싸서 그런가..ㅠㅠ) 태풍이 심하게 불면 태양광 패널이 돛이 되어 카메라가 하늘을 0.5초간 날게 되는 진풍경을 연출하기도 했다. 전체적으로 축전(蓄電) 관련된 설계가 나빴거나, 무인 운영 이라는 것 자체의 오류였던가 생각된다.  사용했던 반찬통도 태양광에 노출된지 2년 반만에 부서지기 시작했다. 이 모델은 2년 반만에 퇴역하게 되었다. 사실 퇴역하게 된 이유는 운용의 난해함이 아니라 정보 취득의 한계성 때문이었다. 2분 마다 1장씩 서버로 사진을 올리는 시스템이어서 실시간 반영이 안된다는 것이 문제점 이었다.  이정도의 간격으로 사진을 올린다면 비가 오는 것인지, 눈이 왔는지 정도를 구별하는 것 밖에 안된다.  원래 연구의 시작은 원거리 건물이나 비닐하우스 등에서 문이 열려 있는지, 닫혀있는지를 확인하기 위함이었다. 
 그리하여 IP Camera를 설치하게 되었다.


Wi-Fi로 연결이 가능하며, 적외선 LED가 있어서 야간에도 모니터링이 가능한 카메라 이다. 가격도 $30 정도 수준으로 SD Memory Card를 이용하면 자체 녹화도 가능한 형태이다.  이동식을 포기하고 외부에서 전원을 끌어서 설치하여 앞마당 및 어머니가 주거 하시는 안방의 외부까지 볼 수 있도록 만들었다.

3. 다 좋은데 뭐가 문제?

 24시간 IP Camera를 통하여 동영상으로 모니터링이 가능하도록 되었는데, 문제는 외부에서 촬영하다 보니 주연이신 어머니께서는 24시간 중 30분 정도만 출연하셨다.  하루 종일 빈 앞마당을 보게 된다는 것이었다. 그래서 스트리밍 정보를 취득하여 움직임을 감지하고, 감지시 이미지를 다시 서버에 저장하는 기능들 만들었다. 사실상 요즘 IP Camera는 대부분 움직임 감시 기능을 제공한다.  내가 글을 쓰는 시점에 위에 연출된 카메라는 이미 퇴역하였다. IP Camera를 24시간 풀로 켜놓으면 대략 3년 정도 이내에 먼가가 고장나기 시작한다.  마지막으로 문제가 된 것이 12V 어댑터 이다. 한번 상태가 이상하여 전원을 뺏다가 다시 꼽아서 동작되게 만든 것이 5개월 정도 전인데, 역시나 5개월 후에 작동을 멈추었다. 모든 기계는 쉬게 해 줘야 하나 보다.

4. 그래서 듀얼

 처음에는 그동안 PC 버리는 것들에서 모아 둔 전원 공급 장치를 사용하려고 하였다. 전력량도 충분하고 안정적이라 생각해서이다. 그래서 필요없는 선들을 자르고 준비하다가 너무 과한 스펙이라고 생각이 들었다. 내가 필요한 것은 최대 2A 이내의 전력인데 20A 짜리를 하다니....  그래서 12V 의 적당한 어댑터를 구매하려고 알리를 살펴보다가 아래의 제품을 발견하게 되었다. 
 
오호 이걸로 만들면 되겟구나라는 생각과 함께, 이걸 듀얼로 구성해야 겠다는 생각이 들어서 2개 구매하였다. (개당 $2)


 사진으로 보면 상당히 거창해 보이지만, 별거없다. 그냥 구매한 제품 2개를 병렬로 잘 구성해서 만든 포맥스로 만든 껍데기에 안착 시켰을 뿐이다. 내부에 ESP8266이 하나 있는 이유는 온도 센서와 결합해서 전원 장치의 내부 온도를 원격에서 확인하기 위함이다. 12V가 나오는 장치에서 ESP8266 동작을 위하여 5V가 필요해서 아주 아주 작은 다운트랜스를 하나 붙였다. (최대 1A 가능)

 또 내부 온도가 걱정되어서 공기 순환용 구멍을 뚫었다. 8mm 드릴로 측면들에 구멍을 내었는데, 좌우 부분은 위쪽으로 , 아래쪽 부분은 전체적으로, 위쪽으로는 오른쪽 윗부분에 구멍을 내었다.  이 물건이 외부에 설치되는 터라 벌레들을 막기 위해서 구멍을 뚫은 부분은 방충망 쪼가리를 구해서 붙였다. 




전면부 구멍은 통풍용이 아니라 내부 LED등의 불빛이 보이도록 뚫었고, 안쪽으로 투명 아크릴 조각을 붙여서 LED가 보이도록 만들엇다.  이부분에 방충망을 안쓰고 아크릴을 쓴 이유는 혹시나 비가 들이치지 않을까 걱정을 해서이다.

5. 결과 및 설치

 다 만든 결과에 대한 사진을 찍어두지 않았던 터라,  설치후 촬영한 사진을 올린다. 실제 설치된 모습니다. 외부 벾에 아래의 사진과 같이 설치되어 있다. 


위의 사진에 포함된 것들은 동파 방지 장치 및 IP Camera관련된 것들이다.  제작한 12V 전원 장치는 스위치를 2개 가지고 있으며, 안타깝게도 전환은 자동이 아니라 수동이다. 1번을 켜거나 2번을 겨거나 하면 된다. 두개를 동시에 켜도 되긴 하지만 굳이 전력을 낭비할 필요가 없으니 둘중 하나면 켜 놓으면 된다. 켜진 것은 전원 공급장치 전면부에 뚤어 놓은 구멍으로 확인 가능하다. 이제 부터 하나는 쉬면서 하나는 일 할 수 있게 되었다. 


3단 6핀 스위치로 DC 모터의 회전 방향을 바꾸어 보자

1. 필요는 연구의 어머니 항상 느끼는 부분이다. 필요하지 않으면 연구하지 않으며, 필요하면 연구한다. DC 모터를 조건에 따라서 정방향 또는 역방향으로 회전시켜야 하는 필요가 생겼다. 처음에는 MCU 및 Relay Switch를 이용하는 방법을 생각...