Jacob Beningo
Jacob Beningo
  • 31
  • 236 459
#008 - Are Embedded Manufacturers Ready for IoT Security Compliance Demands with Francois Baldassari
In this episode, Jacob Beningo interviews François Baldassari, Memfault CEO, about IoT security compliance demands. They discuss embedded manufacturers' readiness for new security regulations, the challenges they face, and potential solutions.
They also explore the differences between the EU's Cyber Resilience Act and the US's Cyber Trust Mark. François emphasizes the importance of OTA updates, using open-source software, and building security teams within hardware companies. He also highlights the need for collecting the right data and observability to improve security posture.
Takeaways
- Embedded manufacturers are not fully ready for new IoT security compliance demands.
- Regulatory frameworks like the EU's Cyber Resilience Act and the US's Cyber Trust Mark are coming into effect and will require certification of cybersecurity guidelines.
- Challenges include the uncertainty of the regulations, the additional costs and effort required, and the lack of established infrastructure and best practices.
- Recommendations for compliance include implementing OTA updates, using open-source software, adopting SBOM scanning, and ensuring observability of devices.
- AI is not currently a solution for compliance, but it may play a role in the future as more data is collected and analyzed.
- Joining the conversation around open-source products and following security best practices can help improve device security.
Chapters
00:00 - Introduction and Background
04:42 - IoT Security Compliance Demands
08:04 - Challenges and Readiness of Embedded Manufacturers
11:24 - Recommendations for Compliance
19:35 - The Role of OTA Updates and Open-Source Software
23:28 - Building Security Teams and Ensuring Observability
28:46 - Differences Between EU and US Regulations
35:20 - The Potential Role of AI in Future Compliance
มุมมอง: 198

วีดีโอ

