HEOS Binding - Issues with Amazon Prime Stations as favorites

First of all, THANK YOU to the creators/maintainers of this binding! It is fantastic! I have only recently purchased a HEOS product, but I have been loving the functionality this binding provides.

I am on openHAB 2.5.3 and 2.5.3 of the HEOS binding.

I have found an error that occurs when I add an Amazon Prime Station as a favorite in the HEOS app. In PaperUI, the player shows as “initializing” and is stuck there after the binding reloads with the amazon station as a favorite. Once I remove the station from favorites and reload the binding, the player initializes fine and is online.

Here is the exception listed in the log:

java.lang.IllegalArgumentException: UID segment 'catalog/stations/AYRDLXSPEZRBC/#chunk' contains invalid characters. The last segment of the channel UID must match the pattern '[\w-]*|[\w-]*#[\w-]*'.
	at org.eclipse.smarthome.core.thing.ChannelUID.validateSegment(ChannelUID.java:179) ~[?:?]
	at org.eclipse.smarthome.core.common.AbstractUID.<init>(AbstractUID.java:75) ~[?:?]
	at org.eclipse.smarthome.core.thing.UID.<init>(UID.java:66) ~[?:?]
	at org.eclipse.smarthome.core.thing.ChannelUID.<init>(ChannelUID.java:59) ~[?:?]
	at org.openhab.binding.heos.internal.HeosChannelManager.generateChannelUID(HeosChannelManager.java:128) ~[?:?]
	at org.openhab.binding.heos.internal.HeosChannelManager.generateFavoriteChannel(HeosChannelManager.java:113) ~[?:?]
	at org.openhab.binding.heos.internal.HeosChannelManager.lambda$3(HeosChannelManager.java:108) ~[?:?]
	at java.util.ArrayList.forEach(ArrayList.java:1257) ~[?:1.8.0_242]
	at org.openhab.binding.heos.internal.HeosChannelManager.addFavoriteChannels(HeosChannelManager.java:108) ~[?:?]
	at org.openhab.binding.heos.handler.HeosPlayerHandler.lambda$0(HeosPlayerHandler.java:65) ~[?:?]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[?:1.8.0_242]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_242]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) ~[?:1.8.0_242]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) ~[?:1.8.0_242]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_242]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_242]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_242]

I turned on debug logging for the binding. Here is what is being returned by the player for this station:

    {"container": "no", "mid": "catalog/stations/AYRDLXSPEZRBC/#chunk", "type": "station", "playable": "yes", "name": "Top Country", "image_url": "https://images-na.ssl-images-amazon.com/images/G/01/Gotham/Test_Top_Country_011419._CB1547512759_.png"}

I appreciate the help!

Well, in the minutes since posting this I noticed in the very large “Heos (Denon) support” thread that @martinvw has made some updates to the binding. After trying this version out, I have found that the changes made to the way favorites are handled seems to work very well and I don’t have any issues with the Amazon stations. Thanks!