The initial communication started with asking me about my previous works in the field, projects that I was involved. The questions where mainly technical. Software questions were mainly on the pointers, and every minute details like cascaded pointers, function pointers, volatile and it's use cases, hardware interrupts, re-entrant functions. The questions on hardware was asked less as I was being hired for the software team. Questions on Microcontrollers, instruction sets, instruction formats, any hardware architecture like 8051, 8085/86.
Overall a very good experience in the interview. There were two rounds of the technical interview which included questions from the above topics.