• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
MagicMirror Forum
  • Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.

Strip Down Guide for BenQ 28" VA Monitor GC2870H

Scheduled Pinned Locked Moved Hardware
61 Posts 10 Posters 49.8k Views 10 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Y Offline
    yep_DD @MadScientist
    last edited by yep_DD Sep 10, 2018, 10:16 AM Sep 10, 2018, 9:48 AM

    @madscientist you were right, it does not work well behind the mirror. I will keep the sensor anyway as the way it is designed it is easier to affix to my aluminum frame. I am now thinking of getting small black plexiglas casing to attach to the bottom part to control the mirror and make it look nice… let’s see.

    So this could be the plan:

    • Plexiglas with Cutout letters
      0_1536574392126_aa1bc4b3-c3ee-43b0-94b4-4379c7562c39-image.png

    • behind that translucent plexiglas

    • glue together

    • LED Strip on top of translucent glas to illuminate the cutout letters

    • enjoy?

    1 Reply Last reply Reply Quote 0
    • Y Offline
      yep_DD
      last edited by Sep 11, 2018, 12:25 PM

      I am just going to follow up on that, I found a different solution. I am using a HUE Dimmer Switch that is controlled via FHEM and it controls a python script running on MagicMirror to play my podcast and change the volume:

      (I found that script somewhere on github and modified it a bit)

      #!/usr/bin/python3 -u
      
      host_name = '10.0.1.49' 
      host_port = 8000
      
      import RPi.GPIO as GPIO
      import os
      import subprocess
      import signal
      from subprocess import call
      from time import sleep
      from http.server import BaseHTTPRequestHandler, HTTPServer
      
      
      
      
      class MyServer(BaseHTTPRequestHandler):
      
          def do_HEAD(self):
              self.send_response(200)
              self.send_header('Content-type', 'text/html')
              self.end_headers()
      
          def do_GET(self):
              global proc
              html = '''
                 <html>
                 <body style="width:960px; margin: 20px auto;">
                 <h1>Magic Mirror Control</h1>
                 <p>Current GPU temperature is {}</p>
                 <p>Podcast: <a href="/play">Play</a> <a href="/stop">Stop</a></p>
                 <p>Volume: <a href="/down">down</a> <a href="/up">up</a></p>
                 <p>System: <a href="/shutdown">Shutdown</a> <a href="/restart">Restart</a></p>
                 <div id="podcast-status"></div>
                 <script>
                     document.getElementById("podcast-status").innerHTML="{}";
                 </script>
                 </body>
                 </html>
              '''
              temp = os.popen("/opt/vc/bin/vcgencmd measure_temp").read()
              self.do_HEAD()
              status = ''
              if self.path=='/':
                  status='nothing'
              elif self.path=='/play':
                  proc = subprocess.Popen(["omxplayer", "-o", "alsa:hw:ALSA", "--no-osd", "/tmp/video.mp4"], preexec_fn=os.setsid)
                  status='Playing Podcast'
              elif self.path=='/stop':
                  status='Stopping Podcast'
                  os.killpg(os.getpgid(proc.pid), signal.SIGTERM)
              elif self.path=='/shutdown':
                  status='Shutdown'
                  subprocess.Popen(["sudo", "shutdown", "-h", "now"], preexec_fn=os.setsid)
              elif self.path=='/restart':
                  status='Restart'
                  subprocess.Popen(["sudo", "reboot"], preexec_fn=os.setsid)
              elif self.path=='/down':
                  status='Volume down'
                  subprocess.Popen(["amixer", "set", "Master", "12%-"], preexec_fn=os.setsid)
              elif self.path=='/up':
                  status='Volume up'
                  subprocess.Popen(["amixer", "set", "Master", "12%+"], preexec_fn=os.setsid)
              self.wfile.write(html.format(temp[5:], status).encode("utf-8"))
      
      
      if __name__ == '__main__':
          http_server = HTTPServer((host_name, host_port), MyServer)
          print("Server Starts - %s:%s" % (host_name, host_port))
      
          try:
              http_server.serve_forever()
          except KeyboardInterrupt:
              http_server.server_close()
      
      
      1 Reply Last reply Reply Quote 0
      • A Offline
        Adrien
        last edited by Oct 17, 2018, 4:44 PM

        Hello,

        Would it be possible to use a relay to power/unpower the screen ? On the sheet you show pin 3/4 power the backlight correct?

        Thanks

        M Y 2 Replies Last reply Oct 17, 2018, 5:27 PM Reply Quote 0
        • M Offline
          MadScientist @Adrien
          last edited by Oct 17, 2018, 5:27 PM

          @adrien check out this forum thread. cruunnerr explains different methods on how to turn on/off your screen. He helped me setting up my system which uses a relay and PIR-sensor to power on/off my LCD. I think that’s what you’re looking for.

          1 Reply Last reply Reply Quote 0
          • A Offline
            Adrien
            last edited by Oct 17, 2018, 5:58 PM

            Well i’m not sure, i don’t use the magic mirror OS but home made application. I use a pir sensor, i would like to have instant poweron/poweroff without any OSD message on screen. So My question was if i cut the pin 3 or 4 on the backlight connector will it work ? To be clear when the PIR detect someone the relay connect the PIN (3 or 4) after few seconds relay disconnect the PIN (3 or 4)

            M 1 Reply Last reply Oct 17, 2018, 6:04 PM Reply Quote 0
            • M Offline
              MadScientist @Adrien
              last edited by Oct 17, 2018, 6:04 PM

              @adrien That should still be possible with the script method described in 5.1. Instead of the power lines for the controller board of the LCD you use the cables that lead to your backlight.

              I don’t know what LCD you have. Some have an extra inverter or LED driver board. You can take the cables from there. Some have a 40 pin LVDS cable (instead of 30 pin), so you have to check the datasheet which wires are for the backlight. I’d take the VCC wire for the backlight, snip it and connect both lose ends to the relay. That should work.

              Keep in mind that with this method the LCD is always on, only the backlight is off.

              1 Reply Last reply Reply Quote 0
              • A Offline
                Adrien
                last edited by Adrien Oct 18, 2018, 4:17 AM Oct 17, 2018, 7:58 PM

                Thanks for your help. I use the same model :BenQGC2870H. I would like to combine a solution where i have a minimum power consumption and fast without osd message boot.

                1 Reply Last reply Reply Quote 0
                • Y Offline
                  yep_DD @Adrien
                  last edited by Oct 21, 2018, 11:39 AM

                  @adrien Hi Adrien, that was my initial plan but I use the two relays now for my speakers to avoid the initial crack sound when powering on the amplifier und I use one relay for the monitor power supply and one for the amplifier.

                  A 1 Reply Last reply Oct 21, 2018, 12:25 PM Reply Quote 0
                  • A Offline
                    Adrien @yep_DD
                    last edited by Oct 21, 2018, 12:25 PM

                    @yep_dd Hello, and thanks for your guide :) Did you try to do it ? do you confirm that could work ? Thanks

                    1 Reply Last reply Reply Quote 0
                    • Y Offline
                      yep_DD
                      last edited by yep_DD Oct 21, 2018, 1:37 PM Oct 21, 2018, 1:32 PM

                      @Adrien No problem, I am pretty sure it should work but I have not tried it. I might in the future. I am working on a few other bugifxes as well (amplifier only turns on when sound is played and stuff like that). I also suggest to use the microwave / radar sensor instead of the PIR. it is much cleaner and can go behind the mirror.

                      Regarding the OSD, instead of cutting wires to the backlight this seems like a valuable option. At the moment I can’t try this (I need a friend to help me take down the mirror as it is too heavy), but I will tomorrow: https://www.youtube.com/watch?v=y86AXOZwlgU (TL;DW: press menu button while turning monitor on and disable logo)

                      1 Reply Last reply Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 4
                      • 5
                      • 6
                      • 7
                      • 3 / 7
                      • First post
                        Last post
                      Enjoying MagicMirror? Please consider a donation!
                      MagicMirror created by Michael Teeuw.
                      Forum managed by Sam, technical setup by Karsten.
                      This forum is using NodeBB as its core | Contributors
                      Contact | Privacy Policy