oxidecomputer / oxidecomputer/hubris

sharkfin 12 V current limit should be decreased in software

Open
#1,273 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

gimlet hardware service processor
Dominant language
Rust
Stars
3.6k
Forks
239
Avg merge
1d 12h
Merged PRs (30d)
23

Description

The sharkfin rev C and newer schematics contain a note referring to the MAX5970 hot-swap power controller's channel 1 configuration:

Current Sense Range : 50mV
Maximum Current Sense Possible: 10A
Default Fast-Trip Current: 7.5A
Default Slow-Trip Current: 3.75A

FIRMWARE SETTINGS:
Desired Fast Trip Current: 6A (DAC_CH0: 0x99)
Desired Fast-to-Slow Ratio: 200% (Default)
Resulting Slow Trip Current: 3A

The MAX5970 doesn't, as far as we are told, have any firmware, but the intent is clear enough: ideally we should be setting the configuration registers from software to reduce this threshold, specifically the dac_ch0 register referred to in the note. It is possible (though unlikely, given the relatively small size of the change) that a faulty SSD or sharkfin could otherwise lead to preventable equipment damage in the case of an overcurrent fault.

If we want to do this, it would need to be done via I2C on all 10 installed fins prior to entering A1. Fins are not hot-serviceable so it could be done any time during initial startup as long as it gates the first subsequent entry into A1.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the sharkfin MAX5970 I2C handling and the startup path that gates entry into A1. Confirm how all 10 fins are addressed, then ensure dac_ch0 is configured before the first subsequent A1 entry and verify the resulting current limit.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
embedded-iot
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.