#007 - Unlocking the Potential of AI in Embedded Systems with Daniel Situnayake
มุมมอง 437หลายเดือนก่อน
Summary In this conversation, Jacob and Daniel Situnayake discuss the future of AI and machine learning in embedded software development. They explore the challenges and opportunities of implementing AI and machine learning at the edge, and how tools like TensorFlow Lite for Microcontrollers and Edge Impulse are making it easier for developers to deploy models on resource-constrained devices. T...
#006 Decreasing Debugging, Increasing Productivity
มุมมอง 276หลายเดือนก่อน
In this episode, Jacob Beningo discusses the importance of debugging in embedded development and shares several techniques to decrease debugging time. He highlights the statistic that development teams spend 20-40% of their time debugging, which equates to 2.5-4.5 man-months of development. Beningo emphasizes the use of test-driven development (TDD) as a way to prevent bugs and decrease debuggi...
#005 - The Risks of Zero-Day Attacks in Open Source Software with Frank Huerta
มุมมอง 1262 หลายเดือนก่อน
Summary In this episode, Jacob Beningo interviews Frank Herta, the CEO of Curtail Incorporated, about the risks of zero-day attacks in open source software. They discuss the importance of DevSecOps and the need for comprehensive security measures. Frank shares his background in security and how his company is working on detecting zero-day bugs. They also explore the vulnerabilities of open sour...
0004 Embedded DevOps To The Rescue
มุมมอง 3193 หลายเดือนก่อน
In this episode, Jacob Benningo discusses the importance of DevOps in the embedded software development industry. He emphasizes the need for DevOps to improve project delivery, efficiency, and product quality. Jacob provides insights into the principles of DevOps, the implementation of CI/CD pipelines, and the impact of DevOps on software development processes. He also shares actionable steps f...
#003 - The Battle for True Open Source RTOS
มุมมอง 3533 หลายเดือนก่อน
Carsten Gregerson shares his background in the embedded systems industry and how he got into it. He discusses his work at Nabto, a company that provides remote access to small devices using peer-to-peer technology. Carsten then delves into the topic of real-time operating systems (RTOS) and the battle for open-source RTOS. He explains the difference between a real-time operating system and a hi...
2024 Embedded Online Conference Speaker Preview
มุมมอง 1994 หลายเดือนก่อน
Here are some thoughts from the embedded online conference speakers on why this years conference should be attended.
#0002 - Baremetal, POSIX, and the Future of RTOS
มุมมอง 8696 หลายเดือนก่อน
Summary This podcast episode discusses using bare metal and real-time operating systems (RTOS) in embedded systems development. It highlights the steady adoption of RTOS in the industry and the continued relevance of bare metal development, particularly in 8-bit microcontrollers. The episode explores the future of RTOS, including the rise of open-source options like Eclipse ThreadX and Zephyr. ...
#0001 - Max the Magnificent's AI Emporium
มุมมอง 4137 หลายเดือนก่อน
In this conversation, Max (Clive) Maxfield discusses his journey into embedded systems and the industry's evolution. He highlights the fascinating developments in AI and its impact on embedded systems. Max also explores how AI can benefit embedded software and hardware developers and the potential applications of AI with sensors. He discusses the advancements in semiconductor technology to keep...
#0000 Embedded Software Trends for 2024
มุมมอง 2.4K8 หลายเดือนก่อน
In this episode, Jacob discusses trends in the embedded software industry and provides techniques and practices for staying relevant and successful. The trends include leveraging AI to develop embedded systems, improving CI/CD processes, phasing out C for C or Rust in 32-bit applications, adopting developer-centric workflows, moving to higher levels of abstraction, and using POSIX APIs in real-...
2022 Embedded Online Conference - Why Attend?
มุมมอง 4402 ปีที่แล้ว
This video includes speakers from the 2022 Embedded Conference discussing why conferences matter to teams and developers today.
Why Function Pointers are Awesome
มุมมอง 7K2 ปีที่แล้ว
In this 2022 Embedded Online Conference Microtalk, Jacob Beningo discusses the use cases for function pointers in embedded software. This video looks at the C programming language function pointers, and how they can be leveraged for use cases such as: - task scheduling - command processing - state machines - interrupt vector tables Developers often get confused that function pointers shouldn't ...
Tracing an RTOS Application using SystemView
มุมมอง 9K6 ปีที่แล้ว
In this video, I walk developers through how to perform a system trace using Segger's SystemView. Tracing an application is critical for a developer to understand and visually see how their application is behaving.
Deep Insight Analysis using Ozone
มุมมอง 2.9K6 ปีที่แล้ว
In this video, I show how Segger's Ozone tool can be used to perform a Deep Insight Analysis which provides a developer with statistical profiling information, instruction tracing and code coverage analysis.
An Example of OsAware
มุมมอง 5656 ปีที่แล้ว
In this video, I provide a basic overview of how a developer can use OSAware debugging when using a real-time operating system (RTOS). In this example, I am using embOS with Embedded Studio.
Setting up and Using Seggers embOS RTOS
มุมมอง 5K6 ปีที่แล้ว
Setting up and Using Seggers embOS RTOS
FreeRTOS Setup with TrueStudio and the STM32F4 Discovery Board
มุมมอง 23K7 ปีที่แล้ว
FreeRTOS Setup with TrueStudio and the STM32F4 Discovery Board
Mastering RTOS Debugging Techniques
มุมมอง 18K7 ปีที่แล้ว
Mastering RTOS Debugging Techniques
Creating Tasks in FreeRTOS using Atollic TrueStudio and the NXP K64F Freedom Board
มุมมอง 2.2K7 ปีที่แล้ว
Creating Tasks in FreeRTOS using Atollic TrueStudio and the NXP K64F Freedom Board
FreeRTOS Setup with TrueStudio and NXP K64F Freedom Board
มุมมอง 2.3K8 ปีที่แล้ว
FreeRTOS Setup with TrueStudio and NXP K64F Freedom Board
Setting up Statistical Profiling in Atollic TrueSTUDIO
มุมมอง 3.1K8 ปีที่แล้ว
Setting up Statistical Profiling in Atollic TrueSTUDIO
Micro Python Setup Part 2 - Building and Deployment
มุมมอง 7K8 ปีที่แล้ว
Micro Python Setup Part 2 - Building and Deployment
ESDT: Epidsode 1 - Introduction to Bootloader Design for Microcontrollers
มุมมอง 116K8 ปีที่แล้ว
ESDT: Epidsode 1 - Introduction to Bootloader Design for Microcontrollers
Kinetis-L Freedom Board - KL25Z Low Power Setup
มุมมอง 6K8 ปีที่แล้ว
Kinetis-L Freedom Board - KL25Z Low Power Setup
Micro Python Setup Part 1 - Setting up a VM
มุมมอง 6K8 ปีที่แล้ว
Micro Python Setup Part 1 - Setting up a VM
Micro Python - PyBoard Overview
มุมมอง 13K8 ปีที่แล้ว
Micro Python - PyBoard Overview
Real-time Software using Micro Python - The Basics Promotion
มุมมอง 2.6K8 ปีที่แล้ว
Real-time Software using Micro Python - The Basics Promotion
Isolated USB to UART Converter in 20 minutes for $20
มุมมอง 4.2K9 ปีที่แล้ว
Isolated USB to UART Converter in 20 minutes for $20
2015-ESC-Boston
มุมมอง 1449 ปีที่แล้ว
2015-ESC-Boston
Embedded Software Resolutions for 2015
มุมมอง 3009 ปีที่แล้ว
Embedded Software Resolutions for 2015

