I'd prefer the second option. The reason is just the simplicity (better overview) in configuring the whole show. But I'd suggest to implement somekind of general "use another file tag", making it possible to write big parts in different files, e.g.:
-> SqueezeIR.xml: main data and config are in this more or less general file
-> MenuA.xml: Includes all necessary information for the submenus working remote A.
-> MenuB.xml: Includes all information for submenus working with remote B.
-> Web.xml: purpose should be obvious.
Another idea: Would it be very hard to include the box running squeezebox server as an IR-emitter (using lirc etc.)? This would make it possible to use not only the SBC as IR-transmitter, but also the SBS. This is just an idea for later versions of SqueezeIR. I think the stuff to be coded right now is work enough.
View Poll Results: Are you interested in IR-over-IP?
- Voters
- 10. You may not vote on this poll
-
Yes, I'd like to have IRoIP.
6 60.00% -
No, I don't care.
4 40.00%
Results 271 to 280 of 377
Thread: SqueezeIR Support Thread
-
2011-01-19, 08:51 #271Member
- Join Date
- Jan 2011
- Posts
- 47
Last edited by chincheta0815; 2011-01-19 at 08:57.
-
2011-01-19, 11:36 #272Senior Member
- Join Date
- Oct 2008
- Location
- Huntingdon, UK
- Posts
- 552
I agree. The more I think about it the more sense it makes to do it like this:
that could actually be pretty tough to do especially where people are using chains of commands that control different pieces of equipment in one event. It is also hard to code as the file downloads are asynchronous. I'd have to download SqueezeIR.xml, go through it, look for the references to the extra files, request them from the server, wait for them to be downloaded one at a time, check that I've got them all and then proceed! Of course, there's nothing to stop you breaking up the files anyway you like to work on and then just pasting all the bits together at the end if that's easier.Code:<squeezeIR> <Profiles> .... </Profiles> <Menus> .... </Menus> <IRoIP> .... </IRoIP> </SqueezeIR>
Well, SqueezeIR can work on desktop squeezeplay which can run on the SBS machine so in theory the only extra thing required would be the ir emitter hardware (the easy bit) and a program that can take the IR commands in the SqueezeIR/Controller format and convert them to the ir emitter's format. Problem is though that each brand of emitter is probably going to expect the commands formatted differently so unless there is some ubiquitous ir emitter it would need recoding on a per-user basis.Last edited by indifference_engine; 2011-01-19 at 11:38.
-
2011-01-19, 13:14 #273Member
- Join Date
- Jan 2011
- Posts
- 47
Ok, you're right. I saw it from a user perspective rather than from the coder one. At the end it is better to the controller be started in an acceptable time ;o)
I thought about lirc or winlirc, because SqueezeIR already uses lirc-files. Lirc/WinLirc also supports a lot of emitters. This system should be left to the user. Assuming a working lirc/winlirc installation with fully functional emitter, there should be a tag for marking the pc-emitter (squeezeplay or sbs). Another tag might be one for overwriting the defaut "testir" command to the path on the target system. Using lirc/winlirc I think one just have to send an command like "irsend remote code". If that would work there could be a method for doing ir-over-ip to non sbc controller hardware.
After writing all this above I must admit, that it seems a little bit harder to code and smells of a lot of work. So please keep it just as some brain storming!
-
2011-01-19, 14:57 #274Senior Member
- Join Date
- Oct 2008
- Location
- Huntingdon, UK
- Posts
- 552
-
2011-01-29, 11:09 #275Senior Member
- Join Date
- Oct 2008
- Location
- Huntingdon, UK
- Posts
- 552
New version!!!
SqueezeIR 1.00 has just been released and is available from my repository (http://www.btinternet.com/~douglashi...zebox/repo.xml).
No changes are required to your existing xml files but there have been some changes in the way SqueezeIR works. The major ones are below but you should read the change log and configuration pages on the SqueezeIR website for full details (http://www.woodbine.me.uk/squeezebox/squeezeir).
- The <hotkey> function has changed. It now enables/disables SqueezeIR's handling of the Controller's keys. The old functionality can be retained if needed by modifying your xml.
- SqueezeIR now caches the configuration locally and uses it at startup. The configuration IS NOT automatically updated from your SBS server when the Controller is restarted but must be done manually from Settings>SqueezeIR>Advanced>Update Configuration. Only good configurations (Status=3 (Success)) are cached.
- Because of the local caching you can now use SqueezeIR even if your server is not running (although you must have updated your configuration at least once for it to be cached).
- IR-over-IP has been introduced. It's basic but it's a start
- New translations have been provided for French (sg2), and Spanish (chincheta0815).
- Numerous small bug-fixes.
Have fun!!Last edited by indifference_engine; 2011-01-29 at 16:50.
-
2011-01-29, 15:41 #276Senior Member
- Join Date
- Oct 2008
- Location
- Huntingdon, UK
- Posts
- 552
ahem, sorry for the delay. I've been a bit busy but that's no excuse to abandon my loyal band of SqueezeIRites!

Linking lirc files into SqueezeIR isn't too hard and generally the lirc file itself can be used without modification but there are a few things to bear in mind:
1) In order for the lirc files to be served to the Controller by SBS they must end in '.txt' - ok so far.
2) When you reference a lirc file within SqueezeIR.xml the references are case sensitive (because lirc is a linux based project, as is the Controller)
3) The lirc files must be placed in the html\SqueezeIR\<controller MAC address> folder on your SBS (the same place as the SqueezeIR.xml file)
Assuming you have all the files in the correct place then you link them up like this (I have omitted the rest of the SqueezeIR.xml file for brevity):
That should give you a start.Code:<!-- IR commands are defined here and can be protocol parameters or references to lirc files. Commands are mapped to friendly names for easier reference later on. --> <remotes> <remote ID="samsung"> <!-- What SqueezeIR will call the remote --> <protocol>LIRC</protocol> <!-- tells SqueezeIR we are using a lirc file --> <parameters> <parameter ID="filename">Samsung BN59-00937A IT.LIRC.txt</parameter> <!-- lirc filename (case sensitive) --> <parameter ID="remote">Samsung_BN59-00937A</parameter> <!-- name of remote in lirc file (case sensitive) --> </parameters> </remote> </remotes> <!-- now SqueezeIR knows where to get the codes from we can assign them to buttons --> <profiles> <profile ID="Test"> <keys> <key ID="VOLUMEUP"> <events> <event ID="ALL"> <override>TRUE</override> <!-- send ir to the amp instead of the player --> <actions> <action order="1"> <remote>samsung</remote> <!-- remote ID defined above --> <command>Vol+</command> <!-- name of command in the lirc file (case sensitive) --> </action> </actions> </event> </events> </key> <key ID="VOLUMEDOWN"> <events> <event ID="ALL"> <override>TRUE</override> <!-- send ir to the amp instead of the player --> <actions> <action order="1"> <remote>samsung</remote> <!-- remote ID defined above --> <command>Vol-</command> <!-- name of command in the lirc file (case sensitive) --> </action> </actions> </event> </events> </key> </keys> </profile> </profiles>
-
2011-01-29, 15:43 #277Senior Member
- Join Date
- Oct 2008
- Location
- Huntingdon, UK
- Posts
- 552
-
2011-01-29, 16:41 #278Senior Member
- Join Date
- Dec 2007
- Posts
- 151
Great! I've just updated mine, but now SqueezeIR won't start.
When the Controller has rebooted, it displays the SqueezeIR status screen, and it does say "v1.00".
Under "Configuration", however, it says "Updated: Never" and "Result: 1 (Not started)". What to do ...?
I have added the code to retain the old Hot Key functionality, and I think I've done it correctly: I have only one profile, and here is a snippet of the code:
Am I right in putting "NAD Receiver" in the target element?Code:<profiles> <profile ID="Afspiller i stuen"> <menu>NAD Receiver</menu> <key ID="66"> <!-- Home | Back --> <events> <event ID="PRESS"> <override>TRUE</override> <target>NAD Receiver</target> <!-- change to match the menu ID in the profile's <menu> element --> </event> <event ID="HOLD"> <override>TRUE</override> <target>_SETTINGS</target> </event> </events> </key> <keys> ... and so on!
Btw., the Danish translations are attached :-D
Mikkel
-
2011-01-29, 16:47 #279Senior Member
- Join Date
- Oct 2008
- Location
- Huntingdon, UK
- Posts
- 552
SqueezeIR is attempting to load from its local cache but as it is a new feature it hasn't got one yet. All you need to do is go to Setings>SqueezeIR>Advanced>Update Configuration. This will download the configuration from the server and cache it.
looks ok to me but you will have to remove or reassign the old <hotkey> button as it takes priority over the buttons defined in profiles.
Thanks. I'll put them into the next update.Last edited by indifference_engine; 2011-01-29 at 16:57.
1xRadio, 2xReceiver, 2xController, 1xSB3, 2xSqueezeSlave, SBS 7.5.3
Inventor of SqueezeIR applet for the Controller
-
2011-01-29, 17:09 #280Senior Member
- Join Date
- Dec 2007
- Posts
- 151
Of course! Thanks!
Okay, I have kept the old hotkey (Home + Back) and changed the one in the profile section to <key ID="192"> <!-- Home | Play -->, but it doesn't work. Nothing happens when I press Home and Play.looks ok to me but you will have to remove or reassign the old <hotkey> button as it takes priority over the buttons defined in profiles.
Edit: Forgot to mention that the Home Caption setting isn't working either. I have entered a different value in the HomeCaption element in the xml file, but in the Controller menu it still says "SqueezeIR". I'm now running a 7.6 nightly of SBS. Firmware version on the Controller is 7.6.0 r9298. Could this have something to do with it?
I have reloaded the configuration file and cleared the cache. Am I missing something?Last edited by Pokersut; 2011-01-29 at 17:21.

Reply With Quote

