• 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
  1. Home
  2. cpcode
  3. Best
A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.
C
Offline
  • Profile
  • Following 0
  • Followers 0
  • Topics 6
  • Posts 19
  • Groups 0

Posts

Recent Best Controversial
  • First MM project - family dashboard

    Finally completed my first MM project, a touchscreen dashboard for our kitchen!

    First, big thanks to the community, to Michael Teeuw, and to Sam (sdetweil) for answering a bunch of questions.
    The project was loads of fun but challenging, especially as most modules are not set up for touchscreen interactivity. It runs on a RPI 5, and the monitor is a super cheap no-brand 21" touchscreen.

    Starting with the case: my best friend is a carpenter and he built and painted a wooden case.

    PXL_20250124_025052859.jpg

    The PI and power supplies are attached with velcro just in case. The numbered blocks hold the monitor in place, but can be easily removed to take the whole thing out. As you see there is a VESA stand mount already on the monitor, it’s what I used for the last few months to have the project next to my other screens in my office, on the stand that you see. This way, even after installing it, it can be removed from the kitchen wall and put back on the desk mount easily, which is awesome for some development/fixes. The frame uses a french cleat to hang on the wall.

    The finished frame in my kitchen:

    PXL_20250124_194355738.jpg

    On top of the frame is a wireless mini keyboard we can use to add text. I thought about implementing an onscreen keyboard but I already had that mini one and it seems to be working well for everyone.
    The worst part of this whole thing is that the monitor’s viewing angles are awful ESPECIALLY when pivoted. Basically, you have to look at it from right in front or from the left. Lesson learned…

    Now for the software side - I used MMM-pages and I modified MMM-page-indicator to show tabs across the bottom to switch pages. Here’s my home screen:

    Home.jpg

    It has the usual stuff, the tabs at the bottom, a WallberryTheme background that cycles through thousands of space/nature/animals images, and a module I wrote from scratch on the top left: my wife is a therapist and occasionally does sessions from home, in the basement. When clicked, this module lets her set when her next session is, and how long it is. It then counts down until session starts, then counts down the session time while playing white noise.

    Therapize.jpg

    The board is right by the stairs to the basement, so this lets everyone know not to go down there, and gives her even more privacy with the white noise.

    Next is the Calendar tab with all of our calendars:

    Calendar.jpg

    Using CalendarExt3Journal. I modified it by adding the bar at the top: it lets you move weeks, and the four boxes on the right can be clicked to filter the calendar to only that person.

    The Food tab is next, this actually replaces a dry-erase board that was on that wall (you can still see the tape…). It shows a list of meal ideas, and a list of everything in our basement deep freezer.

    Food.jpg

    The two lists are done using MMM-Notion. I modified this to be interactive: if you touch an item you can edit its text or delete the item. You can also add new items, and for the deep freezer list you can change the quantity, like when I decide to eat a whole frozen pizza by myself. This module was probably the most challenging: first, selecting which existing module/solution (or writing from scratch), then doing the actual work.
    This also has a WallberryTheme background showing a bunch of pictures of food.

    The Fun tab is very much a work in progress, it has the XKCD comic strip and Jeopardy questions:

    Fun.jpg

    I modified the MMM-Jeopardy module as it was not working, my version pulls data from a different source (Cluebase).

    The System module has some info and buttons to restart/power down/etc. (MMM-OnScreenMenu, MMM-SystemInfo).

    System.jpg

    Lastly, when you double-tap on the screen, or after 10 minutes of inactivity, the screensaver kicks in and turns the display into a photo frame:

    Screensaver.jpg

    This uses the ‘hidden pages’ feature of MMM-pages. After about 100 minutes, the monitor turns off altogether - I did this in the PI itself, not in MM, because I wanted it to turn off but turn back on when touched, like the standard PI screensaver feature. The only challenge there was figuring out which buried, hidden setting to change in order to extend the time from the default 10 minutes to over 1 hour.

    That’s it for now - the family likes it and is already requesting more: post-it notes, an ASL sign-of-the-day module, random animal facts, and the ability to stream our security camera to name a few.

    Thanks again everyone!

    posted in Show your Mirror
    C
    cpcode
    Jan 27, 2025, 10:05 PM
  • Community opinions on an interactive List module

    Building my first MM project, it’s a touch-screen for the family. One of my main needs is the ability to display interactive lists: meals for the week, items in our deep freezer, etc. I’d like the community to weigh in on whether you think it would be better for me to write my own module or use & modify an existing one.

    For context: I built my first module already, a fairly easy timer. I’m fine with JS and CSS, though this is my first real node.js and Linux experience.

    Requirements and nice-to-haves:

    • ability to add/edit/remove items directly on the screen
    • ability to optionally show a quantity for each item, and to easily change that. Worst-case I can do this within the item text, but it’d be nicer for the family to have a number they can touch and change next to each list item
    • multiple lists
    • ability to access the list from my phone while I’m out. This isn’t an absolute requirement but it would be nice.

    I looked at the existing 3rd party modules, and the biggest issues are lack of interactivity - since many of you have this as a mirror, - and unknown module support. Modules that display from AnyList, Todoist, Microsoft To Do, Google Keep/Shopping List/Sheets look ok but I’d have to implement the interactive bits, as well as any other changes (some of the above may not work anymore).
    Ideally I would love an integration with OurGroceries but I’m not sure I’m quite up to that task. I also looked at Mealie, which looks great, but the API is a bit daunting.

    If implementing my own module, I’d probably just keep the lists as json files in the module folder. I’m guessing this would be easier, but I don’t know how useful it would be to the community.

    This is an open-ended prompt, and all thoughts are much appreciated. Are there modules out there I could use or build on? What do you think are some pros and cons?
    Thanks!

    posted in Development
    C
    cpcode
    Nov 22, 2024, 8:43 PM
  • 1 / 1
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