2016.04.17 18:32

MSI의 12핀 JSPI1으로 플래시 굽기.



 MSI의 메인보드가 바이오스 업그레이드하다가 망가져서 고친다는걸 이제서야 실행.


 그런데 바이오스를 굽는 연결 인터페이스에 대한 설명이 없었다. 그래서 바이오스 플래시 칩과 12핀 커넥터를 열심히 테스터로 찍어서 결국 접근에 필요한 연결 방법을 알아냈다.


 CH-341A 롬라이터를 사용했던거라 몇몇 신호는 처리가 불가능한데 그냥 접지를 하면된다. 그 신호는 ~HOLD 같은 것으로 이게 0V가 아니면 플래시가 동작을 하지 않는다. 간단히 GND에 연결해주면 끝.


 다른 신호들은 문제가 없는데 딱 하나 바로 CS 신호가 문제를 일으킨다. CH-341A는 반전 신호인 ~CS(칩에서도 바로 반전 신호가 입력되도록 되어있다)가 나오는데 이걸로는 플래시칩과 JSPI1의 커넥터 중간에 있는 FET때문에 플래시를 제대로 구동할 수 없다.

 그래서 BC547B NPN 트랜지스터로 5V -> 4.7k 저항 -> BC547 Collector 를 연결하고 BC547 Collector에서 다시 9번으로 연결하니 문제없이 스위칭이 동작한다. 5번은 GND에 그대로 연결하면 된다. BC547의 Base는 CH341A의 ~CS를 연결하고, Emitter는 GND에 연결하면 끝. 간단히 NPN 트랜지스터와 저항으로 반전 신호를 만든 것 뿐이다.

 3.3V에 연결하면 전압 강하가 있는지 9번에서 2.2v만 찍혀서 FET가 작동을 하지 않아서 ~CS 신호가 인가되지 않아서 플래시가 작동하지 않는다.


 플래시를 기록할 때 주의점은 먼저 erase를 하고 program을 하는게 좋은데, erase를 한 다음에는 ch341a를 한번 연결을 끊었다가 다시 연결해야 한다. 아마도 erase 이후에는 바로 프로그래밍이 어렵거나 아니면 프로그래밍 상태에서 벗어나는게 안되었던 듯. program이후에 verify는 정상적으로 동작한다.


 CH-341A의 구동 프로그램은 1.18버전으로 그 이상의 버전에서 제대로 동작하는 것을 찾을 수 없었다. CH-341A는 프린터를 USB에 인터페이싱하는 칩으로 사실 프린터의 신호로 플래시를 동작시키는 방법으로 구현된 프로그래밍 장치이다. 그걸 이쁘게 프린트 기판에 만들어서 USB로 인터페이스를 만든게 바로 CH341A. 그냥 저렴하니 쓰는 것으로 메인보드 하나를 고치는데 5만 이상을 쓰느니 차라리 사는게 낫다는 생각한다.


 잘 동작하려는지는 모르겠지만 일단 플래싱에는 큰 문제가 없는 것 같다.



ch341a-v1.18.zip


 커넥터의 간단한 도해를 첨부.


msi_spi12.pdf


저작자 표시 비영리 변경 금지
Trackback 0 Comment 0
2016.04.09 10:14

OpenELEC의 새로운 테스트 빌드 업데이트.

3월말의 어느 때쯤과 4월달에 들어서 새로운 테스트 빌드는 이제 새로운 스킨을 기본으로 채택했는데, 이게 문제가 오래된 애드온 중의 몇몇은 이 스킨을 지원하지 않는다. 그리고 약간의 스킨 구조의 업데이트가 이루어져서 기존의 구버전의 스킨은 제대로 작동하지 않는다.


 confluence 스킨은 개발자가 사고를 당한 후 계속해서 업데이트되어서 테스트 빌드에서는 3.0.7로 업데이트 하면 사용이 가능하다. 하지만 문제가 있는데, OpenELEC의 테스트 빌드를 업데이트를 해버리면 GUI가 사용하는게 힘든 상태 되어 버리는 것으로 난감한 상태에 이른다.

 그런고로 4월달의 테스트 빌드를 업데이트 하기 위해서는

 1. 먼저 estuary 스킨으로 바꾼다.

 2. 테스트 빌드로 업데이트 한다.

 3. 다시 confluence 스킨으로 바꾼다.

 라는 과정을 통해 업데이트하는 것이 안전하다.


 만약 도중에 문제가 생기면, ssh 접속으로 (putty 같은 것을 이용) 강제적으로 kodi를 켜고 끄는 작업을 수행하면 된다.

systemctl stop kodi

