Embedded Java
This is this first post of hopefully many to my new site, Chuck’s Tech Talk. I have wanted to write about my tech interests for some time now…so here we go!
Why embedded java? Most will say Java is useless, inefficient, slow, memory intensive, (bla bla bla), on an embedded platform. Of course, there is Android…but I am speaking of much more modest platforms, like Arduino, Raspberry Pi, etc. So why do I think java on embedded platforms is worth writing about?
Well, I have a former high school student that was active in a FIRST Robotics club. Participation in that club shaped her life - she is now pursuing mechanical engineering in college. I am a retired software engineer and it was my pleasure to mentor her software sub-team. The FIRST hardware/software platform is strong (it it Java and C based), but I found it to be expensive and difficult for software developers to get quick, working, testing feedback on their code.
National Instruments makes the CPU hardware, called roboRIO, to power FIRST robot control systems. It is a very nice and robust piece of hardware which contains a CPU that can run a traditional operating system like Linux, and an FPGA for real-time control of sensors and output devices. But it is over $1,000. That makes it really hard for a team, of say 5 software developers, to each have a roboRIO for testing purposes. Most of the time, I found my team members sitting around waiting for hardware to test their code. Much as I tried to show them unit and system testing software engineering techniques, nothing beats seeing your code actually work on hardware.
So an alternative was needed. And let me just say, I found embedded Java resources to be lacking.
So…stay tuned! In subsequent posts, I’ll describe and demonstrate a bare-metal Java framework that I have pulled together that runs on embedded boards such as the Raspberry Pi.
Bye for now…