The attempt to find the time value has changed to postgresql

I have a table with an ID, a value and a date. There are many IDs, values, and dates in this table.

Records are regularly added to this table. The ID is unique, but occasionally the value changes.

How can I write a query that gives me the ID and time of the last value change? Note: The value may be reset from 1 to 2 and then back to 1.