Read the statement by Michael Teeuw here.
MMM-UkNationalRail - stops updating on mirror
-
@nwootton thought I’d check to see if you have any ideas what could be causing an issue I’ve been having with the UK train times… When its been running for a while I often notice that it seems to have stopped updating itself so will be frozen showing train time in the past. This happens every couple of days, no specific time it can happen mid day or at night (when there are no trains scheduled so nothing to see ‘No departure info found’). It has kind of always done this, although it used to go the best part of a week before requiring a restart.
When it occurs I can confirm that all the other modules on my mirror are still happily updating. Also if I fire up the mirror webpage on my laptop it has the correct up to date info.
No errors logged in PM2 error & as far as teh pm2 out log looks everything still working ok.
I restart mm & it fires up as normal. Any thoughts? Any further steps I should take to troubleshoot?
I’m fairly certain its gotten worse since updating to MM 2.1.3, seems like I’m rebooting every other day now.
-
@randomnoise Apologies, I’ve only just seen this message. I’ll try to look tomorrow and see if I can replicate the issue, but I suspect it is due to the data coming in from the Transport API. I’ve already got bugs from months ago still not addressed by them to do with bus times failing to be properly updated.
-
No worries, let me know if I can do anything to give you any further info to assist with troubleshooting. Cheers.
-
@randomnoise Can you send me your config for the module? Don’t need the API keys, but the rest of it would allow me to see if it’s something specific to the data provider.
Thanks
-
@nwootton Mainly going with defaults, but here is what I’m using.
{ module: 'MMM-UKNationalRail', position: 'top_left', config: { stationCode: '[My 3 letter station code]', // CRS code for station app_id: '[My ID]', // TransportAPI App ID app_key: '[My api key]', // TransportAPI App Key maxResults: 4, //Optional - Maximum results to display. showOrigin: false //Optional - Show the origin of the train in the table } }, -
@randomnoise Can you tell me the station code? I can’t try to replicate or even figure out if it’s the provider without it.
-
OK, I’ve had my test environment running for a couple of days running both my station and your config with the provided station ID.

So far I’ve not seen the module fail to update, although the mirror itself has frozen on 1 occasion. I’ll keep trying it, but it’s quite difficult to debug without actually figuring out how to replicate it.
-
@nwootton Hmm, that’s weird. I guess it could be an issue specific to my mirror. What os do you use? Have you also upgraded to 2.1.3 of mm as well?
I might try a rebuild & see if that improves it.
Is there any way to add in debug logging to text file? Perhaps when it updates the data from transport api & refreshes the screen.
What I found strange was that even while it’s stopped updating on my actual mirror, it will work fine in a browser on another machine on my network (does this actually run another version of node helper etc or is the mirror still fetching the data?)
-
I used to run the mirror 2.1.2 on a RPi3, but that PI got repurposed for another project and is unlikely to make it back. For dev work I run it in either server or dev mode on a Mac. I’m running v2.1.3 on Node v8.7.0/npm v5.5.1 on the dev machine.
As it the mirror is a client-server architecture, it makes sense that the server part would be still receiving info from the Transport API. This seems to point to either Electron (UI) or Sockets.io failure rather than data ingest.
What version of Node & npm is running on your mirror? Are you running it as an all-in-one or are you running it in a different way (server only, docker)?
There is a simple “debug” : true setting you can add to the module config, but that mostly just gives the params & url that would be used by the module to contact the TransportAPI. The only other way is to launch the mirror using:
npm start devwhich will start Electron and also display a debug console on the right hand side of the screen.
-
@nwootton not sure what version of node I’m running atm (I’m away for work)… I’ll try the npm start dev when I’m back & see if anything stands out.
I run the mirror standalone so, yes I guess it could be an issue with something in the pi browser, but it is a fairly standard mm build installed following the instructions from mm git page.
I’ll report back once I’ve tried the dev start.
-
BTW does the npm dev start give any detail beyond what is logged to the mm_error_log file seen when running using pm2?
-
So still running without issues.

Got all the expected “No departure info” errors in the console for the overnight period where trains don’t actually run.

Have you updated the module itself?
-
@randomnoise The mm_error_log file is not something I’ve come across, I assume it is the failure report generated by PM2 that lists all the times it has had to restart a service.
npm start dev displays the mirror, but also has a full JS console output running down the side of the screen. The “No departure info” message in my previous post is an example of that output.
-
Still running without issue this morning, although I’m now getting emails about hitting my daily API usage allowance from the Transport API.
The only errors I’m getting are ones that the module generates when it doesn’t get the expected train info from Transport API - generally around 02:00 when no passenger trains are actually running.
Sorry to say that without being able to replicate the issue, there is very little more I can do.
-
@nwootton no worries, I’ll be home again on Sun so will try the dev console & see if anything stands out. As you say it may be electron related so I might just do a full pi + mm rebuild / reinstall.
Thanks for having a look in to it.
-
@nwootton after running since Sunday with no errors & console open, today train times finally crashed around 10:30am… then the entire mirror seems to have fallen over tonight just before I came home… the clock had stopped, all modules not updating and even the dev console was gone!
Hard reset of mirror, but of course nothing to see in pm2 logs as I didn’t start it with pm2…
unless the dev console also logs to a file somewhere then this exercise was in vain.
I think I’ll just try a full reinstall at the weekend & see if it behaves itself. I wish I’d taken a note of all the other tweaks I added to get the pi running as I liked.

-
@nwootton, Well after a full rebuild I still have never been able to get to the bottom of why it locks up. Still does it on occasion (Although it seems to be less frequent these days).
I have a new weird bug with the train times for you now though! Recently (may have been since the clocks changed, although I only noticed it the other day as I was checking time on a train I was going to catch) I seem to be showing times an hour behind! It’s bizarre as I don’t think there are any settings anywhere in the mirror for adjusting times other than the PI config settings (mine is showing correct time & UTC if I run a ‘date’ command in putty).
Any thoughts on what this could be?

-
I’ve expanded to show 8 results here as well…

-
Hmm, weirdly York station works ok.
Maybe something is up with the api data for STN.

-
It’s definitely not just that those trains being late in my earlier example either-

Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login