toresbe / neomaster

Alternate software for the BeoMaster 5
GNU General Public License v3.0
12 stars 1 forks source link

How to deploy neomaster? #4

Open djerik opened 4 years ago

djerik commented 4 years ago

Hi

I love the idea and I was thinking of extending it to be a display/control for my home automation in openHAB.

Do you have some documentation on how to deploy neomaster?

toresbe commented 4 years ago

Hello! Thank you for your interest. No, there is no such documentation at present. I'll have some for you within a reasonable time. The major problem is simply getting Linux installed on the box. After that, just clone the repo, make and just run neomaster as root. I do it by SSHing into the box and running it in a screen, but I realize that writing a systemd service file is probably a logical next step.

I've actually been thinking the last few days about how to do home automation control using the Beo4 remote control and the panel, and have been sketching some designs in idle moments yesterday.

Originally when the code was in a far more primitive state a hack in place to use the Beo4 with Hue directly. But now when I have a more mature understanding of how the library needs to work, it's a little bit more complex.

Essentially the libpc2/neomaster code needs to intelligently separate different remote-control events. I've been very busy with other projects but this is coming up!

djerik commented 4 years ago

Great - thank you.

My idea is to create the UI in web pages in openHAB and simply show that on the BS5. The BS5 scroll wheels and buttons could be transmitted as keyboard input to the web page and handled by JavaScript. This will ease deploy and I can utilize others existing UI work from openHAB. Also for smart home actions, the actual work will be done by openHAB. As for B&O integration, then I won’t have any of the old protocols, as I run wireless speakers everywhere and can use the API’s for controlling streaming of music.

toresbe commented 4 years ago

That sounds like a good plan. I'm doing it a little more retro style :)

In that case, you'll really only be interested in the code that deals with the panel, under ui/ - you'd want to rewrite that code to generate X11 events.

djerik commented 4 years ago

I have not bought a BS5 yet, but I have been reading up on it. As I understand it, it has an HDMI mini port, a USB port and 4 pin DIN power port? shouldn't I be able to use a Raspberry Pi Zero instead of a BM5? Would make it easy to install a small package on the wall or on top of a furniture.

toresbe commented 4 years ago

The issue is that the 4-PIN DIN port is not just power; it also carries the IR signal. Replicating an IR receiver for B&O is not as trivial as just buying any 38kHz consumer I/O, because they operate on a 455kHz carrier.

That said: If all you're interested in is using the panel, then that's absolutely a possible way to do it. If you're crafty you should also be able to create a GPIO gateway to receive the IR signals on the unused port. If you succeed with that, I'd be extremely interested to know, because yes, the BM5 is a clunky beast to write an attractive UI for. :)

mendeldesign commented 3 years ago

Me too! I thought about the pi as master for the beosound 5 too and it should work. I got a BS5 encore in the meantime, but to be able to have spotify and airplay in the box would be much better. I will keep an eye on this. (As well as on beoport as n.music player for linux)

djerik commented 2 years ago

I have tried to connect the BeoSound5 display to a modern laptop docking station with DVI connection, but my Windows 10 machine does not detect the display. Any ideas?

cismarine commented 2 years ago

I had it connected to pc (needs 800x600) and it was working fine.

djerik commented 2 years ago

@cismarine what OS?

DerAndereJohannes commented 2 years ago

I am having issues with getting the display to work with my main PC too. Doing everything through the BeoMaster has been pretty plug and play when using a 32bit Linux distribution like Mint 19.2. When doing everything on my main PC, the display never wants to even show up on xrandr saying that its disconnected (using the same LiveUSB as I used on the BeoMaster)... I've been scratching my head over this for a while now.. Could this be a driver difference? My main PC uses an older Nvidia card while the BeoMaster has a CX700/VX700 ? One note is that I am using the power source from the BeoMaster still. Do you guys have an external power solution? I would love to know what you bought.

Any assistance would be awesome.. If anyone wants to talk more about this, hit me up.

Some additional notes I have:

azudiomkm commented 1 year ago

Hello, I am trying to compile with Linux. But I couldn't run it. cmake keeps giving errors. Can you help me on how to install it?

Frankkkkk commented 6 months ago

Hi @DerAndereJohannes : did you have any luck turning the display on ? Having the same issue here (no EDID sent by the display). Thanks!

DerAndereJohannes commented 6 months ago

Hi @Frankkkkk, I have unfortunately not had any luck with the display. To be honest, I have not looked at it since then and it has been sitting there since. I would be interested in picking this project up again however. So if you would like to chat and work on it in a call, let me know.

Frankkkkk commented 6 months ago

Thanks for your reply! I still can't get the display to turn on sadly. I'll try to get a hold of a beomaster5 to see if it's some communication issues.. I'll let you know!

Frankkkkk commented 6 months ago

