Log in

goodpods headphones icon

To access all our features

Open the Goodpods app
Close icon
The Amp Hour Electronics Podcast - #556 – Firmware for Hardware Engineers with Phillip Johnston

#556 – Firmware for Hardware Engineers with Phillip Johnston

The Amp Hour Electronics Podcast

09/07/21 • 79 min

plus icon
bookmark
Share icon

Welcome Phillip Johnston of Embedded Artistry!

  • Phillip was on episode 290 of Embedded.fm
  • Phillip’s firmware experience started at a military contractor. He also had a programming background from high school.
  • The minimum product is a bootloader and has remote firmware update capabilities
  • General guidelines and design methodologies for writing better firmware
    • Separation of concerns: break things down smaller
    • How to hide information
    • Loosely coupled to the hardware
  • “How can I make this smaller?”
  • “Can I test this without the hardware?”
  • Either James Grenning / Jacob Beningo talk about “There is no spoon” and hardware is just another dependency.
  • Flex paging system example
  • Recorded data over the radio
  • Continuous Integration (CI)/ Continuous Deployment (CD)
  • Test Driven Development (TDD) is a well known software engineering concept that James Grenning teaches for embedded development
    • Start sketching out on the computer first
    • What interfaces do I need to create
    • Interface with sensors using a direct interface from the desktop like the Aardvark
    • Isolating someone else’s code into its own box
  • Writing it using x86 based GCC or CLang
  • Forces you to think about dependencies
  • Lager data episode with Akbar (hardware in the loop testing)
  • Setting up tests
  • E&O insurance
  • What does a test suite look like?
  • Phillip uses Jenkins for his build system, but there is also GitHub actions, circleCI, travis
  • Hardware in the loop test
  • When should people start CI?
  • Need to build from command line
  • Automated systems allows you to leverage yourself
  • Embedded Artistry has Courses that teach people how to build systems for their embedded systems
  • Design for Change is an upcoming course
  • Putting the pipeline in place
  • Start by checking code on the server
  • Having a shell on the device
  • What does ‘best’ look like?
  • Mixed metaphors in software
  • Dealing with multiple PCB builds
  • Dwigt
  • What happens when the complexity goes up (networking interface)?
  • Testing in more difficult environments
  • nRF5 SDK to Zephyr
  • Treat an RTOS like any other dependency
  • Zephyr
  • Low power seems to be lacking

Links from Embedded Artistry that our listeners might find useful, not already linked above:

09/07/21 • 79 min

plus icon
bookmark
Share icon

Generate a badge

Get a badge for your website that links back to this episode

Select type & size
Open dropdown icon
share badge image

<a href="https://goodpods.com/podcasts/the-amp-hour-electronics-podcast-88383/556-firmware-for-hardware-engineers-with-phillip-johnston-16375943"> <img src="https://storage.googleapis.com/goodpods-images-bucket/badges/generic-badge-1.svg" alt="listen to #556 – firmware for hardware engineers with phillip johnston on goodpods" style="width: 225px" /> </a>

Copy