December 1, 2022


The Internet Generation

An LCD mounted inside a Roland synthesizer

Reverse-Engineering A Display Protocol To Repair A Roland Synthesizer

Repairing digital devices isn’t as tough as it applied to be. Many thanks to the internet, it’s quick to locate datasheets and software notes for any regular part within your gadget, and at the time you have uncovered the defective one, you merely get a alternative from a person of a million web shops — assuming you really don’t close up with a pretend, of class. When it arrives to non-conventional parts, nonetheless, issues get much more challenging, as [dpeddi] discovered out when a mate asked him for assistance in repairing a Roland Juno-G synthesizer with a broken display.

The principal challenge in this article was the simple fact that the screen in dilemma was a tailor made style and design, with no substitution or documentation obtainable. The only point [dpeddi] could figure out from the company manual was the basic pinout, which confirmed a parallel interface with two traces labelled “chip select” — an indicator that the screen contained two separate controllers. But the precise protocol and info format was not documented, so [dpeddi] brought out his logic analyzer to attempt and decode the indicators created by the synthesizer.

Just after a bit of demo and error, he was in a position to determine out the protocol: it seemed like the exhibit contained two KS0713-sort Lcd controllers, every single controlling one particular 50 percent of the display. Acquiring a suitable substitute was continue to proving hard, so [dpeddi] resolved as an alternative to decode the initial signals utilizing a microcontroller and demonstrate the picture on a modern Liquid crystal display pushed by SPI. Immediately after some intial experiments with an ESP32, it turned out that the undertaking of reading two fairly speedy parallel buses and driving an even more rapidly serial just one was a bit also a great deal for the ESP, so [dpeddi] upgraded to a Raspberry Pi Pico. This worked a take care of, and thanks to a 3D-printed mounting bracket, the new display screen also in good shape snugly inside the Roland’s circumstance.

The Pico’s code is offered on [dpeddi]’s GitHub web site, so if you have also received a dodgy screen in your Juno-G you can merely down load it and use it to plug in a brand-new display. However, the approach of reverse-engineering an current screen protocol and translating it to that of a new a single is very universal and should really come in handy when doing work with any variety of digital unit: say, a classic calculator or multimeter, or even a further synthesizer.