<?xml version="1.0" encoding="utf-8"?>
<!--RSS generated by Flaimo.com RSS Builder [2026-09-12 21:59:43]-->
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"><channel><docs>https://mantisbt.saxicola.uk/</docs><link>https://mantisbt.saxicola.uk/</link><description><![CDATA[MantisBT - Issues]]></description><title>MantisBT - Issues</title><image><title>MantisBT - Issues</title><url>https://mantisbt.saxicola.uk/images/mantis_logo.png</url><link>https://mantisbt.saxicola.uk/</link><description><![CDATA[MantisBT - Issues]]></description></image><language>en</language><category>All Projects</category><ttl>10</ttl><dc:language>en</dc:language><sy:updatePeriod>hourly</sy:updatePeriod><sy:updateFrequency>1</sy:updateFrequency><item><title>0000574: Add a method to create a AP when the connection to WiFi fails.</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=574</link><description><![CDATA[Currently the WiFi creds are hard coded and if the network goes away the connection just fails and youe are stuffed.&lt;br /&gt;
If it then spins up an AP a user can log into the that and set up a connection to  their WiFi.]]></description><category>Enhancement</category><pubDate>Sat, 12 Sep 2026 18:30:58 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=574</guid><comments>https://mantisbt.saxicola.uk/view.php?id=574#bugnotes</comments></item><item><title>0000573: Make media in media acassabe from the radio</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=573</link><description><![CDATA[Stuff added to radio.media is not listed on the station selector on the actual radio.&lt;br /&gt;
We can use ncmpc to play them so...]]></description><category>Enhancement</category><pubDate>Sun, 30 Aug 2026 19:29:01 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=573</guid><comments>https://mantisbt.saxicola.uk/view.php?id=573#bugnotes</comments></item><item><title>0000566: How to UN-dispose of a book?</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=566</link><description><![CDATA[At the moment this requires some DB hacking.]]></description><category>Enhancement</category><pubDate>Tue, 28 Jul 2026 13:56:49 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=566</guid><comments>https://mantisbt.saxicola.uk/view.php?id=566#bugnotes</comments></item><item><title>0000033: Try to make setup check for and installl dependencies.</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=33</link><description><![CDATA[A first attempt at this emits the message:&lt;br /&gt;
/usr/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'install_requires'&lt;br /&gt;
  warnings.warn(msg)&lt;br /&gt;
&lt;br /&gt;
This is because it's using setuptools instead of distutils.&lt;br /&gt;
&lt;br /&gt;
Near the top of your script, try replacing&lt;br /&gt;
&lt;br /&gt;
from distutils.core import setup&lt;br /&gt;
&lt;br /&gt;
with&lt;br /&gt;
&lt;br /&gt;
from setuptools import setup&lt;br /&gt;
&lt;br /&gt;
Even better, import from setuptools, and if that raises an ImportError import from distutils.core instead&lt;br /&gt;
try:&lt;br /&gt;
    from setuptools import setup&lt;br /&gt;
except ImportError:&lt;br /&gt;
    from distutils.core import setup]]></description><category>Enhancement</category><pubDate>Tue, 28 Jul 2026 13:47:13 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=33</guid><comments>https://mantisbt.saxicola.uk/view.php?id=33#bugnotes</comments></item><item><title>0000562: Tuning is still fucked.</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=562</link><description><![CDATA[Tuning is still fucked.]]></description><category>Bug</category><pubDate>Sat, 04 Jul 2026 17:06:42 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=562</guid><comments>https://mantisbt.saxicola.uk/view.php?id=562#bugnotes</comments></item><item><title>0000558: Should I add 30s to each alarm?</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=558</link><description><![CDATA[To compensate for internet lag behind radio.]]></description><category>Enhancement</category><pubDate>Mon, 29 Jun 2026 12:38:28 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=558</guid><comments>https://mantisbt.saxicola.uk/view.php?id=558#bugnotes</comments></item><item><title>0000538: Phone box books need a another custom bookmark.</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=538</link><description><![CDATA[But this is difficult to generalise for other users.&lt;br /&gt;
