MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    1. Home
    2. Robert_K
    3. Posts
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.
    Offline
    • Profile
    • Following 0
    • Followers 3
    • Topics 5
    • Posts 14
    • Groups 0

    Posts

    Recent Best Controversial
    • RE: Bathroom mirror: "Frameless, thin, gesture and voice controlled"

      @Tyfoon

      Goodmorning,

      Hardware wise I have not a single issue. There is absolutly no warping in the plexiglass.
      I choose plexiglass because that’s what I can get hold of easiliy. And with a industrial lasercutter at hand it’s easy to build products with plexi.

      Things I would have don differently would only be software. The Google / Hotword is realy sensitive, and Google is gimmick but not really usefull. So I wouldn’t install it in a next version. It’s only to showoff but we’re not using it on a regular day. Besides that, it slows the mirror and internet connection down a lot. (but this could be a fault in my software)

      Regards Robert

      posted in Show your Mirror
      Robert_KR
      Robert_K
    • RE: Bathroom mirror: "Frameless, thin, gesture and voice controlled"

      @mkloth

      If I recall correctly, I used this type of mirror:
      https://plexiglasstunter.nl/plexiglas-xt-plaat-spiegel

      posted in Show your Mirror
      Robert_KR
      Robert_K
    • RE: Bathroom mirror: "Frameless, thin, gesture and voice controlled"

      Thank you for the compliment.

      The 3 “devices” are DC-DC converters. They are adjustable. The screen powerbord suplies 19V DC.
      The Pi uses 5V, the LED’s uses 5V (but works better on 4V) and the audio bord uses 9V, however I didn’t use them. Both have a great power output (enought amps)

      The LED’s are WS2801 programable (waterproof) LED’s for which I wrote two python scipts.
      The Gesture module activates these python scripts.

      Regards Robert

      posted in Show your Mirror
      Robert_KR
      Robert_K
    • RE: Bathroom mirror: "Frameless, thin, gesture and voice controlled"

      @OviOne

      I used Plastidip. This is a rubberish spray which gave a nice seal/coating on all electric circuit boards. I left de RPI open but all others got sprayed with PlastiDip.

      The ventilation is right above the shower, so the mirror doesn’t get that damp actually. It’s nog fogging up like a normal mirror due to two things. Glass is colder than acrilic, and the LCD screen gives a bit of warmt.

      Regards Robert

      posted in Show your Mirror
      Robert_KR
      Robert_K
    • RE: Bathroom mirror: "Frameless, thin, gesture and voice controlled"

      And a couple of pictures. But the Youtube video shows best IMHO.

      20220523_163834.jpg

      20220523_163846.jpg

      20220523_163931.jpg

      Regards Robert

      posted in Show your Mirror
      Robert_KR
      Robert_K
    • RE: Bathroom mirror: "Frameless, thin, gesture and voice controlled"

      @thgmirror said in Bathroom mirror: "Frameless, thin, gesture and voice controlled":

      @Robert_K
      Nice mirror.
      One hint, in your video, you mentioned, that the front-door-cameras refresh every time they are shown resp. the page is displayed. I guess, you use SmartWebDisplay for it? Try to replace it with MMM-iFrame, should no longer flicker at the start of the page.

      Nice one, I’ll try it shortly.

      posted in Show your Mirror
      Robert_KR
      Robert_K
    • Bathroom mirror: "Frameless, thin, gesture and voice controlled"

      5 years ago I’ve build my first MagicMirror.

      Since then I’ve always wanted to build a bigger one in our bathroom, after building a couple more mirrors (as I’m a teacher, also together with students) I finally started this project.

      I’ve had a couple of requirements:

      • It must be thin! (Achieved, as it’s only 36mm thick.)
      • It has to be frameless
      • It has to have a good reflection
      • Gesture and voice controlled
      • Don’t want it to be cluttered with modules, yet show the wanted information

      I’ve started designing it in SolidWorks:
      Solid Works Design on Youtube

      Building the mirror:
      The frame is made out of black acrylic and uses the disassembled monitor as frame for it’s strength. Also the added electronics ground plate ad’s strenght:
      Bouw mirrir.jpg

      All the acrilic sheets are joint by different types of finger joints. However The reflection must be perfect (to reach the “wife approval factor” ;-) ). Therefore I’ve painted both the black acrylic as the backside of the mirror glass black. This created an perfect reflection!
      2021-05-10 15.35.05.jpg
      Mirror glass painted.jpg

      However the painted parts gave a new challenge in how to connect the mirror glass to the back acrylic frame. Another requirement was a frameless mirror so I had to use some kind of adhesive. I’ve made several test pieces with different glues and tape. Glues where aggressive and started to dissolve the paint or even the silver layer of the mirror glass. So thin adhesive tape did the trick:
      Ready for mirror glass.jpg

      All the electronics needed to be thin, so I would reach my first requirement. Here’s what the inside of the mirror looks like: From left to right: Monitor power board, Monitor data board. 3 pieces of DC-DC Buck converters with high amp ratings for Backlight, Powering the Pi and (later deleted) amplifier, Raspberry Pi48GB.
      2022-04-18 20.53.31.jpg

      Some of the pieces are 3D Printed (orange), however they are 3D printed in PTEG as PLA is biodegradable and won’t last long in a damp environment. All the electronics are made waterproof with PlastiDip spray.

      Programming the mirror gave a lot of challenges. I wanted to use gestures. I’ve tried and tested a lot with a big Flickboard. Even tested it behind acrilic and glass. However, I didn’t test it behind mirror glas, which seemed to not work due to the metallic coating. So I had to switch to a PAJ7620u2 Gesture sensor. And this would need a bigger hole in the mirror which I wouldn’t prefer.
      Cédric Bugsounet made some awesome modules, for example the Google Assistant module. However the past year he has changed the core of it, which would require (re)programming. As it’s a really complex module which needs a lot of external API’s this cost me some time. I’ve also have a Pi-Hole running at my home which blocks the Google Assistant requests, it took some time to discover this.

      Used modules:

      • MMM-Buienradar
      • MMM-Screencast
      • MMM-GoogleAssistant
      • MMM-GroveGestures
      • MMM-Remote-Controle
      • MMM-SmartWebDisplay
      • MMM-RPI-LED
      • MMM-pages
      • MMM-page-indicator
      • EXT-Screen
      • EXT-Pir

      2022-05-12 20.04.15.jpg

      And this is the final product:
      :fast-forward_button: Youtube: Magic Mirror: “Frameless, thin, gesture and voice controlled”:fast_reverse_button:

      posted in Show your Mirror
      Robert_KR
      Robert_K
    • RE: MMM-GroveGestures -> ShellExec "Python script"

      So after some thinkering with the hint I got, I’ve got the code working:

      
      "UP": {
      shellExec: "python /home/pi/ws2801_inschakelen.py",	  
      	     },
      "DOWN": {
      shellExec: "python /home/pi/ws2801_uitschakelen.py",
      			}
      

      Thanks for the help!

      posted in Troubleshooting
      Robert_KR
      Robert_K
    • MMM-GroveGestures -> ShellExec "Python script"

      Good day fellow builders,

      I’m building my second MagicMirror and it works for 95%.
      I’m using the MMM-GroveGesture module to switch between Pages (MMM-Pages and MMM-Page indicator).

      I’m having WS2801 LED’s connected. For these LED’s I wrote two Python scripts. When executing the python scripts in the RPI (4) terminal they work flawless.
      However I want to activate the scripts by the gestures. So with the up gesture, switching on the LED’s, and with the down gesture, switching them off.

      Reading the MMM-Grove Gesture module readme I can use three types of executions:

      • shellExec: “…”,
      • notificationExec: { … },
      • moduleExec: { … },

      Now I’m a bit lost. I tried to use the shellExec command, but it does not start my python script. If I change it to for example ‘sudo reboot now’ the execution of the gesture does work. Here is (a part) of my config file:

      {
       			module: "MMM-GroveGestures",
        			position: "top_right",
        			config: {
      					autoStart: true, //When Mirror starts, recognition will start.
      
      					gestureMapFromTo: { //When your sensor is installed with rotated direction, you can calibrate with this.
      										"Up": "RIGHT",
      										"Down": "LEFT",
      										"Left": "UP",
      										"Right": "DOWN",
      										"Forward": "FORWARD",
      										"Backward": "BACKWARD",
      										"Clockwise": "CLOCKWISE",
      										"anti-clockwise": "ANTICLOCKWISE",
      										"wave": "WAVE"
      										},
      
      					defaultNotification: "GESTURE",
      					pythonPath: "/usr/bin/python", // your python path
      
      					defaultCommandSet: "default",
      					commandSet: {
      								"default": {
      											"LEFT": {
      											notificationExec: {
      											notification: "PAGE_INCREMENT",
      											payload: null
      															  }
      													},
      											"RIGHT": {
      											notificationExec: {
      											notification: "PAGE_DECREMENT",
      											payload:null,
      															  }
      													},
      											"UP": {
      											shellExec: "sudo reboot now",	  
      												  },
      											"DOWN": {
      											shellExec: "python ws2801_uitschakelen.py",
      													}
      											},											  
             							},
      					}
      		},
      

      So I’m wondering, how to start my python script with this module? Anyone can point me in the right direction? Thanks in advance.

      Regards Robert

      posted in Troubleshooting
      Robert_KR
      Robert_K
    • RE: Small 'Picture frame' MagicMirror (first attempt)

      @E3V3A said in Small ‘Picture frame’ MagicMirror (first attempt):

      Wow, beautiful inside!
      How did you make the cables stay so nicely squared? With hot-glue?

      Yes, hot glue indeed.

      Regards Robert

      posted in Show your Mirror
      Robert_KR
      Robert_K
    • RE: Small 'Picture frame' MagicMirror (first attempt)

      @Mykle1 said in Small ‘Picture frame’ MagicMirror (first attempt):

      The acrylic top plate does look nice, giving it a professional, finished look. One suggestion, and this is just one old man’s opinion. Keep an eye on the temperature, now that you’ve closed the back of the frame.

      I’ve been thinking about that too. So I started with a closed plate, monitored the temperature and was thinking about making ventilator holes. Then again the temperature isn’t raising above 40degC. So I think it will be okay. I’ll keep it in mind with a hot summer day, thanks!

      Regards Robert

      posted in Show your Mirror
      Robert_KR
      Robert_K
    • MMM-PIR-Sensor (PaViRo) +HC SR501 - Setting parameters?

      So I made my first MagicMirror.

      I’ve included an HC SR501 pir-sensor. This sensor has two potential meters to alter the sensitivity and alter the amount of time the output stays high. Having set the sensibility at “medium”, and the output time at “short”. The short has been chosen to see if the sensor works and seems to give less failures. The off delay time will be set in the module config.

      I’ve tested the sensor at several ways. The RPI receives it’s signal and with gpio readall It shows to be at BCM 22, GPIO.3 Physical 15.

      Using the MMM-PIR-Sensor (PaViRo) module it “works”. Blocking the sensor and wait for the configured 30 seconds the screen goes off. Removing the sensor blockage, the screen goes on. I’ve altered the delay time from 30 seconds to 5 minutes (note time is in milliseconds) as below:

      		{
      		module: 'MMM-PIR-Sensor',
      		config: {
      			sensorPIN: 22,
      			powerSaving: true,
      			offDelay: 300000,             //in miliseconden
      			}
      		},
      

      the 5 minutes is because I want the mirror to go off when I’m not at home or a sleep 😉

      Having set this it looked like it worked, but after a day the mirror started to misbehave. Go off when I’m walking in front of it, or even worse not go on anymore when standing, waving, dancing in front of it… A gpio readall shows the PIR still works and a sudo reboot solves the problem for a couple of hours.

      So I was wondering how do you guys set all the parameters as we have three variables. PIR sensor sensitivity, the PIR sensor output time and the module offDelay. And what can cause this misbehavior?

      Thanks in advance,

      Regards Robert

      posted in Troubleshooting
      Robert_KR
      Robert_K
    • Small 'Picture frame' MagicMirror (first attempt)

      Scrolling down on Pintrest a Magic Mirror got my interest. After a small conversation at home we decided to first make a small one. When we like it, we could build a bigger one later on.
      So a old 15.6” laptop would provide me with a small ‘picture frame size’ screen. A Raspberry Pi (3) was found on a national trading website (www.marktplaats.nl). Only the electronic parts remained, so Ebay/BangGood/Aliexpress served me well.

      The RPI was in first so I could start programming right away. I have an electrical background, so programming wasn’t the easiest thing to do. Then again I must say there is a lot documented, which was a huge help. After a friend showed me to use PuTTY and WinSCP it all went a lot easier.

      I wanted to make a small and clean mirror with a frame made out of wood, yet thin. I made most of my furniture at home, so wood would fit in quite easy. Also I wanted to have no cables other than the power cable.

      Parts used:

      • Rasperry Pi3 – Model B
      • 230V -> 12V – 3A AC-DC converter
      • 12V -> 5V – 5A DC-DC converter
      • HC-SR510 PIR-Sensor
      • 15cm HDMI cable
      • HDMI – LCD Controller board
      • 3mm thick two-way mirror acrylic

      Build Process:
      0_1519585574625_IMG-20180207-WA0015.jpeg
      Programming

      0_1519585602467_2018-02-08 18.29.41.jpg
      Made a wooden frame. 120cm x 31cm x 5cm - beam is 2cm thick

      0_1519585661338_IMG-20180213-WA0010.jpeg
      It does shimmer like crazy

      0_1519585396668_2018-02-12 17.16.50.jpg
      I had to change the PIR sensor to make it fit in the 5cm high, 2cm thick frame. Soldered the sensor off and put some wires in between

      0_1519585683846_2018-02-16 21.16.11.jpg
      Finished product: “the mirror”. Quit small. Not quite sure if we let it ‘sit’ there or we will hang it.

      0_1519585712806_2018-02-16 21.16.00.jpg
      Finished product: “the magic”. Doesn’t shimmer that much, but that’s due to the mobile phone pic by night and low light.

      0_1519585733821_2018-02-16 21.11.48.jpg
      Finished product: “the brains”. Made an acrylic top plate. Doesn’t do anything more than looking nice.

      Best Regards,

      Robert

      posted in Show your Mirror 15 inch picture frame magicmirro thin
      Robert_KR
      Robert_K
    • Calendar Module - Altering event time format

      The Magic Mirror is a bit new for me. But I got all preferred parts working.

      The calendar now shows:
      “event tomorrow 08:00”

      I would like to see:
      event monday 08:00 till 10:00

      My code is as follows:

      		{
      			module: "calendar",
      			header: "Kalender Robert",
      			position: "top_left",
      			config: {
                                      maximumNumberOfDays: 7,
      				maximumEntries: 8,
      				displaySymbol: false,
      				dateFormat: 'ddd-Do-MMM'
      				fullDayEventDateFormat: 'ddd-Do-MMM',
      				urgency: 0,
      				getRelative: 0,
      				timeFormat: 'absolute',
      				calendars: [
      					{
      						symbol: "calendar-check-o ",
      						url: "https://calendar.google.com/calendar/ical/*PRIVATE CODE*/basic.ics"
      					}
      				]
      			}
      

      Can anyone point me in the right direction of changing the time format?

      Best Regards and thanks in advance,

      Robert

      posted in Troubleshooting
      Robert_KR
      Robert_K
    • 1 / 1