Skip to content

Firmware support for INA233 on revC2 #219

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
electroniceel opened this issue Oct 24, 2020 · 4 comments
Closed

Firmware support for INA233 on revC2 #219

electroniceel opened this issue Oct 24, 2020 · 4 comments
Assignees
Labels
firmware Component: software revC Hardware revision: C

Comments

@electroniceel
Copy link
Member

revC2 replaces the ADC081C021, which was used on previous revisions, with the INA233.

The firmware needs to be adapted to communicate with the INA233 on revC2 boards.

First step is to reach feature-parity with revC1 (voltage sensing, interrupt for undervoltage and overvoltage).

Second step is to add current sensing and interrupt for overcurrent.

@attie
Copy link
Member

attie commented Feb 23, 2023

@electroniceel - is this now complete / can be closed (in #242), or are we waiting on current sense / overcurrent?

@whitequark
Copy link
Member

whitequark commented Jul 24, 2023

@attie I have a revC2 and it's unusable (I cannot enable any Vio), so I don't think it's complete...

$ glasgow -vv voltage A 3.3
D: g.device.hardware: found revC2 device with serial C2-20220814T174353Z
T: g.device.hardware: USB: CONTROL OUT type=0x40 request=0x16 value=0x0000 index=0x0001 data=<00007c15> (submit)
T: g.device.hardware: USB: CONTROL OUT (completed)
T: g.device.hardware: USB: CONTROL IN type=0x40 request=0x12 value=0x0000 index=0x0000 length=1 (submit)
T: g.device.hardware: USB: CONTROL IN data=<00> (completed)
T: g.device.hardware: USB: CONTROL IN type=0x40 request=0x17 value=0x0000 index=0x0000 length=1 (submit)
T: g.device.hardware: USB: CONTROL IN data=<00> (completed)
T: g.device.hardware: USB: CONTROL OUT type=0x40 request=0x14 value=0x0000 index=0x0001 data=<e40c> (submit)
T: g.device.hardware: USB: CONTROL OUT (completed)
T: g.device.hardware: USB: CONTROL IN type=0x40 request=0x12 value=0x0000 index=0x0000 length=1 (submit)
T: g.device.hardware: USB: CONTROL IN data=<01> (completed)
T: g.device.hardware: USB: CONTROL OUT type=0x40 request=0x14 value=0x0000 index=0x0001 data=<0000> (submit)
T: g.device.hardware: USB: CONTROL OUT (completed)
T: g.device.hardware: USB: CONTROL IN type=0x40 request=0x12 value=0x0000 index=0x0000 length=1 (submit)
T: g.device.hardware: USB: CONTROL IN data=<00> (completed)
E: g.cli: cannot set I/O port(s) A voltage to 3.3 V

@attie
Copy link
Member

attie commented Jul 29, 2023

revC3, with jumber between V->S:

$ glasgow -vv voltage A 3.3
D: g.device.hardware: found revC3 device with serial C3-20230610T175317Z
T: g.device.hardware: USB: CONTROL OUT type=0x40 request=0x16 value=0x0000 index=0x0001 data=<00007c15> (submit)
T: g.device.hardware: USB: CONTROL OUT (completed)
T: g.device.hardware: USB: CONTROL IN type=0x40 request=0x12 value=0x0000 index=0x0000 length=1 (submit)
T: g.device.hardware: USB: CONTROL IN data=<04> (completed)
T: g.device.hardware: USB: CONTROL IN type=0x40 request=0x17 value=0x0000 index=0x0000 length=1 (submit)
T: g.device.hardware: USB: CONTROL IN data=<01> (completed)
T: g.device.hardware: USB: CONTROL OUT type=0x40 request=0x14 value=0x0000 index=0x0001 data=<e40c> (submit)
T: g.device.hardware: USB: CONTROL OUT (completed)
T: g.device.hardware: USB: CONTROL IN type=0x40 request=0x12 value=0x0000 index=0x0000 length=1 (submit)
T: g.device.hardware: USB: CONTROL IN data=<00> (completed)
T: g.device.hardware: USB: CONTROL OUT type=0x40 request=0x16 value=0x0000 index=0x0001 data=<9a0b2e0e> (submit)
T: g.device.hardware: USB: CONTROL OUT (completed)
T: g.device.hardware: USB: CONTROL IN type=0x40 request=0x12 value=0x0000 index=0x0000 length=1 (submit)
T: g.device.hardware: USB: CONTROL IN data=<00> (completed)
Port    Vio     Vlimit  Vsense  Monitor
T: g.device.hardware: USB: CONTROL IN type=0x40 request=0x17 value=0x0000 index=0x0000 length=1 (submit)
T: g.device.hardware: USB: CONTROL IN data=<00> (completed)
T: g.device.hardware: USB: CONTROL IN type=0x40 request=0x14 value=0x0000 index=0x0001 length=2 (submit)
T: g.device.hardware: USB: CONTROL IN data=<fa0c> (completed)
T: g.device.hardware: USB: CONTROL IN type=0x40 request=0x1a value=0x0000 index=0x0001 length=2 (submit)
T: g.device.hardware: USB: CONTROL IN data=<7c15> (completed)
T: g.device.hardware: USB: CONTROL IN type=0x40 request=0x15 value=0x0000 index=0x0001 length=2 (submit)
T: g.device.hardware: USB: CONTROL IN data=<170d> (completed)
T: g.device.hardware: USB: CONTROL IN type=0x40 request=0x16 value=0x0000 index=0x0001 length=4 (submit)
T: g.device.hardware: USB: CONTROL IN data=<9a0b2e0e> (completed)
A       3.3     5.5     3.35    3.0-3.6

@whitequark
Copy link
Member

Nevermind, I got tripped up by my own bad UI choices; I had a voltage limit set (years ago) and totally forgot about it.

I think this is done then.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
firmware Component: software revC Hardware revision: C
Projects
None yet
Development

No branches or pull requests

3 participants