control Lego NXT with wiimote by s
Contest Winner

Step 60: Program

Here is the program. Just copy and past

if var.run == FALSE then
var.run = TRUE
HidePie
var.hidden = TRUE
endif


if ((DoubleClicked(Wiimote.Home) and Wiimote.HasClassic == FALSE) or DoubleClicked(Home) or DoubleClicked(Wiimote.Classic.Home)) and (var.hidden == true) then
ShowPie
var.hidden = FALSE
elseif ((DoubleClicked(Wiimote.Home) and Wiimote.HasClassic == FALSE) or DoubleClicked(Home) or DoubleClicked(Wiimote.Classic.Home)) and (var.hidden == FALSE) then
HidePie
var.hidden = TRUE
endif


var.home = SingleClicked(Wiimote.Home)
If var.home and var.on then
var.on = FALSE
elseif var.home and var.on = FALSE then
var.on = TRUE
endif


key.u = wiimote.a
key.j = wiimote.b
key.t = wiimote.Plus
key.g = wiimote.minus
key.y = wiimote.right
key.h = wiimote.Left
var.err = 15               //edit to change intervals. (0 - 180) are possible values

if ((wiimote.roll > var.err) && (wiimote.pitch < -(var.err)))
key.w =false
key.d =false
key.s =false
key.a =false
key.e =true
key.c =false
key.z =false
key.q =false
else
key.e =false
endif

if ((wiimote.roll > var.err) && (wiimote.pitch > var.err))
key.w =false
key.d =false
key.s =false
key.a =false
key.e =false
key.c =true
key.z =false
key.q =false
else
key.c =false
endif

if ((wiimote.roll < -(var.err)) && (wiimote.pitch < -(var.err)))
key.w =false
key.d =false
key.s =false
key.a =false
key.e =false
key.c =false
key.z =false
key.q =true
else
key.q =false
endif

if ((wiimote.roll < -(var.err)) && (wiimote.pitch > var.err))
key.w =false
key.d =false
key.s =false
key.a =false
key.e =false
key.c =false
key.z =true
key.q =false
else
key.z =false
endif

if ((Abs(wiimote.roll) <= var.err) && (wiimote.pitch > var.err))
key.w =false
key.d =false
key.s =true
key.a =false
key.e =false
key.c =false
key.z =false
key.q =false
else
key.s = false
endif

if ((wiimote.roll > var.err) && (Abs(wiimote.pitch) <= var.err))
key.w =false
key.d =true
key.s =false
key.a =false
key.e =false
key.c =false
key.z =false
key.q =false
else
key.d = false
endif

if ((Abs(wiimote.roll) <= var.err) && (wiimote.pitch < -(var.err)))
key.w =true
key.d =false
key.s =false
key.a =false
key.e =false
key.c =false
key.z =false
key.q =false
else
key.w = false
endif

if ((wiimote.roll < -(var.err)) && (Abs(wiimote.pitch) <= var.err))
key.w =false
key.d =false
key.s =false
key.a =true
key.e =false
key.c =false
key.z =false
key.q =false
else
key.a = false
endif

if (((Abs(wiimote.roll) <= var.err) && (Abs(wiimote.pitch) <= var.err)) || ((Abs(wiimote.roll) <= var.err) && (Abs(wiimote.pitch) <= var.err)))
key.w =false
key.d =false
key.s =false
key.a =false
key.e =false
key.c =false
key.z =false
key.q =false
endif


Wiimote.Led1 = var.on
Wiimote.Led2 = true 
Wiimote.Led3 = var.on 
Wiimote.Led4 = true 


if Wiimote.Battery <= 10 and var.warned == FALSE then
Say "Low Battery"
var.warned = TRUE
endif
var.bat = Wiimote.Battery / 192 * 100
debug ='Battery= '+var.bat+'%' 
 
Remove these adsRemove these ads by Signing Up
Pro

Get More Out of Instructables

Already have an Account?

close

PDF Downloads
As a Pro member, you will gain access to download any Instructable in the PDF format. You also have the ability to customize your PDF download.

Upgrade to Pro today!