B&O IR and Arduino

41 replies

I think that the datalink protocol was already completely reverse-engineered by some clever guys. 

One solution you can find in one of the older threads that tournedos mentioned just above.  

 

Before building a discrete demodulator, I would always suggest using an TSOP7000. Those are known to work very well with the B&O remotes. Unfortunately they are not produced anymore but there are several places you can get them in small quantities.

 

 

Yes i've seen the old topic about datalink but I need to go further in the specs.

about the TSOP7000 the lack of availability was why i've choosen the discrete way. ( it's an obsolete component and you only find new old stock parts. it's not a good choice if you want to share the circuit)

I'm working on faulty LC2 dimmer actually and I will work on the remote receiver when I will have some free time :)

Hi,

 

the discreete IR receiver gives a better reception and sensitivity than the TSOP 7000/5700. Actually the discreete circuit is an AM receiver for the fixed frequency of 455 KHz. Nevertheless the integrated TSOP solution can be used as a backup for easier testing or a smaller footprint in the whole project.

 

Location: Near Munich

My B&O Icons:

Beoremote-Beo4.png Beoremote-Beo4.png
Beosound.png Beosound.png
Beosound-9000.png Beosound-9000.png
Beosound-5.png Beosound-5.png
Beoplay-P2.png Beoplay-P2.png
Beoplay-M3.png Beoplay-M3.png
Beoplay-Earset.png Beoplay-Earset.png
Beogram-400x.png Beogram-400x.png

yes the discrete receiver seems to be very sensitive but uses another component hard to find : the 455Khz bandpass filter. but it's available at farnell.

 

Franck wrote:

Build an emitter is easy because we can program the microcontroller counter to make any frequencies we needs but the problem for the receiver is the 455KHz carrier frequency.

Actually it isn't that easy - at least with the standard Arduino with a standard clock frquency - because the counter/timer resoluution isn't good enough for accurate 455k generation. You get either several dozen kHz too high or too low. It works, but the range suffers a lot.

That's why I'm using the Teensy boards; they have a more advanced AVR controller with a high speed timer/counter which has no problem generating an accurate 455 kHz signal directly.

This is why i'm not using arduino ;) are you sure that the UBRR or counter compare interrupts + reload can't accurately create the 455KHz carrier?

I'm working with my own microcontroller boards design and assembler / C++ cross compiler.

this kind of things ;)

Yes, you are right that the Arduino is not able to exactly produce 455khz. 

Instead, you have to be satisfied with 444khz at Timer1 (the most accurate). I have it tested with oscilloscope and this frequency is quite stable and will give you a range of some meters if you put a transistor between.

Of course there are better solutions around than Arduino, but this one comes with a nice IDE, has a big community and is available nearly everywhere. 

 

Regarding the receiver: sounds interesting. Since I always had an IR eye or TSOP7000 near me I never thought about another solution.  I know that the eye is working a similar way like you described.

May I ask you to share your schematics and/or your experiences with the discreet way? :-)

Yes the Arduino is great to made quick developments even if they have some hardware mistakes (my alarm system with GSM alert and my DMX smoke/fan control works with mega 2560 ;) )

Don't worry i will share the schematics as soon I got a good working system. the BF240 is no more available and I must find a good replacement part (i'm working with a spare IR circuit from B&O product)

BeoMotion wrote:
Of course there are better solutions around than Arduino, but this one comes with a nice IDE, has a big community and is available nearly everywhere. 

The Teensy boards (up to v2.0) are actually Arduino compatible. You install the extra software and they integrate with the Arduino IDE. What you get is a more advanced, much smaller and quite a bit cheaper board. If you don't need compatibility with the Arduino shields, it is worth a look:

I'm using the BEOMOTE arduino sketch and my own code to operate my Yamaha, Lutron and Sony setup for a year now. It also uses a 433RF transmitter to control curtains. (Klik aan Klik uit, COCO). Works like a charm! (Using a Beolink eye, even the buttons work)

or
BeoWorld Gold Membership card
Join BeoWorld

Register to access the forums, reference material, and exclusive member benefits — including our monthly prize draw.

Become a Member

December 2026 Prize Draw

Gold Members Only

As a Gold member you're automatically entered into our exclusive prize draw — your chance to win iconic Bang & Olufsen products. A unique benefit of BeoWorld Gold membership, every draw brings a new opportunity to win something special.