&lt;br /&gt;
It need s a message like:&lt;br /&gt;
&lt;br /&gt;
If you enjoyed this book&lt;br /&gt;
please consider returning &lt;br /&gt;
another book for others&lt;br /&gt;
to share.&lt;br /&gt;
Thank you&lt;br /&gt;
&lt;br /&gt;
So how to make this work for other micro-library users?]]></description><category>Enhancement</category><pubDate>Sat, 20 Jun 2026 09:51:02 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=538</guid><comments>https://mantisbt.saxicola.uk/view.php?id=538#bugnotes</comments></item><item><title>0000565: Add some hard coded locations</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=565</link><description><![CDATA[Like:&lt;br /&gt;
- Phone box&lt;br /&gt;
- Charity shop]]></description><category>Enhancement</category><pubDate>Fri, 19 Jun 2026 18:21:31 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=565</guid><comments>https://mantisbt.saxicola.uk/view.php?id=565#bugnotes</comments></item><item><title>0000559: Numitrons should alight after dark</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=559</link><description><![CDATA[We can get sunset times, so we can use this.&lt;br /&gt;
Or use the light sensor but that requires more work.]]></description><category>Enhancement</category><pubDate>Fri, 05 Jun 2026 15:43:57 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=559</guid><comments>https://mantisbt.saxicola.uk/view.php?id=559#bugnotes</comments></item><item><title>0000557: The state.json file does not do what it should</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=557</link><description><![CDATA[I should contain the inof required to resume after reboot. It does not it seems do this.&lt;br /&gt;
It's either the save or the read that's faulty.]]></description><category>Bug</category><pubDate>Mon, 01 Jun 2026 10:30:26 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=557</guid><comments>https://mantisbt.saxicola.uk/view.php?id=557#bugnotes</comments></item><item><title>0000553: Wire the extra switch to reboot the radio.</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=553</link><description><![CDATA[This should restart radio, not the Pi]]></description><category>Enhancement</category><pubDate>Mon, 01 Jun 2026 10:30:25 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=553</guid><comments>https://mantisbt.saxicola.uk/view.php?id=553#bugnotes</comments></item><item><title>0000488: UnboundLocalError: local variable 'status' referenced before assignmen</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=488</link><description><![CDATA[radio: LINE 921: INFO: Not connected&lt;br /&gt;
    Jun 15 22:36:58 radio python3[32165]: Traceback (most recent call last):&lt;br /&gt;
    Jun 15 22:36:58 radio python3[32165]:   File &quot;/home/pi/radio/radio.py&quot;, line 1202, in &lt;module&gt;&lt;br /&gt;
    Jun 15 22:36:58 radio python3[32165]:     radio.main()&lt;br /&gt;
    Jun 15 22:36:58 radio python3[32165]:   File &quot;/home/pi/radio/radio.py&quot;, line 1165, in main&lt;br /&gt;
    Jun 15 22:36:58 radio python3[32165]:     self.main()&lt;br /&gt;
    Jun 15 22:36:58 radio python3[32165]:   File &quot;/home/pi/radio/radio.py&quot;, line 1182, in main&lt;br /&gt;
    Jun 15 22:36:58 radio python3[32165]: radio: LINE 599: INFO: Modes.PLAY&lt;br /&gt;
    Jun 15 22:36:58 radio python3[32165]:     mode_play()&lt;br /&gt;
    Jun 15 22:36:58 radio python3[32165]:   File &quot;/home/pi/radio/radio.py&quot;, line 925, in mode_play&lt;br /&gt;
    Jun 15 22:36:58 radio python3[32165]:     if status.get('state') == 'stop':&lt;br /&gt;
    Jun 15 22:36:58 radio python3[32165]: UnboundLocalError: local variable 'status' referenced before assignment]]></description><category>Bug</category><pubDate>Sat, 30 May 2026 01:41:04 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=488</guid><comments>https://mantisbt.saxicola.uk/view.php?id=488#bugnotes</comments></item><item><title>0000420: Implement periodic LCD restart</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=420</link><description><![CDATA[For some reason the contrast goes away after a time and a simple power cycle restores it.&lt;br /&gt;
