Just sharing my successful experience changing an item from Readonly to Read/Write.
An Item I had created using the OpenHab 3.1 UI was readonly. The item isn question is the power state switch of an MQTT Generic Device Thing. I suspect the binding made it Readonly because I first linked the item to the channel using the tele/topic/STATE for the state with nothing in the command. I then added a channel using the stat/topic/POWER for the state and cmnd/topic/POWER for the cmnd, but there was no switch to click on the item. I could enter a command on the Karaf Console and it would work.
Based on this thread Channel made Switch Item read only in the UI - #7 by goodfore, I suspected that the issue was the Readonly property. I looked in the REST API and it showed the Readonly property was true. When I looked at the State Description under Metadata in the UI, the Readonly state button was gray, indicating that it was off. I click on it, turning it orange and on. Saved it, then returned and click on it again, graying it out again. Saved, and presto, there is no a Switch button on the itme in the UI. Since the thread was locked, I couldn’t just add a comment , so I’m creating this new one in hope of helping anyone who has a similar problem.