lowlevel hardware initialisation