hardware upload