2인용 조이스틱 만들기

리뷰&리뷰 2019. 7. 27. 17:36 Posted by D.E.C.E.M.B.E.R
반응형

2인용 조이스틱 만들기

*******************************************************************************************************

*******************************************************************************************************

1. 아케이드용 트랙볼 제품 리뷰

    3인치 제품  http://december.tistory.com/1434

    4.5Cm 제품 https://december.tistory.com/1435

2 키보드및 트랙볼 컨트롤러

   http://december.tistory.com/1430

3. 조이스틱 컨트롤러 보드 SKY-Q4T

   http://december.tistory.com/1460

4. 나만의 조이스틱 만들기 

   http://december.tistory.com/1358

5. 키보드와 마우스를 이용한 트랙볼 조이스틱 만들기 

     http://december.tistory.com/1454

6. 올인원 조이스틱 만들기

   http://december.tistory.com/1428

7. 레이저마우스를 이용한 알카노이드 스피너 (다이알 컨트롤러) 만들기

   (광마우스도 가능함 -작업이 필요함)

    http://december.tistory.com/1427   알카노이드용 스피너 만들기

8. 마우스 광센서를 이용한 로터리 레버 만들기 

   http://december.tistory.com/1456

   https://december.tistory.com/1463

9.  2인용 조이스틱 만들기

    https://december.tistory.com/1500

10. 스피너 보드 OR 트랙볼 보드 만들기

    https://december.tistory.com/1449

 

 

*********************************************************************************************************

*********************************************************************************************************

2인용 조이스틱 만들기

부품

2인용 조이스틱 아크릴 케이스   830-400

PET 201U 인쇄물 830-400 

30mm 조이스틱 버튼  12개  (알리주문)

24mm 조이스틱 버튼  6개   

조이스틱 레버 2개

16mm 기능 버튼(LED)  18개 (알리주문)

3인치 트랙볼 1 (USB 지원)  (알리주문)

조이스틱용 제로보드 2EA  (알리주문)

 

알카노이드용 다이알 1 부품

 - 레이저마우스  1EA

 - 코드디스크    1EA

 - 30mm 다이알  1EA

 - 5-19-22 베어링  2EA

 - 3-5-40  알루미늄봉 1EA

 

알카노이드용 스피너 만들기

레이저마우스를 이용한 알카노이드 스피너 (다이알 컨트롤러) 만들기

   http://december.tistory.com/1427   알카노이드용 스피너 만들기

로지텍 M187 마우스

USB용 3인치 트랙볼 장착하기

http://december.tistory.com/1434

반응형

나만의 조이스틱 만들기 II

리뷰&리뷰 2018. 10. 8. 11:40 Posted by D.E.C.E.M.B.E.R
반응형

 

나만의 조이스틱  만들기 II

 

키보드와 마우스로  조이스틱  만들기

알카노이드용 스피너

트랙볼

조이스틱

 

 

 

 

 

참조

*******************************************************************************************************

*******************************************************************************************************

1. 아케이드용 트랙볼 제품 리뷰

    3인치 제품  http://december.tistory.com/1434

    4.5Cm 제품 https://december.tistory.com/1435

2 키보드 및 트랙볼 컨트롤러

   http://december.tistory.com/1430

3. 조이스틱 컨트롤러 보드 SKY-Q4T

   http://december.tistory.com/1460

4. 나만의 조이스틱 만들기 

   http://december.tistory.com/1358

5. 키보드와 마우스를 이용한 트랙볼 조이스틱 만들기 

     http://december.tistory.com/1454

6. 올인원 조이스틱 만들기

   http://december.tistory.com/1428

7. 레이저마우스를 이용한 알카노이드 스피너 (다이얼 컨트롤러) 만들기

   (광마우스도 가능함 -작업이 필요함)

    http://december.tistory.com/1427   알카노이드용 스피너 만들기

8. 마우스 광센서를 이용한 로터리 레버 만들기 

   http://december.tistory.com/1456

   https://december.tistory.com/1463

9.  2인용 조이스틱 만들기

    https://december.tistory.com/1500

*********************************************************************************************************




키보드 테스트 사이트http://www.keyboardtester.com/


key_test.exe
다운로드
KEYSET Tester.exe
다운로드

 

 

 

16mm 버튼

 

1. TAP  ( 메뉴)            

2. ENTER (게임 선택버튼) 

3. P       (정지)   PAUSE (정지)       

4. ESC  (EXIT)   

 

5. 숫자  1 (1인용 스타트)   

6. 숫자  5 (1인용 코인 )     

7. 숫자  2 (2인용 스타트)    

 

 

8. 숫자  6 (2인용 코인)      

 

9. SPACE

10.Ctrl

11. 마우스버튼 왼쪽 

12. 마우스버튼 오른쪽  

 

13. 마우스버튼 

 

 

방향레버

 

1. 왼쪽방향        ←     

2. 오른쪽방향      →    

3. 위쪽방향        ↑     

4. 아래쪽방향      ↓    

 

30mm 버튼

 

1. A

2. S

3. D

4. Z

5. X

6. C

 

알카노이드 스피너

 

마우스 X축

 

 

삼보 무선 키보드마우스로 조이스틱 만들기

 

조이스틱 + 알카노이드 스피너

 

 

 

 

 

 

