Hardware and software is pretty simple.
The problem is the "brute force" time.
Lets say you have a 16 key pad and press one key every second, to press all the permutations
a 1 key code will take a maximum of 16 seconds
a 2 ley code will take a maximum of 16* 16 = 256 seconds ( 4 minutes)
a 3 key code will take a maximum of 16*16*16 = 4096 seconds (1 hour+)
a 4 key code will take a maximum of 16*16*16*16 =(1 million+ seconds)
Of course you can get real lucky and have a low number combination.
Just be patient.
Myc
there are better ways to brute force somthing
there are better ways to narrow that down significantly
providing trying one number after another actaully works and there isn't any way of stopping it or slowing it down you can look at it statistically and narrow things down incredibly,
firstly people using sequential number1 eg 123456789 or 987654321 tend to be fairly rare as far as the statistics go so work out what ranges need to be eliminatd to cover those
despite the repeated warnings people still use their birth year for a pin number for their atm access..... (they never learn) secondly their birth date eg 1505 (15th 05 (may)) so there are quite afew ranges that can be tried first hence why the 1 and 2 's on high usage keypads tend to wear out quickly
if you've still got code space after all that postcodes are somthing that are also a popular choice those aren't really a bad place to start (you'd be amased how many people use their postcode)
if it still doesn't get it then give up you could be there for ever,