The hardware already exists to do this.&lt;br /&gt;
 &lt;br /&gt;
   self.switch_board.write(0x00)&lt;br /&gt;
   time.sleep(0.2)&lt;br /&gt;
   self.switch_board.write(0x02)&lt;br /&gt;
&lt;br /&gt;
Switches the FET controlling power to the LCD]]></description><category>Enhancement</category><pubDate>Sat, 16 May 2026 02:51:23 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=420</guid><comments>https://mantisbt.saxicola.uk/view.php?id=420#bugnotes</comments></item><item><title>0000467: Changes in BBC streaming URL's break the radio.</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=467</link><description><![CDATA[The BBC just changed the URL's again and broke the radio. More serieosly the pool ID is now different for each station.&lt;br /&gt;
&lt;br /&gt;
For instance R4 and R4 extra have different ppol ID's whereas they used to be the same.&lt;br /&gt;
  &lt;a href=&quot;http://as-hls-ww-live.akamaized.net/pool_55057080/live/ww/bbc_radio_fourfm/bbc_radio_fourfm.isml/bbc_radio_fourfm-audio%3d48000.norewind.m3u8&quot;&gt;http://as-hls-ww-live.akamaized.net/pool_55057080/live/ww/bbc_radio_fourfm/bbc_radio_fourfm.isml/bbc_radio_fourfm-audio%3d48000.norewind.m3u8&lt;/a&gt;&lt;br /&gt;
  &lt;a href=&quot;http://as-hls-ww-live.akamaized.net/pool_26173715/live/ww/bbc_radio_four_extra/bbc_radio_four_extra.isml/bbc_radio_four_extra-audio%3d48000.norewind.m3u8&quot;&gt;http://as-hls-ww-live.akamaized.net/pool_26173715/live/ww/bbc_radio_four_extra/bbc_radio_four_extra.isml/bbc_radio_four_extra-audio%3d48000.norewind.m3u8&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
