A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.
  • MMM-PIR-Senor shut off usb port(s)

    2
    0 Votes
    2 Posts
    2k Views
    J
    From the quick googling I’ve done, it may be possible to disable/enable raspberry pi usb power with commands: Disable echo 0x0 > /sys/devices/platform/bcm2708_usb/buspower Enable echo 0x1 > /sys/devices/platform/bcm2708_usb/buspower However I haven’t tested. I’d recommend writing a new module that handles this and listens for the USER_PRESENCE event notification that the Pir module triggers.
  • Displaying JSON results onto my MagicMirror

    4
    0 Votes
    4 Posts
    3k Views
    strawberry 3.141S
    @zichao92 feel free to ask again if you stuck on something
  • New Module Debugging

    5
    0 Votes
    5 Posts
    4k Views
    MichMichM
    Most of the time when I develop, I run server only mode and test most of the work in a default browser.
  • Tutorials or Overview for Module Dev?

    6
    0 Votes
    6 Posts
    5k Views
    nbrennN
    Thanks for the responses, guys. The E-Monitor API specification has a listing of the supported API methods (page 3), like authenticate, deauthenticate, getCurrentData and so on. Aside from Module.register, getStyles, start: function(), and getDom, are these methods listed in the API specification the ones that I will use as functions in my code? For example: Module.resgister ("MMM-Emonitor.js", { }, getStyles: function() { }, start: function() { }, getDom: function() { }, // And then the EMonitor methods below: authenticate: function() { } deauthenticate: function() { } getCurrentData: function() { } //... and so on down the list of the supported API methods
  • Remote Administration & Updates

    3
    1 Votes
    3 Posts
    2k Views
    andrewchumchalA
    @bhepler I’m currently using a VPN called NeoRouter. It dose not require any ports to be open for the clients only for the server. The plus is if you have or host your own server somewhere like i do with Digital Ocean which only cost me 5 US dollars a month. I can control all of my Pi’s that are not connected to my network. I hope this help.
  • Christmas Countdown

    4
    0 Votes
    4 Posts
    2k Views
    cowboysdudeC
    @KirAsh4 said in Christmas Countdown: Since he said smart nerds … here ya go http://bfy.tw/80wP Excellent :)
  • Get value from Input Box

    Moved Unsolved
    6
    0 Votes
    6 Posts
    4k Views
    J
    @shvncrvn Well then you might just do something like this (needs jquery) in your module, and catch the typing of the scanner.
  • Humidity for Current Weather Module

    9
    0 Votes
    9 Posts
    5k Views
    cowboysdudeC
    @amcolash Well we’re not comparing as much as just joking around between a couple of NY’ers LOL
  • Dinner Shuffler - Randomly select dinner for every day of the week

    2
    0 Votes
    2 Posts
    2k Views
    paviroP
    Why not upload it to GitHub or GitLab and then present it in the module showcase section? :)
  • 0 Votes
    5 Posts
    4k Views
    I
    @Squawk09 - it is not a requirement to log when receiving notifications, but it can be useful when debugging. To prove you are receiving the notification, change the line to Log.log('The current temperature is ' + this.temp); and look in the browsers console and you should see the temperature displayed when it is sent from the current weather module. Once you have confirmed that your module is receiving the notifications, you can then move on to displaying the temperature. The trick is to understand the sequence of events that occur and how they affect your module. In your case the functions in your modules are currently fired in the following order: start notificationReceived (ALL_MODULES_STARTED) getDom notificationReceived (DOM_OBJECTS_CREATED) notificationReceived (Temperature) The result is that your getDom function is called before the Temperature notification is received, so this.temp hasn’t been set yet. Since you cannot control the order in which the modules are loaded, or when the Temperature notification is sent by the current weather module, you need to tell your module to call the getDom function again, after the Temperature notification has been received. To do this, change your notificationReceived function to notificationReceived: function(notification, payload, sender) { if (notification === 'Temperature' && sender.name === 'currentweather') { var currentweather = payload; if ( currentweather && currentweather.hasOwnProperty('temperature') ) { this.temp = currentweather.temperature; this.updateDom(); Log.log('The current temperature is ' + this.temp); } } }, Check out the wiki for documentation, and of course keep asking questions here in these forums :)
  • My Setup (or: How crazy I am)

    6
    0 Votes
    6 Posts
    5k Views
    bheplerB
    I just wanted to chime in and say this post also helped me get started. Thank you for the general setup points. The last issue I had was that when the mirror was doing its thing and displaying content to the monitor, I couldn’t use a browser from my development machine to see the output. And SSH into the Pi wasn’t allowing me to start the mirror service. The browser and Pi just weren’t communicating. My solution was to run node serveronly. This allows me to hit the mirror’s ip address and for my browser to render the mirror content. A quick reboot of the mirror will pop it back into display mode.
  • Module will not render

    black screen
    2
    1 Votes
    2 Posts
    2k Views
    MichMichM
    If you wan’t to perform a updateDom a.s.a.p, you could use the DOM_OBJECTS_CREATED notification: notificationReceived: function(notification, payload, sender) { if (notification === 'DOM_OBJECTS_CREATED') { this.updateDom(); } } BUT … keep in mind, the updateDom() method will be called during the dom creation. So it doesn’t make any sense to do so …
  • Added getHeader function

    1
    3 Votes
    1 Posts
    1k Views
    MichMichM
    Per request, I’ve added a getHeader() method to the module api. This allows you to modify the header of the module from within the module itself. Note: that this method will only be called if the user has set a default header. If not no header will be shown and you won’t be able to update it. Note: if you module’s users run an old version of MagicMirror (a version without this change), this method will not be called. No errors should be thrown. So it’s safe to use … If you want to use the user’s set header in this method, just reference the this.data.header variable. Example code: getHeader: function() { return this.data.header + ' append string'; } More info: Documentation: https://github.com/MichMich/MagicMirror/tree/develop/modules#getheader Commit: https://github.com/MichMich/MagicMirror/commit/b2a7d3584bad2752d59d2325c581f5018e875306 Please let me know if this feature works for you …
  • Home Energy Usage on my Mirror?

    3
    0 Votes
    3 Posts
    3k Views
    yawnsY
    In addition to strawberry it looks like it is rather complicated getting access to the SiteSage API. Looking at various threads on the SiteSage support portal it requires approval from the sales guys and maybe a technical approval from your campus it department.
  • Unable to sendSocketNotification from node_helper to Module

    5
    0 Votes
    5 Posts
    4k Views
    J
    Wow that is not obvious or documented. However, that worked :) Thanks heaps!
  • Transit Departure module. How to get started?

    4
    0 Votes
    4 Posts
    3k Views
    A
    Hi, I’m currently working on a similar module for public transport in Oslo. What is the preferred way of development environment? It seems time consuming having to stop en start the magic mirror app each time. Any shortcuts?
  • setTimeout called only once in node_helper.js

    3
    0 Votes
    3 Posts
    2k Views
    strawberry 3.141S
    @bobbob601 a timeout is only fired once, what you want is an interval so replace setTimeout with setInterval
  • This topic is deleted!

    10
    0 Votes
    10 Posts
    172 Views
  • This might be a daft question, but...

    27
    0 Votes
    27 Posts
    19k Views
    strawberry 3.141S
    @Mitchfarino feel free to contact me via personal message
  • How to use Font Awesome?

    2
    1 Votes
    2 Posts
    3k Views
    P
    Hello, i want make a own module. Sadly i don’t know how add Font Awesome to project. getStyles: function() { return ["font-awesome.css"]; }, and what next? e.g. <i class="fa fa-cog"></i>