"The trick is to fix the problem you have, not the problem you want." --Bram Cohen
In this issue:
- Getting Started with C++ for Firmware Developers
- Further Develop Your Embedded Programming Skills this Fall
- Modern Embedded Software Architecture: Beyond the RTOS
- Retake Control of Your Embedded Project Schedule
- Industry News That's Not Boring
Firmware Update is a free, monthly-ish newsletter by embedded systems expert Michael Barr. Firmware Update is a trademark and this issue is Copyright ©2019. You may forward whole issues to colleagues that design embedded systems. No other uses are permitted.
Getting Started with C++ for Firmware Developers
C++ compilers are widely available for embedded processors, including microcontrollers. However, the use of C++ by firmware developers lags the language's adoption rate by other types of programmers.
Have you thought about moving from C to C++? With some definite benefits of C++, what's stopping you?
Why not watch this 1-hour video How to Get Started with C++ in Embedded Systems?
Or attend Barr Group's hands-on training Embedded Systems Programming in C++?
Further Develop Your Embedded Programming Skills this Fall
There are a number of opportunities to learn firmware development best practices in coming months:
- Embedded Systems Programming in C++ (Oct 7-10)
- Embedded Software Boot Camp® (Oct 21-24)
- Software Reverse Engineering and Security Analysis (Oct 28-30)
- Test-Driven Development (TDD) & Agile (Nov 4-6)
- Embedded Security Boot Camp® (Nov 12-15)
- Embedded Android® Boot Camp (Nov 18-21)
Consult the full training calendar for prices and other details. Beware that prices increase two weeks prior.
Alternatively, consider bringing an instructor to your office for an on-site training for your whole team. Teams of five or more usually find this is more cost effective than attending public courses.
Register today!
Modern Embedded Software Architecture: Beyond the RTOS
Importantly, an RTOS is not the only architectural paradigm available. So-called "active objects" are state machines that cooperate with each other--without requiring preemption or blocking--to process a sequence of external and internal events as they arise. If this is not a paradigm you are already familiar with, you owe it to yourself and your firmware development team to learn more.
Start here: https://embeddedgurus.com/state-space/category/event-driven-programming/
Retake Control of Your Embedded Project Schedule
Is your embedded systems design project falling behind schedule? Staffed with experienced embedded hardware and firmware engineers, Barr Group provides embedded systems design assistance and expert guidance to engineering teams and their managers.
Barr Group's design team augmentation services include:
- Product Development Assistance
- System/Software Architecture Consulting
- Process Improvement Consulting
With a perpetual focus on helping teams get back on schedule and budget, our engineers regularly help companies complete the development of products including: medical devices, automotive systems, cloud-connected IoT products, industrial automation equipment, and mobile/communications gear.
Need temporary staff augmentation? Struggling to find specific expertise? Need help with development tool configuration? Want an independent design/code review? Whatever's stressing you out... we can help with that!
Reach out: https://barrgroup.com/contact-us
Industry News That's Not Boring
The current state of wearable IoT devices for healthcare. Infographic: https://www.raconteur.net/infographics/wearable-healthcare-tech
Xilinx releases new world's largest FPGA with 35 billion transistors, breaking its own prior record by 60%. https://www.eetimes.com/document.asp?doc_id=1335078
Want to make elections better (less costly and more representative, e.g.)? Just add randomness: https://blog.simondlr.com/random-walks-across-the-aisle
Stolen fingerprint data could spell disaster for biometric security methods: https://techxplore.com/news/2019-08-stolen-fingerprints-biometric.html
Are we living in a computer simulation? "Let's not find out." https://www.nytimes.com/2019/08/10/opinion/sunday/are-we-living-in-a-computer-simulation-lets-not-find-out.html
Risks of relying on embedded systems for evidence: Denmark's courts are reviewing "over 10,000 verdicts" as a result of recently discovered bugs in handset location data provided by cell phone infrastructure! https://www.nytimes.com/2019/08/20/world/europe/denmark-cellphone-data-courts.html
More news: https://twitter.com/embeddedbarr
Quick Links to Useful Stuff
- Bug-killing Embedded C Coding Standard
- Blogs about Embedded Systems Design
- Embedded Systems Glossary
- Library of Free How-To Technical Articles
How to Contact the Author
I'm always interested in hearing from embedded systems designers and happy to take a few minutes to help you find the resources to get a design done right. Send me an email anytime. And be sure to also connect with me on Twitter (@embeddedbarr) and LinkedIn (https://linkedin.com/in/embeddedbarr).