Updated HAL functionality