MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    MMM-PublicTransportHafas

    Scheduled Pinned Locked Moved Bug Hunt
    17 Posts 3 Posters 452 Views 3 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      Mati_93 @KristjanESPERANTO
      last edited by Mati_93

      @KristjanESPERANTO
      Your module does not support German keyboard special signs. How can I find 18 März Straße and besides is not working for Gotha Hbf.
      What’s going on with world transport APIs lol
      Module is working on main station but it’s very hard to find stationId from the German streets like 18 März Straße Gotha. Any ideas? Node query is limited to bigger stations.

      KristjanESPERANTOK 1 Reply Last reply Reply Quote 0
      • KristjanESPERANTOK
        KristjanESPERANTO Module Developer @Mati_93
        last edited by

        @Mati_93

        Your module does not support German keyboard special signs.

        What makes you say that? It works for me.

        How can I find 18 März Straße and besides is not working for Gotha Hbf.

        Did you check the vmt profile?

        This seems to be what you are searching for:

            {
              module: "MMM-PublicTransportHafas",
              position: "bottom_left",
              config: {
                hafasProfile: "vmt",
                stationID: "167050",
                stationName: "Gotha, 18.-März-Straße"
              }
            },
        
        M 1 Reply Last reply Reply Quote 0
        • M
          Mati_93 @KristjanESPERANTO
          last edited by Mati_93

          @KristjanESPERANTO Have you found in node seeker?
          Ohhh now Hafas module again : D
          But your module is working for Gotha Hauptbahnhof. Can we speak German or we require English only on this forum?

          M 1 Reply Last reply Reply Quote 0
          • M
            Mati_93 @Mati_93
            last edited by Mati_93

            Error code ops_blocked when searching in MMM-PublicTransportHub module using node --run query

            KristjanESPERANTOK 1 Reply Last reply Reply Quote 0
            • KristjanESPERANTOK
              KristjanESPERANTO Module Developer @Mati_93
              last edited by

              @Mati_93 Have you managed to figure it out yet? :) If not, please describe again what you’re trying to do and what’s not working. And most importantly, which module you’re using.

              M 1 Reply Last reply Reply Quote 0
              • M
                Mati_93 @KristjanESPERANTO
                last edited by Mati_93

                @KristjanESPERANTO well, on the HAFAS (older module) I see only 22 position when I am searching using node. Why? How to change pagination.
                Your new Module HUB is working for Gotha Hauptbahnhof… perfectly. I want to use both modules if possible.
                And still on theolder module HAFAS is update socket issue 1
                On the searching mode inside node query can not use German letters. How to configure node CLI?20260904_14h51m33s_grim.png

                On your module Hub node console looks exactly:
                20260904_15h19m58s_grim.png

                M 1 Reply Last reply Reply Quote 0
                • M
                  Mati_93 @Mati_93
                  last edited by Mati_93

                  So ID searching tool from node query still won’t work with 18 März Straße but i found stationId via gemini :) (i dont’ like it). In my code i am using two TransportHub modules (TransportHafas is in code but i am not using in my carousel because is not working) . 18 Marz Strasse station does not return an error but says that there is no departures. Ansbach station works perfecly.

                  let config = {
                      address: "localhost", // Lub "127.0.0.1"
                      port: 8080,
                      basePath: "/",
                      ipWhitelist: ["127.0.0.1", "::1"], // Zezwala na dostęp tylko z tego samego urządzenia
                  
                      useHttps: false,
                      httpsPrivateKey: "",
                      httpsCertificate: "",
                  
                      language: "pl",
                      locale: "pl",
                      logLevel: ["INFO", "LOG", "WARN", "ERROR"],
                      timeFormat: 24,
                      units: "metric",
                  
                      modules: [
                     	{
                   		module: "MMM-KeyBindings",
                    		config: {
                     			evdev: { enabled: false },
                  			enableKeyboard: true,			
                    		}
                  	},
                  	{
                        		module: "MMM-Carousel",
                  		position: "bottom_bar",
                        		config: {
                          		transitionInterval: 20000,
                          		ignoreModules: ["clock", "alert","Station_Gotha"],
                          		mode: "slides",
                          		showPageIndicators: true,
                          		showPageControls: true,
                          		slides: {
                            			main: ["weather"],
                            			"Slide 2": ["MMM-OpenWeatherForecast", "newsfeed"],
                            			"Slide 3": ["calendar", "compliments"],
                  				"Slide 4": ["MMM-PublicTransportHub"],
                  				"Slide 5": ["MMM-EasyPix"] 
                          		},
                          		keyBindings: {
                            			enabled: true,
                            				map: {
                              					NextSlide: "ArrowRight",
                             		 			PrevSlide: "ArrowLeft",
                              					Pause: "ArrowDown",
                              					Slide0: "Home"
                            				},
                           		 mode: "DEFAULT"
                  			}
                  		}
                          },
                  	{
                        		module: "MMM-EasyPix",
                        		position: "top_right",
                        		config: {
                  			picName: "Alona.jpg",  // Enter the picture file name. You can even use a direct internet URL to an image.
                          		maxWidth: "70%"       // Size picture precisely. Retains aspect ratio.
                        		}
                      	},    
                  	{
                              module: "alert"
                          },
                          {
                              module: "updatenotification",
                              header: "US Holidays",
                  	    position: "top_bar",
                          },
                          {
                              module: "calendar",
                              header: "Holidays in Thüringen",
                              position: "top_left",
                              config: {
                                  calendars: [
                                      {
                                          fetchInterval: 7 * 24 * 60 * 60 * 1000,
                                          symbol: "calendar-check",
                                          url: "https://www.officeholidays.com/ics-all/germany/thuringia"
                                      }
                                  ]
                              }
                          },
                          {
                  		module: "compliments",
                  		position: "lower_third",
                  	},
                  	{
                              module: "weather",
                              position: "top_right",
                  	    classes : "weather-forecast",
                              header: "Weather Forecast",
                              config: {
                                  weatherProvider: "openmeteo",
                                  type: "forecast",
                                  lat: 50.9494849,
                                  lon: 10.7014435
                              }
                  	},
                          {
                              module: "weather",
                              position: "top_right",
                              classes : "weather-current",
                  	    header: "Weather Current",
                              config: {
                                  weatherProvider: "openmeteo",
                                  type: "current",
                                  lat: 50.9494849,
                                  lon: 10.7014435
                              }
                          },
                  	{
                     		module: "MMM-OpenWeatherForecast",
                      		position: "top_right",
                      		header: "Forecast",
                      		config: {
                        			apikey: "23cf27375cfb96bd9c4bcfe389c729c6", //only string here
                        			latitude: 50.9494849,            //number works here
                        			longitude: "10.7014435",          //so does a string
                  			units: "metric",                 // dopasowane do reszty
                                  	updateInterval: 600000,          // co 10 min
                                  	animationSpeed: 1000,
                                  	lang: "pl",
                  			label_hourlyTimeFormat: "H:mm",
                  			label_sunriseTimeFormat: "H:mm",
                  			label_days: ["Ndz", "Pon", "Wt", " Śr", "Czw", "Pt", "Sob"],
                                  	showCurrentConditions: true,
                                  	showHourlyForecast: true,
                                  	showDailyForecast: true,
                                  	hourlyForecastInterval: 3,
                                  	dailyForecastDays: 7
                      		}
                    	},
                          {
                              module: "newsfeed",
                              position: "bottom_bar",
                              config: {
                                  feeds: [
                                      {
                                          title: "New York Times",
                                          url: "https://rss.nytimes.com/services/xml/rss/nyt/HomePage.xml"
                                      }
                                  ],
                                  showSourceTitle: true,
                                  showPublishDate: true,
                                  broadcastNewsFeeds: true,
                                  broadcastNewsUpdates: true
                              }
                          },
                      	{
                  		module: 'clock',
                        		position: 'bottom_bar'
                      	},
                          {
                  		module: "MMM-PublicTransportHafas",
                              	position: "bottom_left",
                              	config: {
                  			hafasProfile: "vmt",			
                  			carouselId: "My_Station",                  	
                  			stationID: "167050",
                                  	stationName: "Gotha, 18.-März-Straße",
                                  	direction: "",
                                  	excludedTransportationTypes: [],
                                  	ignoredLines: [],
                                  	timeToStation: 10,
                                  	displayLastUpdate: true,
                                  	maxUnreachableDepartures: 0,
                                  	maxReachableDepartures: 7,
                                  	showColoredLineSymbols: true,
                                  	customLineStyles: "",
                                  	showOnlyLineNumbers: false,
                                  	showTableHeadersAsSymbols: true,
                                  	useColorForRealtimeInfo: true
                  		}
                          },
                  	{
                      		module: "MMM-PublicTransportHub",
                      		position: "top_left",
                      		header: "Gotha, 18.-März-Straße",
                      		config: {
                  			carouselId: "Station_Gotha",        		
                  			provider: "vmt",
                  			stationId: "de-DELFI_de:16067:167050",
                  			updatesEvery: 60,
                  			maxDepartures: 12,
                  			timeToStation: 4,
                  			maxUnreachableDepartures: 2,
                  			excludeCanceled: false,
                  			lineFilter: [],
                  			directionFilter: [],
                  			productFilter: ["tram", "bus"],
                  			showDelay: false,
                  			showRealtimeIndicator: true,
                  			showRemarks: true,
                  			columnOrder: ["time", "line", "direction", "platform"],
                  			lineStylePreset: "none",
                  			replaceInLineNames: { "Bus ": "" },
                  			requestTimeoutMs: 12000,
                  			fetchRetries: 1,
                  			contact: "mateusz.kujawa93@gmail.com"
                      			}
                  	},
                  	{
                      		module: "MMM-PublicTransportHub",
                      		position: "bottom_right",
                      		header: "Ansbach",
                      		config: {
                  			carouselId: "Station_Ansbach",
                          		provider: "transitous",
                  			stationId: "de-DELFI_de:09561:11000:53:4",
                  			updatesEvery: 60,
                  			maxDepartures: 12,
                  			timeToStation: 4,
                  			maxUnreachableDepartures: 2,
                  			excludeCanceled: false,
                  			lineFilter: [],
                  			directionFilter: [],
                  			productFilter: ["tram", "bus"],
                  			showDelay: false,
                  			showRealtimeIndicator: true,
                  			showRemarks: true,
                  			columnOrder: ["time", "line", "direction", "platform"],
                  			lineStylePreset: "none",
                  			replaceInLineNames: { "Bus ": "" },
                  			requestTimeoutMs: 12000,
                  			fetchRetries: 1,
                  			contact: "mateusz.kujawa93@gmail.com"
                      			}
                  	},
                  	
                          
                      ]
                  };
                  
                  /***** DO NOT EDIT THE LINE BELOW *****/
                  if (typeof module !== "undefined") { module.exports = config; }
                  
                  please help me to figure it out together.
                  
                  KristjanESPERANTOK 1 Reply Last reply Reply Quote 0
                  • KristjanESPERANTOK
                    KristjanESPERANTO Module Developer @Mati_93
                    last edited by

                    @Mati_93 Wow, that a bunch of separate issues. These three minimal configurations work for me with the Gotha stop. Please test them one at a time first. I had to play with timeInFutureMinutes a bit to get departures.

                    MMM-PublicTransportHub with HAFAS

                    {
                      module: "MMM-PublicTransportHub",
                      position: "top_left",
                      header: "Gotha, 18.-März-Straße",
                      config: {
                        provider: "hafas",
                        hafasProfile: "vmt",
                        stationId: "167050",
                        timeInFutureMinutes: 720
                      }
                    },
                    

                    Older MMM-PublicTransportHafas

                    {
                      module: "MMM-PublicTransportHafas",
                      position: "top_right",
                      header: "Gotha, 18.-März-Straße",
                      config: {
                        hafasProfile: "vmt",
                        stationID: "167050",
                        timeInFuture: 720
                      }
                    },
                    

                    MMM-PublicTransportHub with Transitous

                    {
                      module: "MMM-PublicTransportHub",
                      position: "top_center",
                      header: "Gotha, 18.-März-Straße",
                      config: {
                        provider: "transitous",
                        stationId: "de-DELFI_de:16067:167050::16705000",
                        contact: "@Mati_93",
                        timeInFutureMinutes: 720
                      }
                    },
                    

                    Please note that vmt is a HAFAS profile, not a provider. Therefore the Hub needs provider: "hafas" together with hafasProfile: "vmt".

                    The garbled German characters look like a UTF-8/locale problem on Raspberry Pi OS. Please check:

                    locale
                    locale charmap
                    

                    The result should contain UTF-8. You can configure this with:

                    sudo raspi-config
                    

                    I think you have to select Localization Options → Locale and enable de_DE.UTF-8 UTF-8. Log in again or reboot afterwards.

                    As a quick test, you can search without special characters:

                    18 Maerz Strasse Gotha
                    

                    OPS_BLOCKED usually comes from a blocked DB endpoint. For Gotha, please use the regional vmt profile instead of a DB profile.

                    M 1 Reply Last reply Reply Quote 0
                    • M
                      Mati_93 @KristjanESPERANTO
                      last edited by Mati_93

                      @KristjanESPERANTO I can use German signs everywhere on terminal but not in node.js.
                      After I type node – run query i am no longer permitted to use äüß umlauts.
                      Second problem : HAFAS is over. All the time I have socket issue.

                      20260905_15h50m27s_grim.png
                      As you seen in my project i am using carouselId variable because on every slide I have different station. On HAFAS this was possible but on your new module Hub this is impossible(or maybe i don’t know the new way) . New modules understand only module name instead of carouselId. Please take a deeper look on my slide config.

                      
                      let config = {
                          address: "localhost", // Lub "127.0.0.1"
                          port: 8080,
                          basePath: "/",
                          ipWhitelist: ["127.0.0.1", "::1"], // Zezwala na dostęp tylko z tego samego urządzenia
                      
                          useHttps: false,
                          httpsPrivateKey: "",
                          httpsCertificate: "",
                      
                          language: "pl",
                          locale: "pl",
                          logLevel: ["INFO", "LOG", "WARN", "ERROR"],
                          timeFormat: 24,
                          units: "metric",
                      
                          modules: [
                         	{
                       		module: "MMM-KeyBindings",
                        		config: {
                         			evdev: { enabled: false },
                      			enableKeyboard: true,			
                        		}
                      	},
                      	{
                            		module: "MMM-Carousel",
                      		position: "bottom_bar",
                            		config: {
                              		transitionInterval: 20000,
                              		ignoreModules: ["clock", "alert","Station_Gotha_18_März"],
                              		mode: "slides",
                              		showPageIndicators: true,
                              		showPageControls: true,
                              		slides: {
                                			main: ["weather"],
                                			"Slide 2": ["MMM-OpenWeatherForecast", "newsfeed"],
                                			"Slide 3": ["calendar", "compliments","MMM-PublicTransportHub"],
                      				"Slide 4": ["MMM-PublicTransportHub"],
                      				"Slide 5": ["MMM-EasyPix"] 
                              		},
                              		keyBindings: {
                                			enabled: true,
                                				map: {
                                  					NextSlide: "ArrowRight",
                                 		 			PrevSlide: "ArrowLeft",
                                  					Pause: "ArrowDown",
                                  					Slide0: "Home"
                                				},
                               		 mode: "DEFAULT"
                      			}
                      		}
                              },
                      	{
                            		module: "MMM-EasyPix",
                            		position: "top_right",
                            		config: {
                      			picName: "Alona.jpg",  // Enter the picture file name. You can even use a direct internet URL to an image.
                              		maxWidth: "70%"       // Size picture precisely. Retains aspect ratio.
                            		}
                          	},    
                      	{
                                  module: "alert"
                              },
                              {
                                  module: "updatenotification",
                                  header: "US Holidays",
                      	    position: "top_bar",
                              },
                              {
                                  module: "calendar",
                                  header: "Holidays in Thüringen",
                                  position: "top_left",
                                  config: {
                                      calendars: [
                                          {
                                              fetchInterval: 7 * 24 * 60 * 60 * 1000,
                                              symbol: "calendar-check",
                                              url: "https://www.officeholidays.com/ics-all/germany/thuringia"
                                          }
                                      ]
                                  }
                              },
                              {
                      		module: "compliments",
                      		position: "lower_third",
                      	},
                      	{
                                  module: "weather",
                                  position: "top_right",
                      	    classes : "weather-forecast",
                                  header: "Weather Forecast",
                                  config: {
                                      weatherProvider: "openmeteo",
                                      type: "forecast",
                                      lat: 50.9494849,
                                      lon: 10.7014435
                                  }
                      	},
                              {
                                  module: "weather",
                                  position: "top_right",
                                  classes : "weather-current",
                      	    header: "Weather Current",
                                  config: {
                                      weatherProvider: "openmeteo",
                                      type: "current",
                                      lat: 50.9494849,
                                      lon: 10.7014435
                                  }
                              },
                      	{
                         		module: "MMM-OpenWeatherForecast",
                          		position: "top_right",
                          		header: "Forecast",
                          		config: {
                            			apikey: "23cf27375cfb96bd9c4bcfe389c729c6", //only string here
                            			latitude: 50.9494849,            //number works here
                            			longitude: "10.7014435",          //so does a string
                      			units: "metric",                 // dopasowane do reszty
                                      	updateInterval: 600000,          // co 10 min
                                      	animationSpeed: 1000,
                                      	lang: "pl",
                      			label_hourlyTimeFormat: "H:mm",
                      			label_sunriseTimeFormat: "H:mm",
                      			label_days: ["Ndz", "Pon", "Wt", " Śr", "Czw", "Pt", "Sob"],
                                      	showCurrentConditions: true,
                                      	showHourlyForecast: true,
                                      	showDailyForecast: true,
                                      	hourlyForecastInterval: 3,
                                      	dailyForecastDays: 7
                          		}
                        	},
                              {
                                  module: "newsfeed",
                                  position: "bottom_bar",
                                  config: {
                                      feeds: [
                                          {
                                              title: "New York Times",
                                              url: "https://rss.nytimes.com/services/xml/rss/nyt/HomePage.xml"
                                          }
                                      ],
                                      showSourceTitle: true,
                                      showPublishDate: true,
                                      broadcastNewsFeeds: true,
                                      broadcastNewsUpdates: true
                                  }
                              },
                          	{
                      		module: 'clock',
                            		position: 'bottom_bar'
                          	},
                              {
                      		module: "MMM-PublicTransportHafas",
                                  	position: "bottom_left",
                                  	config: {
                      			carouselId: "My_Station",
                      			hafasProfile: "vmt",                  	
                      			stationID: "167050",
                      			timeInFuture: 720,
                                      	stationName: "Gotha, Hauptbahnhof",
                                      	direction: "",
                                      	excludedTransportationTypes: [],
                                      	ignoredLines: [],
                                      	timeToStation: 10,
                                      	displayLastUpdate: true,
                                      	maxUnreachableDepartures: 0,
                                      	maxReachableDepartures: 7,
                                      	showColoredLineSymbols: true,
                                      	customLineStyles: "",
                                      	showOnlyLineNumbers: false,
                                      	showTableHeadersAsSymbols: true,
                                      	useColorForRealtimeInfo: true
                      		}
                              },
                      	{
                          		module: "MMM-PublicTransportHub",
                          		position: "bottom_left",
                          		header: "Gotha, 18.-März-Straße",
                          		config: {
                      			carouselId: "Station_Gotha_18_März",        		
                      			provider: "transitous",
                      			hafasProfile: "vmt",
                      			stationId: "de-DELFI_de:16067:167050::16705000",
                      			timeInFutureMinutes: 720,
                      			updatesEvery: 60,
                      			maxDepartures: 12,
                      			timeToStation: 4,
                      			maxUnreachableDepartures: 2,
                      			excludeCanceled: false,
                      			lineFilter: [],
                      			directionFilter: [],
                      			productFilter: ["tram", "bus"],
                      			showDelay: false,
                      			showRealtimeIndicator: true,
                      			showRemarks: true,
                      			columnOrder: ["time", "line", "direction", "platform"],
                      			lineStylePreset: "none",
                      			replaceInLineNames: { "Bus ": "" },
                      			requestTimeoutMs: 12000,
                      			fetchRetries: 1,
                      			contact: "mateusz.kujawa93@gmail.com"
                          			}
                      	},
                      	{
                          		module: "MMM-PublicTransportHub",
                          		position: "bottom_right",
                          		header: "Ansbach",
                          		config: {
                      			carouselId: "Station_Ansbach",
                              		provider: "transitous",
                      			stationId: "de-DELFI_de:09561:11000:53:4",
                      			updatesEvery: 60,
                      			maxDepartures: 12,
                      			timeToStation: 4,
                      			maxUnreachableDepartures: 2,
                      			excludeCanceled: false,
                      			lineFilter: [],
                      			directionFilter: [],
                      			productFilter: ["tram", "bus"],
                      			showDelay: false,
                      			showRealtimeIndicator: true,
                      			showRemarks: true,
                      			columnOrder: ["time", "line", "direction", "platform"],
                      			lineStylePreset: "none",
                      			replaceInLineNames: { "Bus ": "" },
                      			requestTimeoutMs: 12000,
                      			fetchRetries: 1,
                      			contact: "mateusz.kujawa93@gmail.com"
                          			}
                      	},
                      	{
                          		module: "MMM-PublicTransportHub",
                          		position: "bottom_right",
                          		header: "Gotha, Hauptbahnhof",
                          		config: {
                      			carouselId: "Station_Gotha",        		
                      			provider: "transitous",
                      			hafasProfile: "vmt",
                      			stationId: "de-DELFI_de:16067:8010136",
                      			timeInFutureMinutes: 720,
                      			updatesEvery: 60,
                      			maxDepartures: 12,
                      			timeToStation: 4,
                      			maxUnreachableDepartures: 2,
                      			excludeCanceled: false,
                      			lineFilter: [],
                      			directionFilter: [],
                      			productFilter: ["tram", "bus"],
                      			showDelay: false,
                      			showRealtimeIndicator: true,
                      			showRemarks: true,
                      			columnOrder: ["time", "line", "direction", "platform"],
                      			lineStylePreset: "none",
                      			replaceInLineNames: { "Bus ": "" },
                      			requestTimeoutMs: 12000,
                      			fetchRetries: 1,
                      			contact: "mateusz.kujawa93@gmail.com"
                          			}
                      	},
                              
                          ]
                      };
                      
                      /***** DO NOT EDIT THE LINE BELOW *****/
                      if (typeof module !== "undefined") { module.exports = config; }
                      

                      For Slide 3 and 4 I have no solution. Your module Hub understand carouselId only when i put it in ignoreModules list!
                      20260905_17h09m54s_grim.png

                      EDIT! I’ve found a solution : O to the carouselId!

                      {
                            		module: "MMM-Carousel",
                      		position: "bottom_bar",
                            		config: {
                              		transitionInterval: 20000,
                              		ignoreModules: ["clock", "alert","Station_Gotha_18_März"],
                              		mode: "slides",
                              		showPageIndicators: true,
                              		showPageControls: true,
                              		slides: {
                                			main: ["weather"],
                                			"Slide 2": ["MMM-OpenWeatherForecast", "newsfeed"],
                                			"Slide 3": ["calendar", "compliments",{name: "MMM-PublicTransportHub", carouselId: "Station_Ansbach" }],
                      				"Slide 4": [{ name: "MMM-PublicTransportHub", carouselId: "Station_Gotha" }],
                      				"Slide 5": ["MMM-EasyPix"] 
                              		},
                              		keyBindings: {
                                			enabled: true,
                                				map: {
                                  					NextSlide: "ArrowRight",
                                 		 			PrevSlide: "ArrowLeft",
                                  					Pause: "ArrowDown",
                                  					Slide0: "Home"
                                				},
                               		 mode: "DEFAULT"
                      			}
                      		}
                              },
                      

                      dictionaries were the key. Sorry for my bad level of programming.
                      Still bad that hafas module is over. I liked design of hafas module much more.
                      Now everyhing is working on HUB module just like before it has been running on HAFASmodule (clock and main station is permanent on the screen on every slide and other modules and stations shows only with dedicated ones slides.) I like this combination. Still have not found a solution to UTF encoding in node.js query searching tool.

                      KristjanESPERANTOK 1 Reply Last reply Reply Quote 0
                      • KristjanESPERANTOK
                        KristjanESPERANTO Module Developer @Mati_93
                        last edited by

                        @Mati_93 Great, I’m glad you got the carousel setup working!

                        I don’t have a hot tip for the umlaut problem at the moment since I can’t reproduce it on my system.

                        You mentioned that you liked the design of the old HAFAS module more. What exactly do you prefer about it, and what is missing or different for you in MMM-PublicTransportHub? Maybe we can improve that :)

                        M 1 Reply Last reply Reply Quote 0
                        • M
                          Mati_93 @KristjanESPERANTO
                          last edited by Mati_93

                          @KristjanESPERANTO haha Kristjan, there in hafas was displayed important delay for each position if occured. To be honest sweet train and clock icons on the layout schedule were very nice for eyes. Im pretty sure station ID had been easier to find on HAFAS module too (more friendly IDs with less display problems)

                          KristjanESPERANTOK 1 Reply Last reply Reply Quote 0
                          • KristjanESPERANTOK
                            KristjanESPERANTO Module Developer @Mati_93
                            last edited by

                            There, HAFAS displayed important delays for each departure.

                            The module supports this, but Transitous apparently does not receive real-time data for your station. The open-source community is doing impressive work trying to collect real-time data wherever possible, but this is unfortunately difficult in some regions.

                            HAFAS interfaces were never really intended for the kind of free use we make of them, and access is becoming more and more restricted. You could contact your local transport association and ask why they do not provide real-time data through an open API, preferably GTFS-RT. This would allow projects like Transitous, and therefore MMM-PublicTransportHub, to use it.

                            The train and clock icons in the timetable looked very nice.

                            That was already on my to-do list. I have now added a similar header to MMM-PublicTransportHub, so you only need to update the module.

                            Station IDs were easier to find with the HAFAS module.

                            Those IDs come from the provider, so there is not much I can change about their format. I actually prefer the Transitous IDs because they are real DHIDs and work globally.

                            The display problem with umlauts is still a bit mysterious. The query scripts of both modules are not fundamentally very different, so I currently do not have a reliable explanation for why it only happens on your machine with the new query tool.

                            M 1 Reply Last reply Reply Quote 1
                            • M
                              Mati_93 @KristjanESPERANTO
                              last edited by Mati_93

                              @KristjanESPERANTO thanks a lot .
                              Sorry I mean umlauts don’t work on both node run query (hafas and hub) but on the HAFAS module it had simply required less …less precise data and forgave the absence of umlauts. Output (results) were clearlier. On HAFAS I found my station (18 März Straße) by myself on December 2025, and on new hub module I needed your help .

                              1 Reply Last reply Reply Quote 0

                              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
                              • 1 / 1
                              • First post
                                Last post
                              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