123456789 10 11  -   12345678910 11 12 13 14 15 16 17 18

 

 

 


 1  4  5  6  7  8  9  10  11
 1 PAUSE
 R-CTRL  L-CTRL




 절전  F5
 2  W  S  X F1


 CAPS LOCK

 @2
 3  R  F  V  5%


 T  G  B  4$
 4  I  K  ,<  +=


 ]}  F6  193 0XC1  8*
 5  P  ;:  \|  -_


 [{  ;:  /?  0)
 6
 \|  ENTER  F9


 BACK SPACE  F11  F12  F10
 7  8*  R-ENTER  /  INSERT


 5  O  RIGHT
 8  +

 HOME



 UP↑   LEFT     END
 9






 WIN  133 OX87

 10  Q  A  Z  ~`


 TAP  ESC  235 0XEB  1!
 11  E  D  C  F2


 F3  F4  255 0XFF  3#
 12  U  J  M  6^


 Y  H  N  7&
 13  O L  .>  F8


 F7
 MENU  9(
 14  Scroll Lock
  




 R-ALT  R-ALT  PRINT SCREEN
 15  7 home  1 end  NUM    LOCK  DELETE


 4 <-  SPACE  DOWN
 16  9 pg up  3 pg dn  *  PAGE UP


 6 ->  . DEL  -  PAGE DOWN
 17
 R-SHIFT




 SHIFT  179 0XB3  167 0XAA
 18
 R-WIN





 168 0XAB

 

16mm 버튼

 

1. TAP  ( 매뉴)                              10-8         

2. ENTER (게임 선택버튼)                  6-3

3. P       (정지)   PAUSE (정지)         5-1

4. ESC  (EXIT)                              10-9

 

5. 숫자  1 (1인용 스타트)                  10-11

6. 숫자  5 (1인용 코인 )                    3-4

7. 숫자  2 (2인용 스타트)                  2-11

 

 

8. 숫자  6 (2인용 코인)                    12-4

 

9. SPACE                                   15-9

10. 마우스버튼 왼쪽                       

11. 마우스버튼 오른쪽  

 

12. 마우스버튼 

 

 

방향레버

 

1. 왼쪽방향        ←                    8-10

2. 오른쪽방향      →                    7-10

3. 위쪽방향        ↑                     8-9

4. 아래쪽방향      ↓                    15-10

 

30mm 버튼

 

1. A                                      10-2

2. S                                       2-2

3. D                                      11-2

4. Z                                       10-3

5. X                                       2-3

6. C                                       11-3

 

알카노이드 스피너 만들기

 

7. 레이저마우스를 이용한 알카노이드 스피너 (다이얼 컨트롤러) 만들기

   (광마우스도 가능함 -작업이 필요함)

    http://december.tistory.com/1427   알카노이드용 스피너 만들기

 

 

 

한 5년 사용한 로지텍 M310 레이저 마우스

 

레이저마우스라서  만들기 편하다.

코드디스크를 위에서 위치만 잘 맞춰주면 끝난다.

100라인 이상 코드 디스크 권장함

M310 로지텍 무선마우스는 알카노이드용 스피너와 스피너레버(로터리레버)를  동시에 만들 수 있다.

 

 

일반 광마우스일 경우 아래와 같은 방법으로 설치한다.

 

볼마우스나 휠부분의 광센서를 이용하면 아래와 같은 모양으로 하면 된다.

이 방법은 마우스에서 연장 선을 사용해서 연결하기만 하면  된다.

 

 

 

전원공급은 5V -> 1.5V 변환 아답타보드를 사용했다.

 

 

노브 베어링 100라인 코드디스크

 

 

 

 

마이크로소프트 데스크탑800 키보드 컨트롤러 사용 시

 

데스크탑800 키보드 컨트롤러는 전부 26개의 신호를 조합해서 키보드의 입력 키를 구분한다.

 

 

이 키보드는 1~18번  19번부터~26번  두 부분으로 나눠서 

하나하나 연결해 보면 대부분의 키보드 조합이 나온다.

 

USB 키보드는 최대 6개의 키 동시 입력이 가능하다.

게임하다 버퍼가 넘쳐 입력이 안 되는 불상사는 없을 것으로 보인다.

관계가 있는지는 모르겠지만 서로 겹치지 않는 키를 찾아서 연결해 주는 것이 좋을 것 같다.

게임하는 키는 최대한 같은 라인이 겹치지 않도록 했다.

사실 키보드로 게임할 때 문제가 없었으므로 키보드에서 사용하던 키 그대로 사용해도 문제는 없다.

 

A   3-20  

B   3-22

C   18-19D   7-20E    12-20F   9-19

G   3-21

H   6-21I    7-25

J    8-26

K   11-26L    12-26

M   7-22

N   6-22

 

O   8-25

P   3-24Q   8-20R   10-19S   6-20T   13-19

U   6-25

V   14-19

W   11-20

X   17-19

Y   3-25

Z   16-19

 

 

 

=====================================================================

실재 사용하는 키들

=====================================================================

TAP  ( 메뉴)               1-20

ENTER (게임 선택버튼)   2-19     13-21

P     (잠깐정지)           3-24        

ESC  (EXIT)               15-19

숫자  1 (1인용 스타트)   16-26

숫자  5 (1인용 코인 )     9-26

숫자  2 (2인용 스타트)    17-26

 

숫자  6 (2인용 코인)      10-26

 

 

 A              3-20

 S              6-20

 D             7-20

 Z            16-19

 X            17-19

 C            18-19

 space       20-4

 

왼쪽방향        ←     9-20        

오른쪽방향      →    13-20         

 

 

위쪽방향        ↑     5-20           

아래쪽방향      ↓    13-20         

 

++++++++++++++++++++++++++++++++++++++++++++++++++++++++

 

전원공급

http://december.tistory.com/1457

 

 

 

 

 

 

반응형

4.5 Cm LED 트랙볼

리뷰&리뷰 2018. 8. 31. 03:09 Posted by D.E.C.E.M.B.E.R
반응형

*******************************************************************************************************

*******************************************************************************************************

1. 아케이드용 트랙볼 제품 리뷰

    3인치 제품  http://december.tistory.com/1434

    4.5Cm 제품 https://december.tistory.com/1435

2 키보드및 트랙볼 컨트롤러

   http://december.tistory.com/1430

3. 조이스틱 컨트롤러 보드 SKY-Q4T

   http://december.tistory.com/1460

4. 나만의 조이스틱 만들기 

   http://december.tistory.com/1358

5. 키보드와 마우스를 이용한 트랙볼 조이스틱 만들기 

     http://december.tistory.com/1454

6. 올인원 조이스틱 만들기

   http://december.tistory.com/1428

7. 레이저마우스를 이용한 알카노이드 스피너 (다이알 컨트롤러) 만들기

   (광마우스도 가능함 -작업이 필요함)

    http://december.tistory.com/1427   알카노이드용 스피너 만들기

8. 마우스 광센서를 이용한 로터리 레버 만들기 

   http://december.tistory.com/1456

   https://december.tistory.com/1463

9.  2인용 조이스틱 만들기

    https://december.tistory.com/1500

*********************************************************************************************************

Illuminated 4.5cm Round LED Trackball Mouse 

PS/2 PCB Connector For Arcade


이제품은 내부 보드를 3인치 트랙볼에 사용하기 위해 구입함
이제품 자체는 트랙볼로 사용하기가 좀 답답하다.
3인치 트랙볼 리뷰


https://www.aliexpress.com/item/Illuminated-4-5cm-Round-LED-Trackball-Mouse-PS-2-PCB-Connector-For-Arcade/32861609334.html?spm=2114.13010708.0.0.169f4c4dbIEyvu

https://www.aliexpress.com/item/4-5-cm-of-Diameter-Round-Connector-PC-Trackball-mouse-for-arcade-machine-accessories-game-machine/1950456190.html?spm=a2g0s.8937460.0.0.6e8d2e0eBO8lRa



Feature:

  • Smoothly trackball rolling action
  • Fantistic LED trackball
  • Operates just like a standard 3-Button computer mouse
  • PS/2 plug and quick connects, will work with any computer through its PS/2 connection
  • Attached wiring (for push buttons) equipped with .187"  female quick disconnects
  • Long lasting, low power LEDs illuminating clear trackballWhen connected the colour changes to Red & Green using in built LED's
  • Low cost real trackball works with any PC application (including MAME)
  • Can be used on a PC as a mouse or connected to your arcade cabinet
  • Clear ball with Green Lit & Red using leds that light when moved.

아케이드 트랙볼.

PS / 2 플러그 


연결되면  초록색 LED가 켜진다.

마우스 버튼을 누르면 빨간색 으로 바뀐다.  

PC에서 마우스처럼 사용하거나 아케이드 캐비닛에 연결할 수 있다. 


케이블 레이아웃 정보 : 

PS / 2 커넥터 - 컴퓨터의 PS / 2 포트에 연결  (재부팅 필요)

또는 PS/2 = > USB  변환 케이블을 사용해 USB 포트에 연결한다. ( 자동 인식 )

https://www.aliexpress.com/item/1PC-USB-Male-To-PS-2-PS2-Female-Converter-Cable-Cord-Converter-Adapter-Keyboard/32606726222.html

USB 컨버터 케이블에 연결하면 플러그엔 플레이로 인식하고 작동 한다.

내부에 ps/2=>USB 변환 칩셋이 있는 액티브 컨버터 이다.

사용된 칩셋 EM84502A2 이 PS/2 전용 칩셋이기 때문이다.


사용된 부품

CD4049UBE

EM84510EP

저항   다이오드  콘덴서


LED

PCB 내부에 4개의 LED다이오드가 장착되어 있다 (초록색2EA , 빨간색 2EA )
초록색은 평소 조명 빨간색은 버튼을 클릭 할 때 켜진다.

크기

트랙볼의 직경은 4.5cm, 

트랙볼의 전체 크기는


제품 정보

LED 아케이드 트랙볼로 PC 또는 MAME 아케이드 설정에 사용 
LED 아케이드 트랙볼은 컴퓨터 PS / 2 포트에 설치하면 표준 3 버튼 마우스처럼 작동 한다. 
아케이드 트랙볼 LED 조명은 PS / 2 연결을 통해 전원을 사용한다. 
대기 및 정상 작동시 트랙볼의 2.25 인치 공 LED는 녹색이다 
연결된 푸시 버튼을 누르면  LED가 빨간 색으로 바뀐다




CD4049UBE

cd4049ub.pdf

EM84510EP

=> EM84502A2

EM84510EP.pdf




피시에 연결시 PS/2 포트에 연결하면 된다.

연결후에는 반드시 재부팅 한다.

PS/2 포트는 부팅하기전에 미리 연결되어 있어야 작동한다.

플러그엔 플레이를 지원하지 않는다.

ps/2 = > USB 변환 컨넥터로 USB 연결 가능하다.

롤러와 베어링이 사용된 제품이 아니라서 각축의 회전이 부드럽지 못하다. 


참조

1. 아케이드용 트랙볼 제품 리뷰


    3인치 제품  http://december.tistory.com/1434


      4.5Cm 제품 http://december.tistory.com/1435


2 키보드및 트랙볼 컨트롤러

   http://december.tistory.com/1430


3. 조이스틱 컨트롤러 보드 SKY-Q4T

   http://december.tistory.com/1460



4. 나만의 조이스틱 만들기 

   http://december.tistory.com/1358


5. 키보드와 마우스를 이용한 트랙볼 조이스틱 만들기 

     http://december.tistory.com/1454



6. 올인원 조이스틱 만들기

7. 레이저마우스를 이용한 알카노이드 스피너 (다이알 컨트롤러) 만들기

   (광마우스도 가능함 -작업이 필요함)

    http://december.tistory.com/1427   알카노이드용 스피너 만들기


8. 마우스 광센서를 이용한 로터리 레버 만들기 

   http://december.tistory.com/1456


    https://december.tistory.com/1463


반응형

3인치 아케이드 LED 트랙볼

리뷰&리뷰 2018. 8. 29. 16:09 Posted by D.E.C.E.M.B.E.R
반응형

3인치  아케이드 트랙볼

 

3inch  Illumiated  trackball For Arcade TrackBall 트랙볼

 

3inch  Illumiated  trackball For Arcade TrackBall Game Accessory

 

3inch  Illumiated  trackball For  USB 

 

USB 용 제품도 출시되었다.

기본적으로 보드 두개만 교체하면 USB용으로 사용 가능하다.

 

참조

*******************************************************************************************************

*******************************************************************************************************

1. 아케이드용 트랙볼 제품 리뷰

    3인치 제품  http://december.tistory.com/1434

    4.5Cm 제품 http://december.tistory.com/1435

2 키보드및 트랙볼 컨트롤러

   http://december.tistory.com/1430

3. 조이스틱 컨트롤러 보드 SKY-Q4T

   http://december.tistory.com/1460

4. 나만의 조이스틱 만들기 

   http://december.tistory.com/1358

5. 키보드와 마우스를 이용한 트랙볼 조이스틱 만들기 

     http://december.tistory.com/1454

6. 올인원 조이스틱 만들기

   http://december.tistory.com/1428

7. 레이저마우스를 이용한 알카노이드 스피너 (다이알 컨트롤러) 만들기

   (광마우스도 가능함 -작업이 필요함)

    http://december.tistory.com/1427   알카노이드용 스피너 만들기

8. 마우스 광센서를 이용한 로터리 레버 만들기 

   http://december.tistory.com/1456

   https://december.tistory.com/1463

9.  2인용 조이스틱 만들기

    https://december.tistory.com/1500

*********************************************************************************************************

 

 
 

 

 

 

X-AXIS  좌우 이동

핀 1 =  수직(수평) CLK1 (X-PULSE)

핀 2 = 5V + 

핀 3 = GND 

핀 4 = 수직(수평)  DIR1 (X-Direction)

 

 

 

Y-AXIS 위 아래 이동

핀 1 =  수직(수평) CLK1 (Y-Direction)

핀 2 =  GND 

핀 3 =  5V + 

핀 4 =  수직(수평)  DIR1 (Y-PULSE)

 

 

3핀의 역할과 6핀 빈자리의 기능이 궁금하다.

알리 판매자도 알아봐 주지도 않는다. 젠장....

2핀 에 5V 전원을 공급해준다.

예전 제품중 12V 연결 제품도 있다.

참조용으로 올려놓은 매뉴얼에도 12V로 표시되어 있다.

K1 버튼을 누르면 다른색의 LED 변경이 가능하다.

스위치를  외부로 빼지 않는한 자유롭게 변경은 힘들다.

6가지 색 변경이 가능하다.

 

https://na.suzohapp.com/wp/search.p?Q=trackball

사이트에 12V로 표시 되어 있지만 이제품은 5V 연결한다.

스위치를 3초동안 누르고 있으면 

=>LED 색 패턴 변화

 (볼 주변부가 다른 색의 LED 가 깜빡이면서 울긋 불긋한 변화를 준다.)

스위치를 누르면 다른 색으로 바뀐다.

 

다시 3초 누르고 있으면 

=>이번에는 표현하는 모든 색의 LED 가 2초~3초 단위로 바뀐다.

 

코드디스크

기존 컴퓨터와 연결한다면 반드시 교체 권장함

기존 마우스의 DPI가 1000DPI 정도 되면 24라인의 코드디스크 사용한 트랙볼 마우스는 매우 느리게 움직인다.

한참 돌려야 화면 끝에서 끝으로 갈수 있다.

그러므로 100라인 이상의 코드디스크로 교체 권장함

1000DPI 마우스 만큼은 아니더라도 비슷한 수준의 움직임을 볼수 있다.

 

마메셋팅에 속도 조절이 있지만 

느린걸 빠르게 하는것보다는 빠른것을 느리게 하는 것이 사용상 편리하다.

  •  
  • Outer diameter: 36 mm
  • Internal diameter: 3.7 mm  (M3 나사 사용 , M4 나사 아님 ,나사산 안쪽이 두꺼워지는 구조)
  • Line number: 24 line
  • Line width: 3.3 mm

 

 

코드디스크 장착 롤러 75mm

짧은 롤러 60mm 

베어링  https://na.suzohapp.com/products/trackballs/95-0570-00

롤러 셋 https://na.suzohapp.com/products/trackballs/95-0831-00

 

ins-0053.pdf
다운로드
modular_controllers.pdf
다운로드
트랙볼.7z
다운로드
ins-0053.pdf
다운로드
arcade ball 550-290
다운로드

코드 디스크 교체

100라인 코드디스크

 

 

  • Model: M36
  • Outer diameter: 35mm
  • Internal diameter: 3mm 
  • Line number: 100 line
  • Line width: 4 mm

https://www.aliexpress.com/item/-/32858980162.html?spm=a2g0s.13010208.99999999.259.30453c00JptSjy

100라인이라 더 빠르고 많은 움직임이 가능하다.

기존 마우스 DPI가 높다면 24라인은 너무 느리게 움직인다.

움직이는 거리도 짧다.

 100라인으로 교체를 권장한다.

교체하면 마우스 커서의 움직임이 한결 빠르고 부드럽다는 것을 알수 있다.

*** 150라인 코드 디스크는 장착해 봤지만 작동하지 않는다. ***

기존 M3 나사 사용시 완전히 조일경우 휘어질 우려 있음

기존 M3 나사 사용하지 말고 안쪽이 평평한 M3 나사로 교체 해야함

평평한 M3 나사 사용시 나사와 코드디스크 사이 완충제가 필요하다.

코드 디스크 양쪽으로 하나 또는 두개씩 끼워 준다.

기존 플라스틱 코드디스크는 나사 안쪽이 굵어지는 구조로 되어 있는 M3 나사 사용함 

일반 평평한 M3 나사 사용시 헐거워 질수 있다.(inner hole 3.8mm 정도 사이즈)

금속 코드 디스크는 반드시 평평한 M3 나사를 사용해야 한다. (inner hole 3mm 사이즈)

평평한 M3 나사 사용시에도  완전히 조일경우 휘어질 우려 있음

평평한 M3 나사 사용시  코드디스크 양쪽으로  완충제 필요(종이와셔 사용)

종이 와셔를 코드 디스크 양쪽으로 하나 또는 두개씩 끼워 준다.

기존 코드디스크의 굵기도 맞춰줘야 하니 반드시 종이 와셔를 끼워준다.

 

 

인식오류가 생길 경우 기존 플라스틱 코드디스크의 두께에 맞춰 종이 와셔를 끼워준다.

코드 디스크 인식을 못하는 경우에는 안쪽에 두장정도 끼워준다.

 

교체후에는 마우스의 움직임이 확실히 빨라졌음을 느낄수 있다.

움직임이 5배 정도 빨라진다.

100라인 코드디스크 사용할때 마우스 커서 움직임

24라인 코드디스크 사용할때 마우스 커서 움직임

 

기존 사용하던 마우스의 DPI 가 높을수록 체감 움직임이 빨라진다.

 

안쪽이 평평한 M3 나사만 교체해주면 된다.

 

 

 

 

4.5Cm 트랙볼 리뷰

http://december.tistory.com/1435

저렴한 트랙볼을 구입해서 보드만 컨트롤러 보드로 사용해도 된다.

옛날 볼마우스를 사용해도 된다.

알리에서 전용 컨트롤러 보드를 구입했으나...

문제가 있어 환불함

가격비싸고 제품 기능은 칭찬할만 한데 불량이다.

나중에 수리해서 다시 사용하긴 하지만......

저렴한 볼마우스나 트랙볼구입후 보드만 사용하는것도 괜찮다.

=================================================================================================================================

3인치 USB 트랙볼 제품

USB용 보드만 제외하면 기본적으로 3인치 트랙볼의 구조는 똑같다.

두개 보드만 교체하면 USB용으로 사용 가능하다.

보드는 별도로 판매하고 있는 것 같지는 않다.

보드의 모든  개별 부품은 구할수 있다.

 

 

 

==================================================

트랙볼로 조이스틱 게임 설정하기

UP   ------  mouse Y-

DOWN------Mouse Y+

LEFT-----Mouse X-

RIGHT-----Mouse X+

 

 

 

 

 

반응형

키보드및 트랙볼 인코더 컨트롤러 보드

리뷰&리뷰 2018. 8. 19. 16:32 Posted by D.E.C.E.M.B.E.R
반응형



키보드및 트랙볼 인코더 보드



참조

*******************************************************************************************************

*******************************************************************************************************

1. 아케이드용 트랙볼 제품 리뷰

    3인치 제품  http://december.tistory.com/1434

    4.5Cm 제품 https://december.tistory.com/1435

2 키보드및 트랙볼 컨트롤러

   http://december.tistory.com/1430

3. 조이스틱 컨트롤러 보드 SKY-Q4T

   http://december.tistory.com/1460

4. 나만의 조이스틱 만들기 

   http://december.tistory.com/1358

5. 키보드와 마우스를 이용한 트랙볼 조이스틱 만들기 

     http://december.tistory.com/1454

6. 올인원 조이스틱 만들기

   http://december.tistory.com/1428

7. 레이저마우스를 이용한 알카노이드 스피너 (다이알 컨트롤러) 만들기

   (광마우스도 가능함 -작업이 필요함)

    http://december.tistory.com/1427   알카노이드용 스피너 만들기

8. 마우스 광센서를 이용한 로터리 레버 만들기 

   http://december.tistory.com/1456

   https://december.tistory.com/1463

9.  2인용 조이스틱 만들기

    https://december.tistory.com/1500

*********************************************************************************************************





키보드및 트랙볼 컨트롤러 보드


알리에서 처음 이제품을 받았을때 아무것도 작동하지 않았다.

컨트롤러 보드와 제공된 USB케이블이 불량이다.

이러면 불량 찾기가 참 힘들다.

장치 관리자에 정상적으로 올라오면서 작동은 하지 않는 증상

개발자에게 도움요청을 했지만 아무런 도움도 얻지 못했다.

이 개발자는  사용자를 무시하는 듯한 발언을 잘 한다.

제대로 된 매뉴얼도 없고...홈페이지도 아주 허름한데..

자신의 홈페이지 메뉴얼을 참조 안했다고 구박한다.

판매자 홈페이지만 봐도 이 제품에 대한 특징을 이해 할수는 있다.

작동 방법도 쉽게 따라 할수 있다.

하지만 동작하지 않는 고장난 제품인데...

매뉴얼을 봐도 홈페이지를 따라해도 살아나지는 않는다.

결국은 환불을 했다.

오랫동안 부품정보로 가지고 있다가 고민하고 구입한 제품인데...매우 아쉽다.

환불후에 안 사실이지만 장치도 올라왔다 사라졌다 한다.

이것때문에 냉납을 의심하게 되었다.

버리는 샘 치고 냉납 작업을 해보았다.

결국 칩셋 냉납인 것으로 확인 되었긴 하지만 이때도 고쳐진것을 확인하기 어려웠다.

USB 부분도 USB 포트 4귀퉁이가 납땜이 되어 있지 않아 끼다가 USB포트가 위로 들썩이는 현상이 발생한다.

이부분도 납땜해 준다.

USB 컨넥터 고정 부분은 왜 납땜이 안되어 있는지 이해가 안간다??

보드는 어짜피 내부에 있을거라 저런 포트는 필요없다.

USB 컨넥터 부분은 일반 4핀으로 만들면 된다.


냉납 때문에 프로그램이 초기화 된건지 날아간건지 모르겠지만 ???

냉납후에도 작동하지 않아 그냥 버릴뻔 했다.

(내부 프로그램이 날아간 것이다.)

냉납후 PYTHON 프로그램을 다시 업로드 해주니 정상 작동 한다.

프로그램 업로드 과정이 아주 어렵다.

뒤에 다시 설명하겠지만 프로그램모드로 셋팅하고(27-28) 

LIBUSB 드라이버를 올려줘야 프로그램 업로드 준비가 끝난다.

LIBUSB 드라이버 올리는 것도 쉬운 작업이 아니다.

여기서 한번  버릴 뻔 했다.

이렇게 해도 사용하다보면 가끔 멈춘다.

그냥 USB 재연결 하고 사용한다. (불량은 불량이다.)

여러모로 까다로운 제품이다.

어짜피 버리기 전에 한번 해본 작업인데 다행히 프로그램모드까지 들어가진다.

프로그램모드만 들어가고 프로그램업로드까지만 하면 이제품은 매력적인 제품이 된다.


1. 침셋냉납

2. USB 포트 고정부분 납땜

3. USB 케이블 교체

4. PYTHON 프로그램 업로드 



이제품은 참 독특한 제품이다.

불량만 없었으면....

제품 아이디어는 칭찬해줄만한 제품이다.

이제품 덕분에 PYTHON 도 알아보고..여러가지 공부도 하게 되었다.


1. 싱글 조이스틱

2. 듀얼 조이스틱

3. 키보드&트랙볼






 보드의 특징

  • USB 2.0 프로토콜 인터페이스
  • 빠른 응답 속도
  • 마이크로 USB 타입 B타입 암 커넥터
  • 여유있게  많은 핀들
  • 3 가지 종류의 LED 효과 ( UP + MODE 버튼 )
  • 8 가지 방식의 아날로그 입력과 모든 방식은 12 비트 (0 --- 2 ^ 12-1)의 정확도를 가진다.
  • 구성 소프트웨어는 오픈 소스이므로 계속 개발할 수 있다.(사용자 정의 수정이 가능하다.)
  • 디폴트로 그대로 사용해도 되고 사용자가 수정해서 사용할수도 있다.

구성 소프트웨어는 Python 3에 의해 작성되었다 

Python 2와 호환 되지 않는다  

Python3용 program  다운로드 . ( XM-SETUP.py )


PROGRAM 모드


이 제품은 디폴트 상태에서 4 가지 장치로 변경할수 있다. 

27-28번 핀을 쇼트 시키면 program 모드로 작동한다.

PROGRAM 모드일때 장치 



PYthon 에 대해 공부 한다면 더 다양하게 변경 구성 할 수도 있다.

일단 디폴트는 4가지 모드 변환이다.

초보 사용자가 사용할수 있는 모드는 3가지 이다.


CUSTOM HID 는  모르겠다.

Windows+R 키를 누르고 cmd 입력

python xm_setup.py 엔터


=========================================

Please select a device type:

1.Keyboard+TrackBall;                     사용자 정의 키보드 및 트랙볼

2.Single Player controller with LED;   

LED가있는 싱글 플레이어 게임 컨트롤러

3.Dual players controller;                듀얼 플레이어 게임 컨트롤러

4.Custom HID;                              사용자 정의 HID;

=========================================

장치를 키보드 및 트랙볼로 구성하면 원하는대로 키보드의 키 값을 사용자 정의 할 수 있다.


===========================================================

LIBUSB 설치  = PDF 파일을 잘 읽어 봐야 한다. =

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

PROGRAM 모드일때 보드의 libusb 드라이버를 설치해 줘야 한다. 

    Windows 시리즈 플랫폼에서 libusb를 설치하는 방법은 다음과 같다.

    windows.pdf에 libusb를 설치하는 방법


서명안된 드라이버 설치 방법

http://december.tistory.com/1439


How to Install Libusb Driver.pdf

libusb-win32-bin-1.2.6.0.zip



PDF 설명대로 inf-wizard.exe 를 실행시켜 드라이버를 만들어준다.

드라이버는 만들었으므로 압축 풀고 설치만 해주면 된다.

드라이버는 만들었으니...장치 관리자에 추가만 해주면 된다.

다시 한번 말하지만 서명 안된 드라이버라는 것을 알고 설치해야 한다.


Xin-Mo Proframmer Driver.7z


LIBUSB32 Driver 를 성공적으로 설치하면, 

프로그래머 모드로 장치를 만들고 다음 xm_setup.py를 실행한다. 

Windows+R 키를 누르고 cmd 입력

python xm_setup.py 엔터



이 화면이 표시되면 USB 프로토콜을 통해 장치와 통신이 성공한 것이다. 

이 장치를 키보드 + 트랙볼 및 사용자 정의 키보드 키로 사용하려면 xm_setup.py를 편집 한 다음 실행해야 한다. 

일단 초보자에게는 다른모드는 편집해서 수정이 어렵다.

xm 마메최적화.py

xm_setup.py

Hut1_12v2.pdf

키보드 키값을 편집할 경우 PDF 파일의 53페이지를 참고한다.

PYTHON 에서 USB 모듈 없음 에러가 나오면 

아래  usb module not found error 를 참조 한다.


PROGRAM 모드에서 USB 라이브러리를 설치하는 방법

PDF 파일에 설명이 있지만 설치하다 보면 살짝 다르게 설치 된다.

설명대로 만든 드라이버에 추가적으로 다시 만든 드라이버를 합친 화일이다.


Xin-Mo Proframmer Driver.7z

설명대로 만든 드라이버는 설치가 안 될수도 있다.

두번째 드라이버를 새로 만들어 설치해야 한다.

두번째 드라이버는 설명과는 다르게 하드웨어 아이디가 다르게 만들어진다.

설명서대로 만든 드라이버를 컴퓨터가 인식하고 있는 하드웨어 아이디만 변경해 주면 정상드라이버가 된다.

하드웨어 아이디가 다르면 XM-setup.py 화일도 수정해 줘야 한다.

자신의 컴퓨터에서  인식하는 하드웨어 아이디값을 넣어주고 수정해야만 한다.

이드라이버는 서명 안된 드라이버이므로 그대로 설치가 안된다.

서명 안된 드라이버 설치방법을 확인하고 설치해야 한다.

http://december.tistory.com/1439

===========================================================



    

xm_setup.py

xm 마메최적화.py


자신의 컴퓨터에서  인식하는 하드웨어 아이디값을 넣어주고 수정해야만 한다.

===========================================================

수정내용

===========================================================


# 장치 검색 

# 컴퓨터에따라 idVendor = 0x16c0, idProduct = 0x5710      // 바뀔수 있으니 확인하여 바꿔준다.

# dev =  usb.core.find(idVendor = 0x0483, idProduct = 0x5710)  // default 값

# PDF 설명 idVendor = 0x0483    이지만 컴퓨터에서 인식하는 값은 0x16c0 이다 .


dev =  usb.core.find(idVendor = 0x16c0, idProduct = 0x5710)  

# 설치된 컴퓨터에 맞게 바꾸어 줘야 한다.



usb module not found  ERROR

import  usb.core    usb module not found  에러가 나오는경우 해결방법

https://github.com/walac/pyusb/blob/master/docs/tutorial.rst 


USB 통신 섹션은 PyUSB에 의해 구현된다. 

그러므로 Python USB module을 설치해 준다.


pyusb-1.0.0a2.zip


이화일 압축을 풀어준다.

==============================================

Installing PyUSB on Windows

===========================

 

Now that PyUSB is 100% written in Python, you install it on Windows

in the same way you do on Linux::

 

    python setup.py install

 

Remember that you need libusb (1.0 or 0.1) or OpenUSB running on your

system. For Windows users, libusb 1.0 is still experimental, so it is

recommended libusb-win32 package. Check the libusb website for updates

(http://www.libusb.org).

==================================


C:\.....\Python\pyusb-1.0.0a2


Window+R  cmd

Python setup.py install    실행







 아래 그림처럼 실행되면 정상적으로 USB 모듈이 설치되었다고 보면 된다.

  

아래와 같이 정상적으로 실행되면 성공한 것임

Windows+R 키를 누르고 cmd 입력

python xm_setup.py 엔터




 


프로그래밍 모드로 들어가는 방법?

 어떤 종류의 디바이스 모드이든, 디바이스의 전원이 프로그래밍 모드로 들어가기 전에

 P2의 28 번째 핀을 GND에 연결 한다. (27-28 연결)

디바이스 타입 변경은 프로그램 모드에서만 할수있다. 

Windows+R 키를 누르고 cmd 입력

python xm_setup.py 엔터





LED가있는 싱글 플레이어 게임 컨트롤러




아날로그 인풋과 디지탈 인풋 사이의 전환이 상당히 번거롭다.

다른제품에서 모드버튼으로 해결되는데 이제품은 27-28번핀을 쇼트시켜야만 전환이 가능하다.

모드버튼은 단지 LED 변화에만 관여한다.

개발자가 조이스틱 컨트로러를 만들면서 조이스틱의 기능 변경은 어렵게 하고 

LED 변경 을 쉽게 하기위해 mode 버튼을 LED 쪽으로 기능을 할당해 버렸다.



아날로그 인풋 선택시



디지탈 인풋 선택시





특징

17 개의 버튼과 17 개의 LED가 있다. 

모든 버튼은 LED를 제어 한다. 

LED 는 3 가지 다른 효과를 줄수 있다. 

  • 항상 켜져 있음.
  • 버튼을 누르면 LED가 켜짐.
  • 버튼을 누르면 LED가 꺼짐.

 LED 효과 구성은 전원이 꺼저도 장치에 저장된다. 

 UP + MODE 를 사용하여 LED 효과를 전환한다.

 장치의 전원이 켜지면 모든 LED가 몇 번 깜박인다. 

 이것은 LED의 배선이 올바르게 연결 되었는지 확인하는 데 도움이 된다. 

 

 기기의 전원을 끄더라도 선택 사항은 모두 저장 된다.


LED 배선 방법 :


 USB 포트 제공 전류는 최대 100mA 이다. 

       

 

듀얼 플레이어 게임 컨트롤러







Player 1

Player 2




특색:

    동시에 2 명의 플레이어를 지원 한다. 

    플레이어 1에는 20 개의 버튼이 있고 플레이어 2에는 18 개의 버튼이 있다. 


 사용자 정의 키보드 + 트랙볼


Hut1_12v2.pdf

xm_setup.py

xm 마메최적화.py






key_test

xm 마메최적화.py






조이스틱에서 사용하는 키만 모아서 설정

MAME 에서 사용하는키중 Ctrl 키와  Space 키를 추가 해 주었다.

===============================================

수정내용

===============================================

# 장치를 키보드로 정의하려면, 실행하기 전에 원하는대로 키 값을 수정하십시오.

# 그냥 수정하거나 무조건 추가하지 마십시오.

# 첨부된 Hut1_12v2.pdf 파일 53 페이지 표 12를 참조하십시오.

#     예 : 0x04는 키보드가 문자 'a'를 입력 함을 의미합니다.

#         'a '  0x04

#         'b'   0x05

=============================================

keyvalue =array.array

('B', [0x04, 0x16, 0x07, 0x1D, 0x1B, 0x06, 0x13, 0xE0,0x0C, # A S D Z X C P Ctrl I

      0x50, 0x4F, 0x52, 0x51, 0x14, 0x1A, 0x08, 0x15,0x0B,  # LEFT RIGHT UP DOWN Q W E R H 

      0x20, 0x1E, 0x1F, 0x22, 0x23, 0x21, 0x24, 0x25,0x26,  # 3 1 2 5 6 4 7 8 9

      0x27, 0x05, 0x2B, 0x2C, 0x28, 0x29, 0x17, 0x0D,0x0E, # 0 B TAP SPACE ENTER ESC T J K

      0x0A, 0x18, 0x19, 0x1C  ] )                                   # G U V Y



#

# 장치를 키보드로 정의하려면, 실행하기 전에 원하는대로 다음 키 값을 수정하십시오.

# 그냥 수정하거나 무조건 추가하지 마십시오.

# 첨부된 Hut1_12v2.pdf 파일 53 페이지 표 12를 참조하십시오.

#     예 : 0x04는 키보드가 문자 'a'를 입력 함을 의미합니다.

#         'a '  0x04

#         'b'   0x05

#  노트

#    : 0x04는 키보드가 'a'를 입력 함을 의미하고, 0x05는 'b'를 의미합니다.

#      0x04는 문자 'a'의 ASCII 값이 아닙니다.

#      이것은 USB 프로토콜 규칙입니다.

#      PageUp     0x4B

#      PageDown   0x4E

#      UpArrow      52        <===  0x10(M)

#      DownArrow    51        <===  0x11(N)

#      LeftArrow    50        <===  0x0E(K)

#      RightArrow   4F        <===  0x0F(L)

#      Enter        28

#      ESC          29

#      TAP          2B        <===  0X2A (BackSpace)

#      Space        2C

#      Home         4A

#      END          4D

#      LEFT CTRL    0xE0



# 내용을 정확하게 파악하기전에는 변경하지 마세요.


# 장치로 로 전송 된 데이터

mydata = array.array('B',[0x01])


# 장치에서 수신 한 데이터

recdata = None                         


# 장치 검색 

# 컴퓨터에따라 idVendor = 0x16c0, idProduct = 0x5710 바뀔수 있으니 확인하여 바꿔준다.

# dev =  usb.core.find(idVendor = 0x0483, idProduct = 0x5710)  // DEFAULT 값


dev =  usb.core.find(idVendor = 0x16c0, idProduct = 0x5710)  

# was it found?   장치를 못 찾으면 ID VENDER 값이 드라이버와 맞는지 확인한다.

if dev is None:

    raise ValueError('Device not found')

else:

    # Set the active configuration. With no arguments, the first configuration will be the active one

    dev.set_configuration()

    print ("Device connected.")

=============================================

MAME KEBOARD  최적화

=============================================



특징

  • USB 2.0 프로토콜을 사용.
  • win10 / win8 / win7 / vista / XP / 2000 / 98, Linux, PS3, Linux, MAC, Android, Raspberry Pi와 호환 된다.
  • 사용자 정의 키보드 사용 가능
  • 엔코더 트랙볼 인터페이스
  • 마우스의 오른쪽버튼  중간버튼  왼쪽 버튼 지원

=================================================

배열 데이터에는 40 개의 요소가 있다. 

색인 번호는 0에서 39까지 이다. 

이것은 keyvalue 배열의 구성 파일을 나타낸다. 

콜론 뒤에있는 문자는 기본 키보드 입력 문자이다. 

xm_setup.py 파일을 편집하여 필요한 입력 문자를 사용자 정의 할수 있다. 

편안한 기능이다.

이문자들은 ASCII 문자가 아니고 USB 프로토콜 지원 문자를 의미한다. 

따라서 전용 입력 키보드를 직접 사용자 정의 할 수도 있다.

다양한 센서를 연결하여 입력 핀을 통해 데이터를 수집하거나 

출력 핀을 통해 다른 장치에 제어 신호를 보낼 수 있다. 


파이썬으로 간단한 데모 프로그램이 제공된다. 

코드는 매우 간단 하다.


먼저 명령 0x03을 보내면 나중에 데이터가 제어 데이터임을 의미한다. 

OUT 데이터는 총 32 비트이므로 제어 데이터는 4 바이트 이다. 

데모 파일에서 제어 데이터는 0x04, 0x05, 0x06, 0x07 이다. 

비트가 1이면 출력 고전압, 0이면 저전압을 의미 한다. 
명령 0x03을 보낸 후 장치가 데이터를 다시 전송  한다. 

송신 데이터는 총 6 바이트 이다. 

모든 실행이 실제로 완료되었는지 확인하기 위해 다시 읽은 후

0x03 제어 데이터가 전송 된 후 처음 4 바이트가 뒤 따른다.

 




엔코더 신호란?

    한 쌍의 신호는 두 개의 동일한 펄스 신호를 포함하며 1/4주기만큼 위상이 다르다. 

    따라서 X 축에는 X1( CLUCK ,PULSE )과 X2( Direction ) 의 두 핀이 있다. 

    마찬가지로 Y 축에는 Y1( CLUCK ,PULSE )과 Y2( Direction )의 두 핀이 있다.  

    이 인터페이스 트랙볼을 사용하는 것이 좋다. 





X-AXIS ( 좌우 이동 )

    X Direction

    X Pulse

Y-AXIS ( 위 아래 이동 )

   Y Direction

   Y Pulse



핀 1 =  수직(수평) CLK1 (PULSE)

핀 2 = 5V + 

핀 3 = GND 

핀 4 = 수직(수평)  DIR1 (Direction)









제품 이름 : 키보드 & 트랙볼 보드



 http://www.xin-mo.com/trackball.html


https://www.aliexpress.com/item/Xinmotek-Trackball-Board-Arcade-Game-Controller-USB-Encoder-Board-Game-Machine-Accessories/32868476695.html?spm=a2g0s.9042311.0.0.a4f14c4dLGMK7M


PYTHON 3설치

https://www.python.org/downloads/


오리지널 화일

xm_setup.zip


키보드 관련 최종 수정 화일

TAP,UP,DOWN,LEFT,RIGHT추가  키보드 M,N,K,L,BackSpace 제외 

xm_setup.py



USB 모듈 에러 나올경우 설치 (100% , 설치해야함)

pyusb-1.0.0a2.zip


라이브러리 64 드라이버 설치

프로그램 모드에서 보드의 드라이버 만들어 설치하기 ( PDF 파일을 참조해야함)

libusb-win32-bin-1.2.6.0.zip

How to Install Libusb Driver.pdf


편집프로그램

https://www.sublimetext.com/3

Sublime Text Build 3176 x64 Setup.exe



=========================================

=========================================




반응형