Skip to content

About

This project is created as an ecosystem to help other Embedded projects to save some time for developing Bootloaders and applications for Flashing.

Discord

Join to project's Discord group: https://discord.gg/r53FEqvz73

Repositories

IMBootloader is a bootloader with different features written in C following the MISRA C 2012 guidelines:

  • accepts signed Firmware
  • it is secure. It uses encrypted communication for firmware and bootloader update
  • it can copy and run Firmware directly from the RAM
  • it is self updatable
  • enters in bootloader over FLASH segment
  • enters in bootloader over RAM segment
  • enters in bootloader with button
  • CRC32 protected communication with IMFlasher
  • capable of enabling read protection (RDP)
  • capable of disabling read protection (RDP)
  • generates 32 bytes long unique board id
  • informs IMFlasher with GIT branch/hash/tag info
  • carry manufacturer id for integration with a system
  • carry product type data for integration with a system
  • running Firmware from external FLASH over QSPI (paid version)

IMFlasher is a Qt application for flashing firmware or a new bootloader by using a PC. \

  • multiplatform application
  • auto detect IMBootloder over USB
  • download files from improject.imtech.hr server

IMLedBlink is a simple example that serves as a showcase of project capabilities.
IMUtility A Safety-Critical Utility Code written in C (Queue, CRC, data serialization/deserialization, base64...)

Architecture

image

Encryption

image

Encryption with Monocypher

image

Pinned Loading

  1. IMBootloader IMBootloader Public

    Safety-Critical bootloader, written by following MISRA guidelines

    C 19 4

  2. IMFlasher IMFlasher Public

    Universal application for firmware flashing

    C++ 3 1

  3. IMLedBlink IMLedBlink Public

    LED blink example compatible with IMBootloader

    C 3 1

  4. IMUtility IMUtility Public

    A Safety-Critical Utility Code

    C 39 3

Repositories

Showing 7 of 7 repositories
  • .github Public
    IMProject/.github’s past year of commit activity
    0 0 0 0 Updated Dec 21, 2024
  • IMBootloader Public

    Safety-Critical bootloader, written by following MISRA guidelines

    IMProject/IMBootloader’s past year of commit activity
    C 19 BSD-3-Clause 4 0 0 Updated Dec 18, 2024
  • IMLedBlink Public

    LED blink example compatible with IMBootloader

    IMProject/IMLedBlink’s past year of commit activity
    C 3 BSD-3-Clause 1 0 0 Updated Dec 18, 2024
  • IMUtility Public

    A Safety-Critical Utility Code

    IMProject/IMUtility’s past year of commit activity
    C 39 BSD-3-Clause 3 0 0 Updated Jun 29, 2024
  • IMProject/DockerContainers’s past year of commit activity
    Python 1 0 0 0 Updated Mar 28, 2024
  • Library Public

    All shared software in one place that is not in IMUtility

    IMProject/Library’s past year of commit activity
    C 1 0 0 0 Updated Dec 12, 2022
  • IMFlasher Public

    Universal application for firmware flashing

    IMProject/IMFlasher’s past year of commit activity
    C++ 3 BSD-3-Clause 1 2 0 Updated Sep 15, 2022

Top languages

Loading…

Most used topics

Loading…