Featured Engineer

Interview with Rodrigo Almeida

Rodrigo Almeida

Rodrigo Almeida Sr. - Professor at Universidade Federal de Itajubá

  • Image: The picture is from one of my talks about the microkernel development on TDC – The Developers Conference – São Paulo.
How did you get into electronics/ engineering and when did you start?

I’ve start with electronics at 1998, when I started a technician course on eletro-electronics. I think this was one of my first experience of lighting a led.

What are your favorite hardware tools that you use?

I like to debug software using scopes. If they came packed with protocol analyzers for using with UARTS better. Also National has great acquisition boards that helps a lot when testing the protypes.

What are your favorite software tools that you use?

LabView is great for develop an acquisition and processing signals. The graphical programming interface speeds up the time need to set-up the system. In development one of my favorite tools are GCC suite of compilers with its wide range of target architectures and Splint for static code checking.

What is on your bookshelf?

The Art of Programming Embedded Systems (Jack Ganssle), The C Programming Language”, (Dennis Ritchie, Brian Kernighan) and The elements of Technical Writing (Blake & Bly). These are the technical books I tend to keep close. The first two because I use as a guideline for my classes, the third is a little help for a non-native English speaker. The other books are non-technical ones: The Lord Of the Rings, The Silmarillion and The Hobbit (Tolkien), A Batalha do Apocalipse (Eduardo Spohr) and the first two volumes of A Song of Fire and Ice (George Martin).

Do you have any tricks up your sleeve?

One nice trick I commonly use is to keep an output pin connected at a oscilloscope all times during the development. I manly used it as a “free-time” counter by setting the pin high every time the kernel is not running a process (idle task). This way you can have a good picture of how much free time you have left in your system. If you adjust the scope to measure the DC voltage you just need to multiply by 20 to get the free time in percentage.

What has been your favorite project?

Until now my favorite project is developing the microkernel for one of the development boards we have here. Operational systems design rally requires a deep knowledge of the C language. Is really nice to play with function pointers while abstracting and encapsulating hardware devices in struct’s and functions calls. I’m still developing some of the main parts (mainly the context switcher) which will require assembly and C connection.

What are you currently working on?

Besides the microkernel, I’m working on my PhD thesis in artificial intelligence. We’re developing a new neural net training methodology without complex activation functions that may be more suitable to embedded in a simpler hardware.

What challenges do you foresee in our industry?

I think security will be the main thread. With virtually all systems demanding data connection capacity, being internet, bluetooth or any other protocol, the risks of attacks rises significantly. Even in a small project is already hard to cover all breaches. Project safer systems is mandatory and developing new techniques of design and test to ensure this safety will be a rewarding challenge.

Previous Spotlights

 
Click Here