So it works magically on a Raspberry Pi 2 (didn't try before). Note that the USB cable must be plugged in too. I don't know yet why or how, but basically:

 fbset -v
Linux Frame Buffer Device Configuration Version 2.1 (23/06/1999)
(C) Copyright 1995-1999 by Geert Uytterhoeven

Opening frame buffer device `/dev/fb0'
Using current video mode from `/dev/fb0'

mode "1024x768"
    geometry 1024 768 1024 768 16
    timings 0 0 0 0 0 0 0
    rgba 5/11,6/5,5/0,0/0
endmode

I'll try to take a look why it doesn't work on my laptop. Maybe it fallsback to a simpler communication protocol? I have no idea :D. Cheers! Linking to https://github.com/larsbaunwall/Beolyd5/issues/3 because both repos are somehow related :)

DerAndereJohannes commented 6 months ago

That's awesome news! I might be able to put in a couple hours tomorrow to try myself too. What laptop / OS do you use out of interest?

Also, if you don't have the beomaster, may i ask how you are powering the screen?

Frankkkkk commented 6 months ago

I made a custom connector that gives it 5V and 12V. I'll make a merge request with the pinout:-)

On 3 May 2024 00:15:14 CEST, Johannes Herforth @.***> wrote:

That's awesome news! I might be able to put in a couple hours tomorrow to try myself too. What laptop / OS do you use out of interest?

Also, if you don't have the beomaster, may i ask how you are powering the screen?

-- Reply to this email directly or view it on GitHub: https://github.com/toresbe/neomaster/issues/4#issuecomment-2091832258 You are receiving this because you were mentioned.

Message ID: @.***>

DerAndereJohannes commented 6 months ago

Hi @Frankkkkk , I hope you have been able to progress well yourself. I tried to play around with the screen a bit more over the weekend and could not progress. It felt like a deja-vu experience from 2 years ago!

I have a feeling that it may have to do with it not liking Nvidia graphics cards (it has been the only thing I tested it on, as its the only card I have which has DVI). I tried the proprietary nvidia, nouveau and the fallback vesa drivers all without success. As a comparison, plugging it into the original box runs fine and defaults to the vesa drivers.

You can see the image below of the most image-like thing I received from my PC.

What graphical setup does your laptop have?

How did you connect it up to your pi? Did you use some DVI female to hdmi male adapter? If so, I would look to buy one for myself such that I can test it again.

bm-screen

Frankkkkk commented 6 months ago

Hey @DerAndereJohannes never seen these artifacts on my screen. On non working outputs it just stays blank. My laptop has an AMD GPU and doesn't work too. I suspect it should work with an EDID emulator (small adapter that you add in-line with the screen, that offers "fake" resulotions).

On my PI, though, it worked out of the box; nothing to change/add. Indeed, I used a hdmi to micro-hdmi cable. Cheers!

DerAndereJohannes commented 6 months ago

Thanks for your info!

I just got home after buying some adapters from DVI (my beo-screen has DVI-D output) to HDMI so I could try many different machines and operating systems. They all do not work either. I just find it strange that you suggest that we need to build an EDID emulator when the raspberry pi can just simply work without any adjustment. I do say though that I have had the most monitor output potential (like my previous image) when the computer I attached it too didn't already have a builtin screen (i.e., Laptop).

For reference: I also tried on my Pi 3b+ and it also worked out of the box. The only difference I can think of right now between my other PCs and the Pi is that the graphics on the Pi are handled in the SoC directly while the other computers had to use graphics over PCI.

Overall, I am confused. But at least I am happy that it is at least working on some other machine now :-) Now I just need to hack together a custom connector for power.

Frankkkkk commented 6 months ago

Haha, great! Yes it's definitely strange. Hopefully someday we get the technical answer! I should read the datasheet of the SOC, it should be explained, but not enough time ^^'

For the power, I had laying around a power brick that outputs 12V and 5V. If you know how to solder, I can send you for free a mini 4-DIN connector (or you can get some on Ali). If you want, send me an email @.***

Cheers!

On 17 May 2024 23:42:18 CEST, Johannes Herforth @.***> wrote:

Thanks for your info!

I just got home after buying some adapters from DVI (my beo-screen has DVI-D output) to HDMI so I could try many different machines and operating systems. They all do not work either. I just find it strange that you suggest that we need to build an EDID emulator when the raspberry pi can just simply work without any adjustment. I do say though that I have had the most monitor output potential (like my previous image) when the computer I attached it too didn't already have a builtin screen (i.e., Laptop).

For reference: I also tried on my Pi 3b+ and it also worked out of the box. The only difference I can think of right now between my other PCs and the Pi is that the graphics on the Pi are handled in the SoC directly while the other computers had to use graphics over PCI.

Overall, I am confused. But at least I am happy that it is at least working on some other machine now :-) Now I just need to hack together a custom connector for power.

-- Reply to this email directly or view it on GitHub: https://github.com/toresbe/neomaster/issues/4#issuecomment-2118415829 You are receiving this because you were mentioned.

Message ID: @.***>

Bakhoj commented 3 months ago

Hi,

I've been playing around trying to connect a raspberry pi 3B+ to a Beosound5.
I also had the "rainbow lines" screen same as @DerAndereJohannes posted and have been playing around with the /boot/config.txt to try and fix it.

After reading the Raspberry Pi documentation on legacy config.txt on hdmi_group and hdmi_mode, I changed it to the following:

hdmi_group=2
hdmi_mode=16

This worked for me.
framebuffer_width, framebuffer_height and framebuffer_depth does not need to be set, for me at least, with the above changes.

I'm using a hdmi to micro-hdmi cable.