Renesas RX device identification from software


due to various reasons I am migrating an existing project from RX631 (R5F5631BDDFB) to RX651 (R5F56519BDFB). It would be useful for backwards compatibility to know in the software, if it is running on a hardware with RX631 or with RX651 controller.

Unfortunately I didn’t find a possibility to identify the device. Is there a possibility I have overseen?

Thank you!

Best regards,


  • You can maintain a hardware identification token at a dedicated address (with a custom bootloader) which can be checked by your application to distinguish between the different platforms.
  • In reply to architect:

    thank you for your reply. This is indeed not exactly what I am looking for, as this solution uses a bootloader that must be aware of the controller it is working on, so it must be configured by someone. In addition this would break the backwards compatibility as we already have a lot of devices on the market without a custom bootloader.
    When flashing the microcontroller, the programming tool is aware of the device it is programming – so the required information must be somewhere in the device. The question is now how to read it from custom software!
  • In reply to François Paul:

    Also not exactly what you're looking for, but there's the Unique ID Registers (UIDRn) that provide a unique ID for every Renesas MPU die manufactured.  It's possible (but not guaranteed) that the MPU model number is encoded in parts of this 16-byte ID.

    But yeah, there should be an app note that describes how to determine on what processor one's code is running, similar to CISC processors' CPUID instruction.

  • In reply to François Paul:

    François Paul,

    Have you found a solution to your issue?

    Mike Clements
    RenesasRulz Moderator