Read the statement by Michael Teeuw here.
Hello-Lucy
-
@yawns said in Hello-Lucy:
System performance is awesome, not comparable to the pi at all.
Aftershow modules
the screen is crowded. Is this an error as it is not looking like in the beginning of your video? Or did you hide some modules before starting your video?Touch hardware is not yet implemented, is it? Would love to see this in action regarding latency and reliability :)
NO that’s just what happens because when you blanket show modules it shows all pages at once. That’s not a bug it’s just how it works :)
-
Great module have been using for some time while developing the mirror.
I apologise if you have covered this else where but I simply cannot find it, Is there a way to automatically show modules on MagicMirror start as appose to them being hidden and only shown when prompted.
Thanks
-
@NathanWilcox said in Hello-Lucy:
Is there a way to automatically show modules on MagicMirror start as appose to them being hidden and only shown when prompted.
If you’re not gun shy about modifying the files yourself, you can find this in the MMM-voice.js file and comment it out. You’ll find it at about line 277. I assume you know that every module you have loading will be displayed. :-)
if (notification === 'DOM_OBJECTS_CREATED') { MM.getModules().enumerate((module) => { module.hide(1000); }); }
-
That’s exactly what I was looking for. Yes I did realise it would show all.
I’m trying to demonstrate to the other half the different ways we can have the mirror and she wasn’t too enthusiastic with booting a “blank screen”
-
-
Will give Snips a try when I get my microphone array. Seems like the just released ther German automated speech recognition a few days ago
Seems pretty easy in general (I guess the hardest thing will be talking to the modules since snips uses python and here it’s java script while I am usually only using c++ lmao)
Edit: Just realised there is already a mqtt module for MagicMirror2 that should make it quite a bit easier
-
@mykle1: Very nice module! Works really good, and it’s easy to add more and more modules. unfortunately, with one of them, I have a problem: https://github.com/eouia/MMM-CalendarExt.
I found the wrapper part, but it doesn’t work. The other modules are still working. Do you have an idea?
getDom: function() { if (this.isInit) { R = new Render () R.drawViews( this.CurrentConfigs, this.getEventsToDraw() ) } var wrapper = null wrapper = document.createElement("div") wrapper.id = 'CALEXT_proxy' wrapper.className = 'proxy' return wrapper }, notificationReceived: function(notification, payload) { if (notification === 'HIDE_WORK') { this.hide(1000); } else if (notification === 'SHOW_WORK') { this.show(1000); } },
Thank you!
-
That looks right.
Have you made the other changes that you need to make, according to the readme? That is not the only modification you need to perform.
If you issue the “SHOW MODULES” command, does it show then?
Is there another " notificationReceived: function" within the MMM-CalendarExt.js file? -
@Mykle1 said in Hello-Lucy:
That looks right.
Have you made the other changes that you need to make, according to the readme? That is not the only modification you need to perform.
If you issue the “SHOW MODULES” command, does it show then?
Is there another " notificationReceived: function" within the MMM-CalendarExt.js file?Yes, all other Lucy / Voice modules are still working. I made all changes (accordingly your read me). Within the MMM-CalendarExt.js file are more than one “notificationReceived: function” functions:
notificationReceived: function(notification, payload, sender) { var sessionId = moment().valueOf() if (typeof payload !== 'undefined' && payload !== null) { if (typeof payload.sessionId !== 'undefined') { sessionId = payload.sessionId } } switch (notification) { case 'DOM_OBJECTS_CREATED': if(typeof sender == 'undefined') { this.loadCSS() this.initAfterLoading() } break case 'CHANGED_PROFILE': this.showing = 0 this.isInit = 0 this.initAfterLoading(payload.to) this.sendNotification('CALEXT_SAYS_PROFILE_CHANGED', payload) break case 'CALEXT_ADD_EVENT': if(typeof payload.event !== 'undefined') { this.addInstantEvent(payload.event, sender.name, sessionId) } break case 'CALEXT_REMOVE_EVENT': if(typeof payload.uid !== 'undefined') { this.removeInstantEvent(payload.uid, sender.name, sessionId) } break case 'CALEXT_TELL_SCHEDULE': if(typeof payload.filter !== 'undefined') { this.saySchedule(payload.filter, sender.name, sessionId) } break case 'CALEXT_MODIFY_CONFIG': this.modifyConfiguration(payload.config, sender.name, sessionId) } }, socketNotificationReceived: function(notification, payload) { switch (notification) { case 'CALENDAR_MODIFIED': this.sendNotification("CALEXT_SAYS_CALENDAR_MODIFIED") this.events = payload this.makeIndex() this.draw() break case 'READY_TO_ADD_CALENDAR': this.addCalendars() break; } },
Should I put your function after one of these?
-
I haven’t tested this because I don’t use CalendarExt. Couldn’t get it to work for me :-/
However, please remove the entry you made after the return wrapper and make the entry as I have shown below
notificationReceived: function(notification, payload, sender) { if (notification === 'HIDE_WORK') { this.hide(1000); } else if (notification === 'SHOW_WORK') { this.show(1000); } var sessionId = moment().valueOf() if (typeof payload !== 'undefined' && payload !== null) { if (typeof payload.sessionId !== 'undefined') { sessionId = payload.sessionId } }