Using a MicroController? 8 Reasons why you Need to use Linux on an OSD335x for Your Next Design.

 

You’re busy. We get it. You ask: Do I really have time to learn about Linux?  You don’t have time NOT to. 8 reasons why MCU users love switching to Linux on OSD335x :

1. Code is written while you sleep

The software libraries and device drivers for Linux are supported by a huge open-source community that stretches around the globe with thousands of passionate programmers and developers. This means that device drivers and software libraries, like OpenCV, an image processing library, or the TCP/IP stack, a complete set of networking protocols, are already available for most hardware components in your design. Even with new hardware that has just hit the market, there is a good chance that someone has already started developing or has developed the software you need. It is like having your own world-wide team of software developers.

2. A friend has started your hardware design for you

Open-Hardware reference designs (i.e. designs with schematics and layout that you can look at and copy) built around OSD335x will help you jump start your hardware design. When you start your custom design, it is easy to understand how different components are connected and easy to use those components or similar components in your design. Reference Designs featuring OSD335x are plentiful and can be found on our website and also on boards from BeagleBoard.org®, a 501c3 foundation focused on education.

3. Power inputs just like mom used to make

When designing around a microcontroller, there is generally one power input and therefore, no requirements for how to sequence the bring up of multiple power rails. Microprocessors, on the other hand, have many different power inputs and strict power sequencing requirements. However, unlike other microprocessors, hooking up power for OSD335x has the comfort of a microcontroller. The Power Management IC (PMIC) inside the OSD335x deals with all different voltage rails and power sequencing meaning you only have to connect one power input.

The OSD335x even makes it simpler than a microcontroller if you need to power your system from multiple power sources, for example an AC adapter, USB, and a Li-Ion battery. The OSD335x PMIC automatically takes care of the power muxing and switching between power sources.

4. The beginning of a beautiful relationship

Moving to an OSD335x based Linux design allows you to build a system is both flexible and scalable. Given the wide range of peripherals and bus protocols supported by the OSD335x, with a single Linux image, you can support many different hardware configurations by simply changing the device tree (You can learn more about device trees here). Not only can software components of Linux be loaded or removed to support the given hardware configuration, they can also be dynamically changed which can allow hardware components to be updated with a one-line software change and a reboot.

5. Speaks your language, not just C

Linux supports almost all high-level programming languages like Python, Java, Perl, Google Go, C, C++, and many others. Also, software libraries that extend the functionality of high level languages can help you save tons of time in code development and debug. For example, the “numpy” library in Python can help you with complex mathematical operations like solving large multi-dimensional matrices and arrays without you having to reinvent the wheel. This enables you to work in the language that makes sense for your application versus forcing your application to work within the limitations of C.

6. You actually can have your cake and eat it too!

Real-time deadlines within an application are one issue you can face when designing a system. These deadlines are straight-forward to manage with microcontrollers, but difficult or impossible to manage when using Linux on a microprocessor. Now you don’t have to choose because the OSD335x comes with a 1GHz ARM Cortex-A8 processor that can run Linux as well as two 200MHz Programmable Real Time Units (PRUs). The PRUs are microcontrollers that are independent of the main Linux processor allowing you to have both the power of Linux but still manage the real-time deadlines in your application.  (There is an excellent tutorial on PRU from Texas Instruments here)

7. Because size does matter

The OSD335x offers a 1GHz ARM Cortex-A8 processor, two PRUs, DDR3 memory, power management (with battery charging support), a power regulator (to support external devices) and much more, in a microcontroller sized package (approximately 60% smaller than a comparable discrete design). By switching to OSD335x, you get a powerful processor in a tiny package.

8. Who can resist a cute penguin mascot

Over the last three decades, Linux has achieved indisputable reputation of being reliable, secure, scalable, powerful and flexible. With Linux on your side, nothing is beyond your reach.

 

For any questions about switching your microcontroller design to an OSD335x with Linux, you can reach us directly at: https://octavosystems.com/forums/

We’d like to thank lewing@isc.tamu.edu and The GIMP for permission to use the ‘Tux’ Linux image used in our social media about this post

*****