I need some way to update the URL's. Maybe from  &lt;a href=&quot;http://www.radiofeeds.co.uk/mp3.asp&quot;&gt;http://www.radiofeeds.co.uk/mp3.asp&lt;/a&gt; &lt;br /&gt;
To get the URL's I guess I can query:&lt;br /&gt;
&lt;a href=&quot;http://lstn.lv/bbcradio.m3u8?station=bbc_radio_four_extra&amp;bitrate=48000&quot;&gt;http://lstn.lv/bbcradio.m3u8?station=bbc_radio_four_extra&amp;bitrate=48000&lt;/a&gt;&lt;br /&gt;
and &lt;br /&gt;
&lt;a href=&quot;http://lstn.lv/bbcradio.m3u8?station=bbc_radio_fourfm&amp;bitrate=48000&quot;&gt;http://lstn.lv/bbcradio.m3u8?station=bbc_radio_fourfm&amp;bitrate=48000&lt;/a&gt;&lt;br /&gt;
which seem to be stable and get me a bbcradio.m3u8 file that I can read to get the stream URL.&lt;br /&gt;
&lt;br /&gt;
How can I use these in my current setup though?&lt;br /&gt;
I don't want to spam &lt;a href=&quot;http://lstn.lv&quot;&gt;http://lstn.lv&lt;/a&gt; every time I listen to a station.&lt;br /&gt;
Ideally I'd only do this when the URL fails. This can be caught in code somewhere.]]></description><category>Bug</category><pubDate>Sat, 16 May 2026 02:51:21 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=467</guid><comments>https://mantisbt.saxicola.uk/view.php?id=467#bugnotes</comments></item><item><title>0000460: log reports: socket.timeout: timed out and then restarts</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=460</link><description><![CDATA[Traceback (most recent call last):&lt;br /&gt;
&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/home/pi/radio/radio.py&quot;, line 1103, in main&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     self.mpdclient.ping() # MPDClient will disconnect after period of inactivity, so keep it busy.&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 469, in mpd_command&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     return wrapper(self, name, args, callback)&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 532, in _execute&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     return retval()&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 454, in command_callback&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     res = function(self, self._read_lines())&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 387, in _parse_nothing &lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     for line in lines:&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 586, in _read_lines&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     line = self._read_line()&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 568, in _read_line&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     line = self._rbfile.readline().decode(&quot;utf-8&quot;)&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/lib/python3.7/socket.py&quot;, line 589, in readinto&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     return self._sock.recv_into(b)&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]: socket.timeout: timed out&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]: During handling of the above exception, another exception occurred:&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]: Traceback (most recent call last):&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/home/pi/radio/radio.py&quot;, line 445, in mpd_connect&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     self.mpdclient.ping()&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 469, in mpd_command&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     return wrapper(self, name, args, callback)&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 532, in _execute&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     return retval()&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 454, in command_callback&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     res = function(self, self._read_lines())&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 387, in _parse_nothing&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     for line in lines:&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 586, in _read_lines&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     line = self._read_line()&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 568, in _read_line&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     line = self._rbfile.readline().decode(&quot;utf-8&quot;)&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/lib/python3.7/socket.py&quot;, line 586, in readinto&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     raise OSError(&quot;cannot read from timed out object&quot;)&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]: OSError: cannot read from timed out object&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]: During handling of the above exception, another exception occurred:&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]: Traceback (most recent call last):&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/home/pi/radio/radio.py&quot;, line 1157, in &lt;module&gt;&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     radio.main()&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/home/pi/radio/radio.py&quot;, line 1106, in main&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     self.mpd_connect()&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/home/pi/radio/radio.py&quot;, line 456, in mpd_connect&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     self.mpdclient.replay_gain_mode('auto')&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 469, in mpd_command&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     return wrapper(self, name, args, callback)&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 532, in _execute&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     return retval()&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 454, in command_callback&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     res = function(self, self._read_lines())&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 387, in _parse_nothing&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     for line in lines:&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 586, in _read_lines&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     line = self._read_line()&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/local/lib/python3.7/dist-packages/mpd/base.py&quot;, line 568, in _read_line&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     line = self._rbfile.readline().decode(&quot;utf-8&quot;)&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:   File &quot;/usr/lib/python3.7/socket.py&quot;, line 586, in readinto&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]:     raise OSError(&quot;cannot read from timed out object&quot;)&lt;br /&gt;
    Oct 05 02:28:24 radio python3[491]: OSError: cannot read from timed out object&lt;br /&gt;
    Oct 05 02:28:24 radio systemd[1]: radio.service: Succeeded.&lt;br /&gt;
    Oct 05 02:28:30 radio systemd[1]: radio.service: Service RestartSec=5s expired, scheduling restart.&lt;br /&gt;
    Oct 05 02:28:30 radio systemd[1]: radio.service: Scheduled restart job, restart counter is at 2.&lt;br /&gt;
    Oct 05 02:28:30 radio systemd[1]: Stopped Internet Radio Service..]]></description><category>Bug</category><pubDate>Sat, 16 May 2026 02:51:19 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=460</guid><comments>https://mantisbt.saxicola.uk/view.php?id=460#bugnotes</comments></item><item><title>0000530: Create a setup bash script.</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=530</link><description><![CDATA[This will create the database. add the user, create the tables etc.&lt;br /&gt;
