View Full Version : SnapStream Firefly remote working with XBMC!
brw02005
2008-02-27, 19:46
Ok here is the steps for gutsy
$ sudo apt-get install lirc
pick out the X10 snapstream remote
$ sudo gedit /etc/lirc/lircd.conf
removed everything other than the section for the Snapstream Firefly
changed the name of the remote to Snapstream (as spaces are not allowed)
I also edited /etc/lirc/hardware.conf and changed REMOTE="Snapstream X10 RF" to Snapstream but was told this is an unnecessary step so only do if you need it.
$ sudo /etc/init.d/lirc restart
$ irw
test out your remote if you press keys and stuff comes up it worked
now edit Lircmap.xml in /XBMC/BUILD/UserData some people may have theres referencing /XBMC/UserData edit both if not sure or check the log to which one is loading.
Now change one of the remote names to Snapstream and start putting in the key listings from the irw command. What I did what change the mceremote and changed Left to LEFT and VolumeUp to VOL+ and so forth. If you want to be lazy here is my Lircmap.xml for this remote. If you have a problem with how I laid out the buttons change it (no complaining!).
<!-- This file contains the mapping of LIRC keys to XBMC keys used in Keymap.xml -->
<lircmap>
<remote device="Snapstream">
<pause>PAUSE</pause>
<stop>STOP</stop>
<forward>FORWARD</forward>
<reverse>REWIND</reverse>
<left>LEFT</left>
<right>RIGHT</right>
<up>UP</up>
<down>DOWN</down>
<select>OK</select>
<pageplus>CH+</pageplus>
<pageminus>CH-</pageminus>
<back>EXIT</back>
<menu>MENU</menu>
<title>PLAY</title>
<info>INFO</info>
<skipplus>NEXT</skipplus>
<skipminus>PREV</skipminus>
<display>MAXI</display>
<start>FIREFLY</start>
<record>REC</record>
<volumeplus>VOL+</volumeplus>
<volumeminus>Vol-</volumeminus>
<mute>MUTE</mute>
<power>CLOSE</power>
<myvideo>VIDEO</myvideo>
<mymusic>MUSIC</mymusic>
<mypictures>PHOTOS</mypictures>
<mytv>TV</mytv>
<one>1</one>
<two>2</two>
<three>3</three>
<four>4</four>
<five>5</five>
<six>6</six>
<seven>7</seven>
<eight>8</eight>
<nine>9</nine>
<zero>0</zero>
<mytv>A</mytv>
<mymusic>B</mymusic>
<mypictures>C</mypictures>
<myvideo>D</myvideo>
</remote>
Hope this works out for you guys let me know how it went.
brw02005
2008-02-27, 19:59
sry quick edit
forward>FORWARD</forward>
<reverse>REWIND</reverse>
should be
forward>FWD</forward>
<reverse>RWD</reverse>
please feel free to submit this whole config to the SVN I don't know how.
Lowen SoDium
2008-03-02, 06:14
Thanks for this. It just so happened that I decided this morning that I was going to see if I could get this to work, and you saved me a lot of time.
BTW:
<volumeminus>Vol-</volumeminus>
should be
<volumeminus>VOL-</volumeminus>
Also, is it possible to bind a key to put the computer to sleep/standby? I am not sure if XBMC supports that yet.
what is the key that stops the 2x/4x/etc play and returns to normal speed?
brw02005
2008-03-03, 06:33
Sry guys appently was in too much of a hurry posting the xml way too many errors
here's another one
<reverse>RWD</reverse>
<reverse>REW</reverse>
here's revision 2
<lircmap>
<remote device="Snapstream">
<pause>PAUSE</pause>
<stop>STOP</stop>
<forward>FWD</forward>
<reverse>REW</reverse>
<left>LEFT</left>
<right>RIGHT</right>
<up>UP</up>
<down>DOWN</down>
<select>OK</select>
<pageplus>CH+</pageplus>
<pageminus>CH-</pageminus>
<back>EXIT</back>
<menu>MENU</menu>
<title>PLAY</title>
<info>INFO</info>
<skipplus>NEXT</skipplus>
<skipminus>PREV</skipminus>
<display>MAXI</display>
<start>FIREFLY</start>
<record>REC</record>
<volumeplus>VOL+</volumeplus>
<volumeminus>VOL-</volumeminus>
<mute>MUTE</mute>
<power>CLOSE</power>
<myvideo>VIDEO</myvideo>
<mymusic>MUSIC</mymusic>
<mypictures>PHOTOS</mypictures>
<mytv>TV</mytv>
<one>1</one>
<two>2</two>
<three>3</three>
<four>4</four>
<five>5</five>
<six>6</six>
<seven>7</seven>
<eight>8</eight>
<nine>9</nine>
<zero>0</zero>
<mytv>A</mytv>
<mymusic>B</mymusic>
<mypictures>C</mypictures>
<myvideo>D</myvideo>
</remote>
xmltok in order to stop fast forwarding you hit the rewind but fix your Lircmap.xml first cause of my error.
Lowen SoDium go not idea on standby I'm sure eventually they will build it into xbmc in the mean time check around for a script you can map to one of the keys. I'm sure you'll find something whether it be in this forum or the mythtv postings.
I am using XBMC with windows. Can you help me set it up with the winbloze environment?
ticklemeozmo
2008-09-27, 14:10
Can you post your lircd.conf?
The Atlantis Beta 1 does not include a lircd.conf which includes other remotes than the mceremote.
Thank you.
ticklemeozmo
2008-09-27, 14:40
Nevermind, I'm a dope.
A number of lircd's are located "/usr/share/lircd/remote", just copy over lircd and restart with your remote.
Then you'll need to edit /usr/share/xbmc/system/Lircmap.xml with the correct parameters (for the StreamZap remote, I found: http://xbmc.org/forum/showthread.php?t=29085&highlight=streamzap)
outleradam
2009-10-25, 20:11
I am having problems with finding the file. I'm in usr/share/XBMC. I cannot find the Build dir.
My remote works fine in irw
I found the lircmap.xml in usr/share/xbmc/userdata I copied and pasted over the entire lirc map. XBMC is not receiving any commands.
What do I need to do to get XBMC to receive commands?
outleradam
2009-10-26, 01:15
got it working. I had an extra <lircmap> in the file. Thanks for a great DIY guide mang!
outleradam
2009-10-27, 07:05
Ok, it didn't work because I did it that way, it worked because I did some other things... Here's what you do...
sudo apt-get install lirc
replace the /etc/lirc/lircd.conf in it's entirety with this file
begin remote
name Snapstream Firefly
bits 40
eps 30
aeps 100
one 0 0
zero 0 0
gap 219964
begin codes
MAXI 0x00000014012C0000
CLOSE 0x0000001457820000
1 0x00000014E20D0000
2 0x00000014638E0000
3 0x00000014E40F0000
4 0x0000001465900000
5 0x00000014E6110000
6 0x0000001467920000
7 0x00000014E8130000
8 0x0000001469940000
9 0x00000014EA150000
0 0x000000146C970000
BACK 0x00000014EB160000
ENT 0x000000146D980000
VOL+ 0x00000014DE090000
VOL- 0x00000014DD080000
MUTE 0x00000014DF0A0000
FIREFLY 0x00000014D5000000
CH+ 0x00000014E00B0000
CH- 0x00000014E10C0000
INFO 0x00000014032E0000
OPTION 0x00000014042F0000
UP 0x00000014EF1A0000
LEFT 0x00000014F21D0000
DOWN 0x00000014F7220000
RIGHT 0x00000014F41F0000
OK 0x00000014F31E0000
MENU 0x00000014F11C0000
EXIT 0x00000014F5200000
REC 0x000000147CA70000
PLAY 0x000000147AA50000
STOP 0x000000147DA80000
REW 0x0000001479A40000
FWD 0x000000147BA60000
PREV 0x0000001480AB0000
PAUSE 0x000000147EA90000
NEXT 0x000000147FAA0000
MUSIC 0x000000145B860000
PHOTOS 0x000000145A850000
DVD 0x0000001459840000
TV 0x0000001458830000
VIDEO 0x000000145C870000
HELP 0x0000001456810000
MOUSE 0x0000001482AD0000
A 0x000000146E990000
B 0x00000014709B0000
C 0x0000001476A10000
D 0x0000001478A30000
end codes
end remote
Restart the interface by typing
sudo /etc/init.d/lirc restart
Verify it works by typing
irw
Update the codes in xbmc's keymap using this page
<lircmap>
<remote device="Snapstream">
<pause>PAUSE</pause>
<stop>STOP</stop>
<forward>FORWARD</forward>
<reverse>REWIND</reverse>
<left>LEFT</left>
<right>RIGHT</right>
<up>UP</up>
<down>DOWN</down>
<select>OK</select>
<pageplus>CH+</pageplus>
<pageminus>CH-</pageminus>
<back>EXIT</back>
<menu>MENU</menu>
<title>PLAY</title>
<info>INFO</info>
<skipplus>NEXT</skipplus>
<skipminus>PREV</skipminus>
<display>MAXI</display>
<start>FIREFLY</start>
<record>REC</record>
<volumeplus>VOL+</volumeplus>
<volumeminus>Vol-</volumeminus>
<mute>MUTE</mute>
<power>CLOSE</power>
<myvideo>VIDEO</myvideo>
<mymusic>MUSIC</mymusic>
<mypictures>PHOTOS</mypictures>
<mytv>TV</mytv>
<one>1</one>
<two>2</two>
<three>3</three>
<four>4</four>
<five>5</five>
<six>6</six>
<seven>7</seven>
<eight>8</eight>
<nine>9</nine>
<zero>0</zero>
<mytv>A</mytv>
<mymusic>B</mymusic>
<mypictures>C</mypictures>
<myvideo>D</myvideo>
</remote>
K, so you installed lirc, configured lirc, patched the correct keymap into lirc, then patched the keymap into xbmc.
outleradam
2009-10-28, 05:05
here is a lircd.conf file that works well with snapstream firefly. The other one works, but it has a 40 bit expectation, when it really needs 16. this one is more optimized and faster
begin remote
name Snapstream Firefly
bits 16
eps 30
aeps 100
one 0 0
zero 0 0
pre_data_bits 8
pre_data 0x14
post_data_bits 16
post_data 0x0
gap 235978
toggle_bit_mask 0x80800000
begin codes
maximize 0x81AC
close 0xD702
1 0x628D
2 0xE30E
3 0x648F
4 0xE510
5 0x6691
6 0xE712
7 0x6893
8 0xE914
9 0x6A95
0 0xEC17
back 0x6B96
ent 0xED18
volup 0x5E89
voldown 0xDD08
mute 0x5F8A
chup 0xE00B
chdown 0x618C
firefly 0xD500
info 0x83AE
option 0x042F
up 0x6F9A
down 0xF722
left 0x729D
right 0xF41F
ok 0x739E
menu 0xF11C
exit 0x75A0
rec 0xFC27
play 0x7AA5
stop 0xFD28
rew 0x79A4
prev 0x002B
pause 0x7EA9
ffwd 0xFB26
next 0x7FAA
music 0xDB06
photo 0x5A85
dvd 0xD904
tv 0x5883
video 0xDC07
help 0x5681
mouse 0x022D
a 0x6E99
b 0xF01B
c 0x76A1
d 0xF823
end codes
end remote
and here's the /usr/share/xbmc/system/lircmap for these keys.
<remote device="Snapstream">
<pause>pause</pause>
<stop>stop</stop>
<forward>forward</forward>
<reverse>rewind</reverse>
<left>left</left>
<right>right</right>
<up>up</up>
<down>down</down>
<select>ok</select>
<pageplus>chup</pageplus>
<pageminus>chdown</pageminus>
<back>exit</back>
<menu>menu</menu>
<title>play</title>
<info>info</info>
<skipplus>next</skipplus>
<skipminus>prev</skipminus>
<display>maximize</display>
<start>firefly</start>
<record>rec</record>
<volumeplus>volup</volumeplus>
<volumeminus>voldown</volumeminus>
<mute>mute</mute>
<power>close</power>
<myvideo>video</myvideo>
<mymusic>music</mymusic>
<mypictures>photos</mypictures>
<mytv>tv</mytv>
<one>1</one>
<two>2</two>
<three>3</three>
<four>4</four>
<five>5</five>
<six>6</six>
<seven>7</seven>
<eight>8</eight>
<nine>9</nine>
<zero>0</zero>
<mytv>a</mytv>
<mymusic>b</mymusic>
<mypictures>c</mypictures>
<myvideo>d</myvideo>
</remote>
outleradam
2009-10-29, 01:57
lircd.conf
outleradam
2009-11-07, 07:00
I figured i'd post this here http://xbmc.org/wiki/?title=Snapstream_Firefly