Make sure your piston is at a 2x1 configuration in the direction you want it to extend. PSTN should not be in a square, it should be longer on the axis you would like it to push. (X<->,Y^v)
Place PSCN on the opposite side of which you would like it to extend, SPRK the PSCN, ?????, Profit.
[SPRK]>[PSCN][PSTN][PSTN]---------->
[SPRK]>[Not PSCN][PSTN][PSTN]<----------
FRME or Frame may be applied to the end of the PSTN and can extend up to 14 blocks in either direction, or both, for a total of 29 blocks in width. FRME is inherently "sticky" and will hold onto any element it touches.
P
S
T
N
--------------- (<Frame, 1 directly under PSTN and 14 to its side.)