initial commit for HAL driver and firmware