Skip to content

tools: Add BCM2712 RAM authenticity check - #925

Closed
jameshilliard wants to merge 1 commit into
raspberrypi:masterfrom
jameshilliard:feat/ram-check
Closed

jameshilliard wants to merge 1 commit into
raspberrypi:masterfrom
jameshilliard:feat/ram-check

Conversation

@jameshilliard

@jameshilliard jameshilliard commented Nov 9, 2026 •

Copy link
Copy Markdown

Compare the RAM capacity in the running board revision with the factory revision in OTP row 32. Report possible RAM tampering or replacement and advise contacting the seller to arrange a return.

Return distinct statuses for matching, mismatched, and unavailable capacity information. Explain that matching capacity cannot establish that the RAM is original.

A helpful tool for users to ensure that their RAM hasn't been tampered with.

The comparison logic was ported from #924 but has been split out into a separate auditing tool to address this review:

We aren't going to put time or effort into devices which have been miss-sold.

This PR completely removes all code designed to support miss-sold devices and is instead designed only to authenticate the RAM is genuine(as much as is technically feasible at least). This should make it easier for customers to ensure that they only purchase non-tampered hardware.

Compare the RAM capacity in the running board revision with the factory
revision in OTP row 32. Report possible RAM tampering or replacement and
advise contacting the seller to arrange a return.

Return distinct statuses for matching, mismatched, and unavailable
capacity information. Explain that matching capacity cannot establish
that the RAM is original.
@timg236

timg236 commented Nov 10, 2026

Copy link
Copy Markdown
Collaborator

Whist I can see the motivation for the tool, the answer is still no for including any such tool as part of this package. If the user encounters an issue with the PI then they should contact the original seller..

@timg236 timg236 closed this Nov 10, 2026
@jameshilliard

Copy link
Copy Markdown
Author

the answer is still no for including any such tool as part of this package.

Would it make sense as part of this package or some other package?

If the user encounters an issue with the PI then they should contact the original seller..

The issue is, without something like this how would the user know they need to contact the original seller and not a different support channel/forum? If raspberry pi wants to ensure the market doesn't have tampered ram raspberry pi's doesn't it make sense to make it as easy as possible for a user to detect such hardware? Isn't it in raspberry pi's interest to ensure users can easily detect ram tampering so that they know to go after the original sellers who are selling the tampered hardware so that they don't otherwise think raspberry pi hardware is just unreliable or something?

For example if I'm using this raspberry pi hardware for building a commercial product how can I do my due diligence to prevent tampered raspberry pi hardware from ending up as part of my product? This is especially important for cases where the business costs of having hardware fail in the field due to tampered RAM might be high.

@timg236

timg236 commented Nov 10, 2026 •

Copy link
Copy Markdown
Collaborator

Sorry, this isn't something that I can help with. If people use an authorised reseller then they will not encounter these parts and they will all support RMAs for faulty products.

@timg236

timg236 commented Nov 10, 2026

Copy link
Copy Markdown
Collaborator

Closing - modified boards deliberate or not sold as advertise are outside the scope of this repo.

@raspberrypi raspberrypi locked as off-topic and limited conversation to collaborators Nov 10, 2026
@pelwell

pelwell commented Nov 10, 2026

Copy link
Copy Markdown
Collaborator

how can I do my due diligence to prevent tampered raspberry pi hardware from ending up as part of my product?

By from an official Raspberry Pi reseller - you know what you are getting.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants