Tu pregunta es un poco amplia. El hardware (HW) podría significar un desarrollo ASIC / FPGA totalmente personalizado, DSP programados por ensamblador, o "solo" un sistema embebido típico basado en microprocesadores / microcontroladores / SoC disponibles en el mercado (por supuesto, un SoC también puede contener un DSP que tal vez quieras programar ...). Para grandes cantidades de venta, convertirlo en un ASIC no es infrecuente.
Pero para un proyecto de 2 meses, espero que esté basado en algún microcontrolador:
En cualquier caso, debe insistir en que el equipo de hardware le dé un prototipo para que pueda comenzar a probar su código antes de la fecha límite absoluta; esto podría consistir en una placa de desarrollo genérica, como algunas personas ya han mencionado, pero en mi opinión es su trabajo para proporcionarle el correcto, y potencialmente también algunos periféricos requeridos / similares para las pruebas.
Los simuladores también son posibles hasta cierto punto, pero es posible que deba caracterizar algunos sensores / datos del mundo real que pueda obtener. Aquí el equipo de hardware también necesita al menos ayudarlo.
Aparte de eso, el diseño del software ya se puede hacer y todos los módulos de alto nivel pueden implementarse (y deberían) implementarse y probarse sin el hardware real. Idealmente, también definirá una API junto con el equipo de hardware, y le proporcionarán las funciones de nivel más bajo, por lo que cualquier cambio que hagan en el lado del hardware allí (por ejemplo, simplemente redefiniendo qué pines de puerto usan), no siempre será Sé crítico contigo.
En todos los casos, la comunicación es clave.