ความคิดเห็น

  • @victormanuel8767
    @victormanuel8767 11 วันที่ผ่านมา

    This coming off the heels of me just learning to use function pointers is super helpful. It contextualizes use cases really well, and i wish there was a discussion of their applications for the use cases at the end of the video.

    • @beningoembedded
      @beningoembedded 7 วันที่ผ่านมา

      Thanks for the suggestion. Maybe something I'll do in the future in a different video. The idea of this one was to be a super short talk that discusses the technique. I agree more indepth looks would be helpful!

  • @HansBezemer
    @HansBezemer 16 วันที่ผ่านมา

    I couldn't live without function pointers! Agreed, nowadays I use a language (Forth) which makes it much easier to use function pointers, but I wrote my Forth compiler by basically using three tables - one of which with function pointers using something resembling your second technique.

  • @user-io4sr7vg1v
    @user-io4sr7vg1v 17 วันที่ผ่านมา

    I thin you misspoke at ~ 6:19, "You don't want these (function pointers) in FLASH...". I think you meant, "You don't want these (function pointers) in RAM...".

  • @Bits32
    @Bits32 หลายเดือนก่อน

    The simulation suggestion near the end of the podcast is horribly underrated.

    • @beningoembedded
      @beningoembedded หลายเดือนก่อน

      I feel that it is too. Something I'm hoping to promote and push teams to do more of!

  • @beningoembedded
    @beningoembedded หลายเดือนก่อน

    Here is the link to the Edge AI book that you can download for free: edgeimpulse.com/edge-ebook

  • @NeedBetterLoginName
    @NeedBetterLoginName หลายเดือนก่อน

    What a great little vid! Thanks.

  • @Rupa-nb5uf
    @Rupa-nb5uf หลายเดือนก่อน

    Sound amplitude needs to be High to help watching in pc .it is ok in mobile

  • @fifaham
    @fifaham หลายเดือนก่อน

    Function pointers are evil? I have always used them and I never had any problem with them, unless you have a bad memory or stack overflow or damaged memory section then this will never happen, assuming there is an active WDT monitoring those special cases. I have always recommended to use an auxiliary MCU in case the first had damaged memory then the second takes over - in case of medical or security applications.

    • @beningoembedded
      @beningoembedded หลายเดือนก่อน

      Exactly. Unless this, unless that. There are companies that deem them evil and that they should be avoided at all costs. I love and use them all the time. If you know what you're doing, you can avoid all those "unlesses"! Thanks for the comment!

  • @unclechaelsneckvein
    @unclechaelsneckvein หลายเดือนก่อน

    Fuck AI

  • @ralflici986
    @ralflici986 หลายเดือนก่อน

    Very interesting talk, thank you!

  • @edh6096
    @edh6096 3 หลายเดือนก่อน

    I am an EE with 45 years of embedded retiring soon. All assembler, C, and then C++ OO at several multi-national top tier companies. Started using DevOps at least 10 years ago. STILL SEEING 65% OF PROJECTS OF OUR PROJECTS ARE LATE!! What is different from the old days? 100% of the Tech. What is the same as the old days? 100% of the management strategies.

  • @naymulhasan1533
    @naymulhasan1533 3 หลายเดือนก่อน

    Awesome! 🎉

  • @fifaham
    @fifaham 3 หลายเดือนก่อน

    @22:40 it would be great if we have translators between assembly codes of various manufacturers that help facilitate the code transition to another manufacturer.

  • @fifaham
    @fifaham 3 หลายเดือนก่อน

    @21:32 for low count pin MCU we can set the code to poll for the zero logic via the switch for 1 second after power up, or so - and after say 1 second from power up the code flow goes automatically to program, not bootloader, if low logic is not detected. So before you power up you just press and hold the switch then power up - this guarantees that the MCU will enter bootloader code. I have done such a similar design before. Then re-use that GPIO pin for another task.

    • @jacob_beningo
      @jacob_beningo 3 หลายเดือนก่อน

      1 second is a very long time in a lot of application. In some industries, there is a requirement for this entire process to take less than 1 millisecond!

  • @SumitAdep
    @SumitAdep 4 หลายเดือนก่อน

    nicely explained this part 49:17

  • @davidhawley1132
    @davidhawley1132 4 หลายเดือนก่อน

    Excellent. I plan to use to resolve issue with FTDI232 board that doesn't seem to like me powering my PCB separately. Unfortunately, I will have to create my own breakout board, but that's a minor inconvenience.

  • @dreadesina5216
    @dreadesina5216 5 หลายเดือนก่อน

    C++ for embedded system? I think he misspoken, first C++ too bloated for an embedded system, with the limited resources available for an embedded system, C will always be the de facto programming language for embedded development and also C will never be faced out, lot of compilers, applications included enterprise applications depend on this ubiquitous language and the most popular programming language of all time. Rust did nothing new in term of technology only help programmer who don't understand C with memory management and allocations and synthetic sugar for using structure as interface the funniest thing is any language new or upcoming will still need to be write in C and with the portability of C and how small it is, it's the perfect language for embedded system and any system applications in my opinion. So instead of trying to look or invent a new tools take the time to understand the one you have and how it works use the good side for your advantage and be aware of the bad ones and take note. We all know the usefulness of an hammer also we also know how dangerous it is during engagement if we don't pay attention so do we say hey the hammer hit me on the finger so it's not good for this function we need another hammer that won't crush my finger when I'm using it even if I wasn't paying attention. No programming language is perfect the same way no software is perfect out of the box so why do we always pretend and justify the proliferation of programming language every time some programmer got bitten by not understanding the tools they're using. Please understand your tools and the functionality of the tools to help your development and help you write elegant codes and software.

  • @user-ee1wy8gv5u
    @user-ee1wy8gv5u 5 หลายเดือนก่อน

    So how much time do we have until there won't be any job for embedded programmers in your opinion?

    • @beningoembedded
      @beningoembedded 5 หลายเดือนก่อน

      I think there will always be jobs for embedded developers. Companies can't find developers with the right skills. Most folks go into more "sexy" areas like AI, web apps, etc. AI will be a great tool to make the few that do embedded more productive at it. At least, that's my opinion today.

  • @TheJoMoVO
    @TheJoMoVO 6 หลายเดือนก่อน

    Awesome video. I'm curious, do you have a favorite RTOS to work with?

    • @beningoembedded
      @beningoembedded 6 หลายเดือนก่อน

      I don't have a favorite. I have several that I use based such ThreadX, FreeRTOS, Zephyr, etc.

  • @hectorvidales876
    @hectorvidales876 6 หลายเดือนก่อน

    Great video, thank you!

  • @theeeview6718
    @theeeview6718 7 หลายเดือนก่อน

    Great video, gents! I'm a history nut so I loved this.

  • @emanueleziglioli499
    @emanueleziglioli499 7 หลายเดือนก่อน

    Max is a legend!

  • @zoenagy9458
    @zoenagy9458 8 หลายเดือนก่อน

    How many decades we have to wait till we get a universal HAL like uart_init(ch) uart_read(ch, u8*) uart_write(ch, buf, len) chip independently, out of the box, which then can be customised.

    • @beningoembedded
      @beningoembedded 8 หลายเดือนก่อน

      Thanks for the comment. I don't think we will ever end up with a universal hal. While the idea is appealing, there are so many diverse ways of doing things and so many requirements for different architectural sets that it is probably improbable. If you are working with Cortex-M parts, you could view CMSIS as providing that need. In automotive, you might use autosar, etc While I'm not optimistic, we could see some open-source HALs gain traction in specific market areas.

    • @user-xh9cj7in3p
      @user-xh9cj7in3p 8 หลายเดือนก่อน

      The closest we will come to a Universal HAL was demonstrated into "2001 a space odyssey". @@beningoembedded 😜

  • @Bob-zg2zf
    @Bob-zg2zf 8 หลายเดือนก่อน

    Thank you, Jacob! Long time no see! Great video. but, sometimes, I feel using ChatGPT is kind of cheating. weird... sigh...

  • @grimvian
    @grimvian 8 หลายเดือนก่อน

    The use cases gives me inspiration to enhance my C code, so a big thank you from me.

  • @ShyuLee
    @ShyuLee 9 หลายเดือนก่อน

    How can you get SES attached to the target via J-Link and the SystemView access J-Link at the same time?

  • @SurvivalSquirrel
    @SurvivalSquirrel 9 หลายเดือนก่อน

    Thank you for this free education.

  • @bennguyen1313
    @bennguyen1313 10 หลายเดือนก่อน

    My debugger only has JTAG, i.e. no real-time tracing via Arm's ITM SWV (SWD+SWO) or J-Link RTT. How can Tracealyzer be used, either streaming via uart (USB CDC), or versus placing in ram for later analysis? Would love to see a typical debug session using Eclipse+Tracealyzer and an STM32.

  • @GrindAlchemyTech
    @GrindAlchemyTech 11 หลายเดือนก่อน

    Thank you

  • @boudewijndijkstra82
    @boudewijndijkstra82 ปีที่แล้ว

    Another problem is that calculating the maximum stack usage becomes non-trivial. For each function pointer invocation it has to be clear which functions can potentially be called.

    • @beningoembedded
      @beningoembedded ปีที่แล้ว

      Absolutely! Thanks for the comment and observation!

    • @anon_y_mousse
      @anon_y_mousse 10 วันที่ผ่านมา

      It gets harder still when using C and VLA's. Imagine even trying to guess when the size comes from the user too.

  • @Bob-zg2zf
    @Bob-zg2zf ปีที่แล้ว

    so true, but so difficult to do, constantly.

  • @Bob-zg2zf
    @Bob-zg2zf ปีที่แล้ว

    I just bought your book today.❤

    • @beningoembedded
      @beningoembedded ปีที่แล้ว

      Excellent! I hope you enjoy it!

    • @Bob-zg2zf
      @Bob-zg2zf ปีที่แล้ว

      @@beningoembedded I ordered it but I have not received it. I hope I will indeed enjoy it as much as I enjoyed your videos. The thing is, my expertise level is not that advanced. I am afraid I won't understand all or most of your book's contents. But I like your video contents and style and background.

    • @Bob-zg2zf
      @Bob-zg2zf ปีที่แล้ว

      @@beningoembedded Do you mind if I ask you a simple question? I have read your article, where you mentioned that we are supposed to "write rock-solid embedded software". But I can only design and solder an STM32 board with HCD1080, using someone's Keil project code that I downloaded from the Internet. So, how do I write my own entire project/code? How do I improve myself from using others' code to "write my own rock-solid embedded software"? The architecture seems so difficult to master to write from scratch or modify here and there....

  • @AzlanIkram
    @AzlanIkram ปีที่แล้ว

    Really nice explanation of the bootloader topic . I had a lot of questions on mind but this cleared up alot

  • @bobby9568
    @bobby9568 ปีที่แล้ว

    The stops: up. to. date.

  • @TecICTian
    @TecICTian ปีที่แล้ว

    Thanks for the demo

  • @CuriousCyclist
    @CuriousCyclist ปีที่แล้ว

    Really good video! Thanks for taking the time to make it.

  • @Kefford666
    @Kefford666 ปีที่แล้ว

    That memory map allocates a whole 1KB page to the boot config byte. You said you write a string there rather than a whole byte, but do you write anything else here? It seems like a waste of a flash page if there isn't much written there.

    • @jacob_beningo
      @jacob_beningo 3 หลายเดือนก่อน

      You can write other information there that might be useful. It does seem like a waste, but 1 kB in many hardware solutions today is not that much.

    • @Kefford666
      @Kefford666 3 หลายเดือนก่อน

      @@jacob_beningo I am sure other things will come up so it may prove to be handy!

  • @jorgereyes436
    @jorgereyes436 ปีที่แล้ว

    Great video and explanation! Thanks

  • @suptarotangel
    @suptarotangel ปีที่แล้ว

    What’s the job a developer comes to someone to update their firmware? What’s that guy? If I wanna be him lol

  • @AbuSous2000PR
    @AbuSous2000PR ปีที่แล้ว

    very helpful many thx for sharing

  • @kneg7843
    @kneg7843 2 ปีที่แล้ว

    Great Tutorial. Thank for sharing this great overview

  • @shahfenil08
    @shahfenil08 2 ปีที่แล้ว

    Interestingly, I violated the rule that said it should be constant and my code was crashing because it was pointing to the 0x0. As I was debugging the issue, I found out another bug index out range. So one bug exposed another nasty bug. Note that, before implementing function pointer other bug was still there but I couldn't find out because my program haven't crashed or going into hard fault. :D

  • @isaacdaniel2015
    @isaacdaniel2015 2 ปีที่แล้ว

    Very nicely done

  • @umeshjawalikar4913
    @umeshjawalikar4913 2 ปีที่แล้ว

    best

  • @ravimali2814
    @ravimali2814 2 ปีที่แล้ว

    Exceptional video. Such detailed and clear explanation. Thank you very very much.

  • @gurpalsingh8880
    @gurpalsingh8880 2 ปีที่แล้ว

    do you know what X represents in stack information (X@address )

  • @btoven66
    @btoven66 2 ปีที่แล้ว

    Great to see you again!!!

    • @beningoembedded
      @beningoembedded 2 ปีที่แล้ว

      Thanks Peter! I'm planning to post a lot more this year so stay tuned!

  • @waynerifish
    @waynerifish 2 ปีที่แล้ว

    Regarding "Make sure function pointers are NOT stored in RAM"... when I register a callback function, isn't that callback function pointer stored in RAM somewhere (e.g., UART0_ISR->function), even if it's done in pre-compiled or auto-generated code?

  • @bahtiyar.bayram
    @bahtiyar.bayram 2 ปีที่แล้ว

    Great content!

  • @ThePing98
    @ThePing98 2 ปีที่แล้ว

    Great video thank u