Will need running as root.&lt;br /&gt;
Provide an md5sum for this to ensure it's not tampered with in transit.]]></description><category>Enhancement</category><pubDate>Tue, 31 Mar 2026 20:53:37 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=530</guid><comments>https://mantisbt.saxicola.uk/view.php?id=530#bugnotes</comments></item><item><title>0000433: Needs an easier  way to remove books using the scanner</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=433</link><description><![CDATA[Maybe a CL switch to remove books when they are scanned.&lt;br /&gt;
Add a warning dialog too.&lt;br /&gt;
Maybe the API too.]]></description><category>Enhancement</category><pubDate>Mon, 30 Mar 2026 15:30:04 +0100</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=433</guid><comments>https://mantisbt.saxicola.uk/view.php?id=433#bugnotes</comments></item><item><title>0000361: Now we have EQ working, add some selectable presets.</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=361</link><description><![CDATA[This may involve a LONG knob press to get to the menu.&lt;br /&gt;
Have a list of presets.]]></description><category>Enhancement</category><pubDate>Sun, 01 Mar 2026 11:43:55 +0000</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=361</guid><comments>https://mantisbt.saxicola.uk/view.php?id=361#bugnotes</comments></item><item><title>0000525: Implement RFC 8984</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=525</link><description><![CDATA[&lt;a href=&quot;https://www.rfc-editor.org/rfc/rfc8984.html#name-common-jscalendar-propertie&quot;&gt;https://www.rfc-editor.org/rfc/rfc8984.html#name-common-jscalendar-propertie&lt;/a&gt;&lt;br /&gt;
    &lt;a href=&quot;https://datatracker.ietf.org/doc/draft-ietf-calext-jscalendar-icalendar/&quot;&gt;https://datatracker.ietf.org/doc/draft-ietf-calext-jscalendar-icalendar/&lt;/a&gt;]]></description><category>Enhancement</category><pubDate>Sun, 01 Mar 2026 10:52:23 +0000</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=525</guid><comments>https://mantisbt.saxicola.uk/view.php?id=525#bugnotes</comments></item><item><title>0000452: Simplify alarms entries using Calendar  app.</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=452</link><description><![CDATA[Do this by using Korganiser to create the schedule then parse that to json as required by the radio.&lt;br /&gt;
Or directly read the ical file by the radio.&lt;br /&gt;
Possibly use Korganiser to recort the other radio station lists too.]]></description><category>Enhancement</category><pubDate>Sun, 01 Mar 2026 10:30:23 +0000</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=452</guid><comments>https://mantisbt.saxicola.uk/view.php?id=452#bugnotes</comments></item><item><title>0000453: Use the ICS file directly</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=453</link><description><![CDATA[This will save all the midnight spanning stuff too.]]></description><category>Enhancement</category><pubDate>Sun, 01 Mar 2026 10:30:12 +0000</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=453</guid><comments>https://mantisbt.saxicola.uk/view.php?id=453#bugnotes</comments></item><item><title>0000517: Add long press to reboot</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=517</link><description><![CDATA[Rebooting at the moment involves logging in and killing the radio process.&lt;br /&gt;
A long press of the knob could be used to trigger a reboot.]]></description><category>Enhancement</category><pubDate>Mon, 29 Dec 2025 12:51:11 +0000</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=517</guid><comments>https://mantisbt.saxicola.uk/view.php?id=517#bugnotes</comments></item><item><title>0000512: Desktop Version</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=512</link><description><![CDATA[Can we make a desktop version of this?&lt;br /&gt;
I will have to detect the platform and some hardware detection to morph the interface to a Glade type UI.]]></description><category>Enhancement</category><pubDate>Thu, 11 Dec 2025 06:14:04 +0000</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=512</guid><comments>https://mantisbt.saxicola.uk/view.php?id=512#bugnotes</comments></item><item><title>0000511: Priotise Alarm</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=511</link><description><![CDATA[If both switches are on, alarm should override play.]]></description><category>Enhancement</category><pubDate>Thu, 11 Dec 2025 06:12:24 +0000</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=511</guid><comments>https://mantisbt.saxicola.uk/view.php?id=511#bugnotes</comments></item><item><title>0000464: Auto connect to open WiFi</title><author></author><link>https://mantisbt.saxicola.uk/view.php?id=464</link><description><![CDATA[If an open wifi AP is available connect to it automatically.]]></description><category>Enhancement</category><pubDate>Mon, 24 Nov 2025 05:02:09 +0000</pubDate><guid>https://mantisbt.saxicola.uk/view.php?id=464</guid><comments>https://mantisbt.saxicola.uk/view.php?id=464#bugnotes</comments></item></channel></rss>
