You can use Samsungs free SDK for their line of phones.http://innovator.sam.....FplatformId=2
You will get access to the accelerometer (tilt sensor), Lux Sensor (Ambient light sensor), Notification LED (the power button led has 3 colors which it can display/mix), and Haptic feedback functions.
There is already API to access the GPS receiver in the phone, as already explained by earlier replies relating to the GPSID functions. Alternatively you can also use the comm port/serial port functions in .NET/VS, just open COM8 with baud of 57600, and read the NMEA streams it gives.
All can be done with VB.NET, although many of the examples that come with the SDK are with C# the syntax is pretty much the same as VB as the assembly is .NET.