ARCHIVED FORUM -- March 2012 to February 2022READ ONLY FORUM
This is the second Archived Forum which was active between 1st March 2012 and 23rd February 2022
I am using a Raspberry PI with RaspBMC (http://www.raspbmc.com/) as media center with XBMC controlled by my Beolink 4.
(1) In order to realize this solution, I am using a TSOP7000 miniature infrared receiver of 455kHz (http://darisusgmbh.de/shop/product_info.php/products_id/34359/language/de)
(2) I followed the instructions on http://forum.stmlabs.com/showthread.php?tid=5549 Step 3 to Step 5.
(3) Unfortunately I had some difficulties with the Beolink 4, since not all selected keys trained worked in the beginning. In these cases I exchanged the recorded codes and used the codes from the document "Beo4" on page http://lirc.sourceforge.net/remotes/bang&olufsen/.
Beosound 5 Encore + Beosystem 5500 + S45.2; BV7-40 MKV + BL7.1 + BL14.4+ AppleTV4; various link rooms with MCL2 A or MCL2 A/V + RL60.2 / CX100 / CX50 & Cona / IWS2000; BG4000; Beosystem 1200 + BV1600.
This looks cool!
Is XBMC running smoothly? What skin do you use (Aeon?)?
What model of the Raspberry PI do you have (A or B)?
Br
Martin
My B&O products: Beosound 9000, Beosound 2300, Beosound Century, Beolab 8000, Beolab 6000, Beolab 4000 x2, Beolab 3500, Beolab 2000, Beolab 10, Beolink Active x2, Beotime, Beo5 x2, Beo4, A9 keyring x2, LC2 dimmer x6 and growing....
I have the B version and it works very slow. I've tried several XMBC images, but stopped experimenting due to the amount of irritation.
For the record, I stream video from a NAS.
@MJBeo
Yes, you only need the TSOP7000 IR receiver for ~3 Euros and some cable to connect it to GPIO.It should work with the beolink 1000, too. I only recorded the most important keys, see attached lircd.conf file. For more complicated tasks I anyway use a keyboard.
@Rivenflush
It's running OK for accessing and streaming video, music and picture files from NAS (Synology) in my case. Live TV via HDHomeRun Internet Tuner + NAS + DVBLink runs perfectly, too. But normally I use my NAS as video recorder and watch it later via raspberry on my TV.
Originally I used the default skin "Confluence", but I changed to "Quartz" and overclocked my Raspbmc to increase the performance. I am using Raspberry Model B.
I had some problems with the TSOP7000, not reacting always to my Beolink 4 (like loose contact). The TSOP4838 (for 38 kHz) which I connected via PUC to my Beovision 9, on the other hand worked smooth form the beginning. After added a capacitor C1 - 4.7µF, a diode D1 - 1N4148 and a resistor R1 - 4k7 like this: +-----------------------+ 3 | /| 3 | + +----------+-------------------+-----|< |-o VS | | | + | | \| | ______________ | ----- | D1(1N4148) | / | ----- | | | ( | | | | | \______________ - +----------+-------o GND | | | | 2 C1(4.7µF) 2 | | | | | data -> +------------------------------+----------o OUT +-----------------------+ 1 R1(4k7) 1 The TSOP700 works smooth and reliable with the Beolink 4(see http://www.lirc.org/receivers.html, too). But still I have two questions: 1) Is there somebody who can explain, why I need an C1 and R1 for the TSOP7000 to work smooth but not for the TSOP4838? 2) On http://lirc.sourceforge.net/remotes/bang&olufsen/ you find a lirc.conf file for the Beolink 4. I used the old one, with the following format per Key: name KEY_UP 200 3125 200 3125 200 15625 200 3125 200 6250 200 6250 200 6250 200 6250 200 6250 200 6250 200 6250 200 6250 200 6250 200 6250 200 6250 200 9375 200 6250 200 6250 200 6250 200 3125 200 12500 200 The “new” format (somebody changed the file on 01-May-2014) name KEY_UP KEY_0 3125 # Was: 200 KEY_0 3125 # Was: 200 KEY_0 6250 # Was: 200 KEY_0 6250 # Was: 200 KEY_0 6250 # Was: 200 KEY_0 9375 # Was: 200 KEY_0 6250 # Was: 200 KEY_0 # Was: 200 Does not work on my Raspberry PI setup. In case somebody is looking for the old file, I have downloaded and can provided it.
I had some problems with the TSOP7000, not reacting always to my Beolink 4 (like loose contact). The TSOP4838 (for 38 kHz) which I connected via PUC to my Beovision 9, on the other hand worked smooth form the beginning. After added a capacitor C1 - 4.7µF, a diode D1 - 1N4148 and a resistor R1 - 4k7 like this:
+-----------------------+ 3 | /| 3
| + +----------+-------------------+-----|< |-o VS
| | | + | | \|
| ______________ | ----- | D1(1N4148)
| / | ----- | |
| ( | | | |
| \______________ - +----------+-------o GND | |
| | 2 C1(4.7µF) 2 |
| | |
| data -> +------------------------------+----------o OUT
+-----------------------+ 1 R1(4k7) 1
The TSOP700 works smooth and reliable with the Beolink 4(see http://www.lirc.org/receivers.html, too).
But still I have two questions:
1) Is there somebody who can explain, why I need an C1 and R1 for the TSOP7000 to work smooth but not for the TSOP4838?
2) On http://lirc.sourceforge.net/remotes/bang&olufsen/ you find a lirc.conf file for the Beolink 4. I used the old one, with the following format per Key:
name KEY_UP
200 3125 200 3125 200 15625
200 3125 200 6250 200 6250
200 6250 200 6250 200 6250
200 9375 200 6250 200 6250
200 6250 200 3125 200 12500
200
The “new” format (somebody changed the file on 01-May-2014)
KEY_0 3125 # Was: 200
KEY_0 6250 # Was: 200
KEY_0 9375 # Was: 200
KEY_0 # Was: 200
Does not work on my Raspberry PI setup. In case somebody is looking for the old file, I have downloaded and can provided it.
for my Avant 55" i use a MINIX X7 system,
They are a great media system android based and also has its own version of XMBC which runs really smoothly
also B&O have the PUC to control it so controlling it via the B&O remote was easy!
Alsfeld:1) Is there somebody who can explain, why I need an C1 and R1 for the TSOP7000 to work smooth but not for the TSOP4838?
These 3-pin IR receiver ICs are quite sensitive components. The C and R are there to filter & suppress power supply interference. Even if you didn't find the *38 to necessarily need them, it probably works more reliably and is more sensitive with them.
The last time I looked into the "Beo 4" entry in LIRC repositories some years ago, the config file was far from complete and seemed to have been captured with unstable and/or incorrect timing parameters so it didn't need many additional uncertainties to start working erratically. I ended up recapturing it completely from scratch. Unfortunately I don't think I have it left anywhere anymore, since I later abandoned LIRC completely and wrote my own receiver on an Arduino.
Now that my main TV is a Sony, I don't need any direct IR control at all since the RPi + OSMC -combo is controlled directly via HDMI CEC. Unfortunately that also means I need to live with the crappy Sony remote.
--mika
Sounds lile a fantastic solution! I am ready to buy a Minix for my Beocenter 1, but unable to find any info on B&O compability anywhere. Can you help? Maybe a step-by-step guide on how to set it up?
Hello,
I'm all new to this forum and the Raspberry PI and now my mind is set on controlling some LEDs with my Beolink4.
So far, I have setup a Raspberry Pi Zero with LIRC and connected a TSOP7000 as per your diagram above. By running "mode2 -d /dev/lirc0", I get lot of output when pressing the remote. It looks like:
space 12space 6056space 6266space 75space 113space 6072space 125space 24space 2979space 191space 12325...and so on - lots off spaces, very few pulses. Does this looks right? (Occasionally I get output even when I don't press the remote too, mostly spaces between 1 - 25)
I have used irrecord to create the lircd.conf file, but examining the file pulse/space data looks very irregular - not anywhere as neat as your examples above. I have also copy/pasted your KEY_UP values into the lircd.conf file. Regardless, using irw I am not able to detect any button presses.
Any suggestions as to where the problem is would be much appreciated!
Also, if I could have the lircd.conf file you had success using, that would be great. My email is mads@purup.com
Thanks!
did you get this to work with the Beo4?
Unfortunately not. I couldn't find any help or figure it out so I gave up. If you succeed please let me know, thanks.
Hi,
several years ago i downloaded the 'correct' (= old format) Lirc file from lirc.org.
It's attached as a zip file containing 'beo4.conf'.
Ralph-Marcus
Thanks. Did you also manage to successfully build a Raspberry PI receiver?
I have been playing with a Raspberry Pi with Lirc, and did not find any success.
However I did see a link to a github repo for BeoMote which is a library for use with an Arduino. The original was designed for a B&O eye, and I am using a TSOP 7000. I have reworked a clone and have it working pretty reliably with an Arduino Uno. The circuit is the same as in this thread, but without the 4k7 resistor. I have it hooked up to the 3.3v and pin 3 of my Uno. Pressing remote buttons will result in translated commands being sent over the serial port. Initially it seemed excessive to use both a Pi and Arduino, but in retrospect it should be more reliable as the Arduino can do the time sensitive pulse processing, leaving the Pi to do other CPU intensive work without having to worry about the remote processing.
My git clone is at https://github.com/samsp99/Beomote. I also added the commands I could find in the BeoRemote One that were not already in the commands enum from Beo 4.
The loop function of the sketch writes the remote data via the USB serial connection. If I have the arduino hooked to a USB port of the Pi, then I can read the data via the USB serial port that is created over the USB connection. It seems like the Pi has the drivers included so it maps the arduino to /dev/ttyUSB0.
I will be hooking this up to OpenHab to control my TV, Receiver, Fire TV, PS4 etc via a combination of HDMI CEC and IP commands (Pioneer). Essentially an overly complex and expensive version of a Logitech Harmony, but with the egonomics of a B&O remote.
samsp: I have been playing with a Raspberry Pi with Lirc, and did not find any success. However I did see a link to a github repo for BeoMote which is a library for use with an Arduino. The original was designed for a B&O eye, and I am using a TSOP 7000. I have reworked a clone and have it working pretty reliably with an Arduino Uno. The circuit is the same as in this thread, but without the 4k7 resistor. I have it hooked up to the 3.3v and pin 3 of my Uno. Pressing remote buttons will result in translated commands being sent over the serial port. Initially it seemed excessive to use both a Pi and Arduino, but in retrospect it should be more reliable as the Arduino can do the time sensitive pulse processing, leaving the Pi to do other CPU intensive work without having to worry about the remote processing. My git clone is at https://github.com/samsp99/Beomote. I also added the commands I could find in the BeoRemote One that were not already in the commands enum from Beo 4. The loop function of the sketch writes the remote data via the USB serial connection. If I have the arduino hooked to a USB port of the Pi, then I can read the data via the USB serial port that is created over the USB connection. It seems like the Pi has the drivers included so it maps the arduino to /dev/ttyUSB0. I will be hooking this up to OpenHab to control my TV, Receiver, Fire TV, PS4 etc via a combination of HDMI CEC and IP commands (Pioneer). Essentially an overly complex and expensive version of a Logitech Harmony, but with the egonomics of a B&O remote.
Raspberry PI is not by default running a realtime Linux kernel, and that is why it is very difficult/almost impossible to get the IR decoded correct on the PI.
I tried and almost got it working, but it still missed a lot of commands from the remote.
An Arduino on the other hand works 100% perfect. I have build a totally LC2 compatible system that uses Arduino and Philips Hue, which is all controlled by Beo4.
Everything works and can be set up like LC2 lamps.
/Weebyx
You guys have made some VERY interesting and useful projects for the B&O world and I'm very curious about these solutions!
Would you mind sharing how you did it, what parts are required and what functionality is possible with your setups?
TWG: You guys have made some VERY interesting and useful projects for the B&O world and I'm very curious about these solutions! Would you mind sharing how you did it, what parts are required and what functionality is possible with your setups?
I have made my Philips Hue control with an original B&O Ir Eye(because it is beautiful on the wall), connected to an Arduino Uno.
On the Uno is running the code that detects IR pulses, and decodes them the same way B&O does it.
Once the IR code is decoded to a command, the Arduino determines if it has something to do with the Light command, and if so, it creates a http webrequest to the Philips Hue bridge via the Hue API, that tells Hue which lights/groups to turn on/off/dim and so on.
It requires some coding experience, but it is not as hard as it sounds. Off course Arduino knowledge is required. The HW is very simple if you use the B&O IR eye.
It is also easy to use the old IR receiver from a Beomaster 35/4500.
Hi! Sounds like one can control a Beovision motorstand with an IR-receiver and Arduino Uno?!
I need more Beolabs!
I have had a love of B&O hardware for decades, but could not justify the resources to buy it, particularly for TV/Video equipment where the price/functionality is not there. I have admired the integration of a complete B&O system and wanted to achieve the same thing in a heterogeneous environment. I wanted something similar to logitech harmony, but cleaner using a BEO 4 or BeoRemote One.
I have now built it.
IR signals are received by an Arduino Nano together with a TSOP 7000 IR reciever, capacitor & resistor. This is running a custom version of BeoMote that processes the IR pulses, translates them into binary and sends codes via the built in serial port/USB connection.
I then have a Raspberry Pi running OpenHab2 as the control unit. The arduino is connected via USB which appears as a serial port to the Pi. OpenHab has bindings for Serial. PioneerReciever, Sonos, zwave and I extended an HDMI-CEC one posted on the forums.
I am using HDMI-CEC to control my TV (Vizio), PS4 & FireTV Cube. CEC is great for this as its more reliable than IR, can power on devices that don't via IR (PS4) and don't support IR (FireTV). It will also do the source switching automatically without me having to figure out the inputs.
My reciever (Pioneer) is supposidly CEC capable, but its buggy. The IP binding works great for it.
I have rules that interpret the B&O commands, and then map them to CEC or other commands. I can select a source with the Beo Remote One, and it will switch it on, switch to it, and then send subsequent signals to that device.
I have it filtering out volume to the receiver, standby turns everything off, lighting maps to zwave devices etc.
Total cost of hardware (not including remote(s)) < $100. The biggest issue was getting small numbers of individual components, so I now have a collection of resistors, capacitors, diodes, Arduino Nanos (came as a pack of 3) etc.
I like all of your projects! It's what the Beoworld needs, too! - what about circuit diagrams of your individual solutions?- which software is required on arduinos and raspberry pi's?- are TSOP 7000 receivers still available? I thought they where end of life and aren't manufactured anymore!?For non-ir devices like the PS 4 and Fire TV cube you can use FLIRC USB, a programmable USB Infrared adapter:https://flirc.tv/flirc-usbThe only little downside: It needs PUC (or other ir sources) to be controlled by a B&O system as FLIRC doesn't support the B&O ir frequency. I'm controlling a Nvidia Shield TV from a Beosystem via PUC -> FLIRC USB.
The circuit for my Arduino is essentially the one on page 1 of this thread. The software is at https://github.com/samsp99/Beomote.
On the Pi, I am running openhab using the openhabian option from openhab.org, together with a couple of standard bindings, and https://github.com/samsp99/openhab2-addons/tree/hdmi-cec/addons/binding/org.openhab.binding.hdmicec
TSOP 7000 are available from ebay.