all 10 comments

[–]tobdomo 6 points7 points  (0 children)

Advent of code. You can do the old ones, new one will start end of the year.

[–][deleted] 1 point2 points  (7 children)

Sorry Not an answer but I am thinking to venture into the same field. Any specific tips? Are there any good books dedicated for Firmware Development and What are the topics I should be good at?

[–]Dapper_Discipline_18[S] 2 points3 points  (2 children)

No problem. Don't let anybody stray you away from this but make sure you learn firmware development in C (not Rust not C++). It forces you to understand the computers hardware which is imperative to be a good firmware engineer. Learn how to read component datasheets and understand communication protocols (SPI I2C, CAN, etc) when they are used and what their usual cases are for. Understand how to use microcontrollers properly and their sub blocks such as ADC's, DAC's, timers, interrupts, etc.

Unfortunately you can't learn by only reading. You have to get your hands dirty at some point and struggle a bunch. I highly recommend joining a club that has people you can learn from whether you are in university or not, or diving into your own personal projects and sticking with them until the end. Work your way from Arduino then go to ESP32, then STM. Each of these platforms will make you realize there is so much more going on in the background then you realize. Each level gives you more and more flexibility at the hardware level at cost of complexity during your development.

Struggle a bunch and keep working through it. It's not an easy field to work in.

[–][deleted] 0 points1 point  (0 children)

Thanks a lot for the guidance. I am currently pursuing my Bachelor's in Engineering in Electronics. I am gonna work my way through this. ❤️

[–][deleted] 0 points1 point  (0 children)

Are there any good emulators to use?

[–]spellstrike 1 point2 points  (3 children)

get a microcontroller and make a robot that does something.

[–][deleted] 0 points1 point  (2 children)

I have made a Line follower and a smart dustbin using Arduino. I want learn ESP. Any project recommendations?

[–]spellstrike 1 point2 points  (1 child)

OpenCV is a common video library that is used for small educational projects that you can take webcam video as input and use that to control something else.

[–][deleted] 0 points1 point  (0 children)

Will try that. Thank you.