damaru wrote:do I need to program anything to tell the gpio to receive 5 volt from the pin ? My mind has a hard time comprehending how a pin could accept or give you 5v -
Nope there's no programming that needs to be done.
If it helps, I find thinking about electricity as water to be very illustrative.
Imagine you have a faucet. Now a faucet doesn't have anything that says water has to flow a certain direction. It's just a valve and as you open it water flows through that valve. Most people use a faucet to send water from a city supply line into their yard or flower bed. It's a water source, this would be people who use the usb power port to send 5 volt wherever it's needed (like out the pins in the GPIO strip).
On the other hand you have a plumber whose trying to find a leak in your pipes. He disconnects the water from the city and uses your faucet to pressurize the system with water and listen for where the water is leaking out. The faucet still doesn't care which way the water is going, but this time water is flowing into it rather than out of it. This is called a "sink" (so many puns, so little time). On the pi this is the group of people who wants to use their own voltage protection (or worse, no voltage protection) and feed it into the pins on the GPIO strip.
This is what is going on with the 5v pins in the GPIO strip. It's just a bunch of metal so it doesn't care where the power comes from, once there is power on the line, it powers the whole shebang. So you can either give it power on the micro usb power port and send power out of the GPIO pins or you can send power directly into the pins, what does metal care?