systemctl start kodi

 첫번은 중지시키는 것, 두번째는 다시 시작하는 것으로 시스템을 재부팅하지 않고 다시 kodi를 작동시킬 수 있다.


 그리고 최근의 새로운 테스트 빌드는 DASH를 지원하는 InputStream이란 애드온을 포함하는데, 이 애드온으로 기존에 잘 되던 애드온의 플레이가 안될 수 있다. 그럴 땐 InputStream 애드온의 설정으로 가서 kodi의 로그파일의 에러 메시지를 확인해서 접속에 사용되는 URL을 설정에서 제거하면 된다.


 마우스만을 사용하는 환경에서는 confluence 스킨을 바꾼 후에는 하드리셋(재부팅이 아닌 종료 시킨 후 다시 전원을 넣는 방법)으로 시작하는 것이 좋다. 종료시에는 LED가 깜박이는게 멈춰진 후에 하는 것이 SD카드의 파일 시스템이 망가지지 않도록 하는 좋은 방법이다.





저작자 표시 비영리 변경 금지
Trackback 0 Comment 0
2016.04.06 13:50

윈도우즈의 시스템 파일 권한 바꾸기

 최근 인텔 쪽에서 윈도우즈 쪽으로 제공한 마이크로코드 업데이트로 오버클럭킹을 강제로 제한한다는 이야기가 나오고 있고, 마이크로소프트도 이를 아무런 이야기도 없이 배포하고 있다.

https://www.techpowerup.com/219923/intel-pushes-cpu-microcode-update-which-cripples-overclocking-non-k-skylake-cpus.html


 이런 이유로 많은 오버클럭커들은 문제에 직면하게 되는데, 이러한 문제를 해결하는 방법은 윈도우즈의 마이크로코드 업데이트와 관련된 파일을 이름을 바꾸어서 방지하는 방법이 가장 널리 쓰이고 있다.


 반대로 AMD는 이런 제한을 크게 하지 않는 것 같다. 하스웰 라인이라면 마이크로코드의 버전은 19h가 가장 오버클럭킹에 좋다.


 하스웰의 TSX버그는 g45xx등을 포함한 하위 버전이나 k버전에서는 지원되지 않는게 많아서 1Ah의 마이크로코드 업데이트는 아무런 의미가 없다. 그래서 많은 메이져 제조사들이 계속 19h로 바이오스의 마이크로코드를 유지해 왔던 것. 07h의 경우에는 k가 아닌 프로세서도 오버클럭이 가능했다.


 마이크로코드의 버전은 다음의 툴로 확인할 수 있다. Potable 버전을 추천.

http://www.hwinfo.com/download.php


 여튼 이러한 마이크로코드 업데이트로 인한 제한이 하스웰만이 아닌 다른 새로운 제품에서도 조용히 일어나고 있다는 것.


 하지만 윈도우즈10은 자체의 접근 권한으로 시스템 파일의 이름 바꾸기가 어렵다. 그걸 하는 방법에 대한 대충의 정리이다.


 이미 mcupdate_genuineintel.dll 파일의 권한을 바꿔버린터라 AMD의 마이크로코드 업데이트 dll을 연습삼아서 사용해서 만들었다. AMD는 바꿀 필요가 없다.


 

 파일을 선택하고 오른 클릭을 하고 속성에서 보안탭을 선택하면 접근 권한 창이 나타나는데 여기서 고급을 선택하면 위와 같은 창이 뜬다. 소유자 옆에 있는 변경 버튼을 꾹 누른다.




그러면 다음과 같은 창이 뜨는데, 선택할 개체의 이름의 입력에 현재 윈도우즈에 등록된 자신의 사용자 이름을 적는다. 그리고 이름 확인을 누르면 완성된 이름이 입력창에 완성되고, 확인을 누른다.


 그리곤 확인을 눌러서 창을 닫는다.





 파일을 선택하고 오른 클릭을 하고 속성에서 보안탭을 선택하면 접근 권한 창이 나타나는데 여기서 고급을 선택하면 위와 같은 창이 뜬다. 소유자 옆에 있는 변경 버튼을 꾹 누른다.

 처음과 같지만 이번에는 추가 버튼을 누른다.




 그렇게 이전과 같이 윈도우즈 사용자 이름을 누르고, 이름 확인을 누르고 확인을 누른다.



 그러면 다음과 같은 창이 뜨는데 여기서 수정에 체크를 한다.


 그리고 경고메시지도 뜨는데 여기서 확인, 확인을 누른다. 그러면 이제 파일의 이름을 변경시킬 수 있다.



저작자 표시 비영리 변경 금지
Trackback 0 Comment 0


티스토리 툴바