|
Hi Jim,
I was following your tutorial on how to synchronize the Lynxmotion wireless playstation controller and ran in to a problem. I am using the Bot Board II. I have a brand new 9V battery powering the board. The results are only FF 255. The receiver and controller red LEDs blink. The green LED on the receiver is solid on. Included is a pic of the setup and my code.
Thank you for your help!
;PS2 Controller / BotBoard II DAT con P12 CMD con P13 SEL con P14 CLK con P15 ;-----------------------------
'declare variables temp var byte(19) mode var byte index var byte R2 var bit L2 var bit
;PS2Init high CLK
low SEL shiftout CMD,CLK,FASTLSBPRE,[$1\8,$43\8,$0\8,$1\8,$0\8] ;CONFIG_MODE_ENTER high SEL pause 1
low SEL shiftout CMD,CLK,FASTLSBPRE,[$01\8,$44\8,$00\8,$01\8,$03\8,$00\8,$00\8,$00\8,$00\8] ;SET_MODE_AND_LOCK high SEL pause 100
low SEL shiftout CMD,CLK,FASTLSBPRE,[$01\8,$4F\8,$00\8,$FF\8,$FF\8,$03\8,$00\8,$00\8,$00\8] ;SET_DS2_NATIVE_MODE high SEL pause 1
low SEL shiftout CMD,CLK,FASTLSBPRE,[$01\8,$4D\8,$00\8,$00\8,$01\8,$FF\8,$FF\8,$FF\8,$FF\8] ;VIBRATION_ENABLE high SEL pause 1
low SEL shiftout CMD,CLK,FASTLSBPRE,[$01\8,$43\8,$00\8,$00\8,$5A\8,$5A\8,$5A\8,$5A\8,$5A\8] ;CONFIG_MODE_EXIT_DS2_NATIVE high SEL pause 1
low SEL shiftout CMD,CLK,FASTLSBPRE,[$01\8,$43\8,$00\8,$00\8,$00\8,$00\8,$00\8,$00\8,$00\8] ;CONFIG_MODE_EXIT high SEL pause 1
main
;-----------PS2 Mode---------- low SEL ; asking "mode" to PS2 controller shiftout CMD,CLK,FASTLSBPRE,[$1\8] ; reading "mode" from PS2 controller ; 73(hex) is dualshock1 (digital buttons) ; 79(hex) is dualshock2 (analog buttons) shiftin DAT,CLK,FASTLSBPOST,[mode\8] high SEL ;-----------------------------
pause 1
;-----------PS2 Data---------- low SEL ; asking data to PS2 controller shiftout CMD,CLK,FASTLSBPRE,[$1\8,$42\8] ; reading data from controller ; (don't use a "for-next" loop, it's too slow to read PS2 data) shiftin DAT,CLK,FASTLSBPOST,[temp(0)\8,temp(1)\8,temp(2)\8,temp(3)\8,temp(4)\8,temp(5)\8,temp(6)\8,temp(7)\8,temp(8)\8, | temp(9)\8,temp(10)\8,temp(11)\8,temp(12)\8,temp(13)\8,temp(14)\8,temp(15)\8,temp(16)\8,temp(17)\8,temp(18)\8] high SEL
L2 = temp(17) R2 = temp(18) ;-----------------------------
;-----------Basic Micro IDE terminal---------- ; sending carriage return (CR = 13) and the PS2 mode(hex) to the PC serout S_OUT,I57600,[13, hex2 mode\2] ; Basic Micro IDE <= 05.3.0.0
for index = 1 to 18 ; temp(0) contains a dummy variable so we don't send it to the PC ; sending all the data to the PC serout S_OUT,I57600,[" ", dec3 temp(index)\3] ; Basic Micro IDE <= 05.3.0.0
next ;----------------------------- goto main
| Attachments: |

results.PNG [ 12.34 KiB | Viewed 723 times ]
|

2012-01-04_17-10-56_732.jpg [ 1.17 MiB | Viewed 723 times ]
|
|