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.

    Difficulty getting MMM-Transitfeed working

    Scheduled Pinned Locked Moved Solved Troubleshooting
    31 Posts 2 Posters 4.4k Views 2 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.
    • S Do not disturb
      sdetweil @sdetweil
      last edited by

      @UncleRoger or

      better

      cd ~/MagicMirror
      npm install @electron/rebuild
      cd modules/MMM-Transitfeed
      …/…/node_modules/.bin/electron-rebuild
      cd ~/MagicMirror

      and restart MagicMirror however  you do that

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      UncleRogerU 1 Reply Last reply Reply Quote 0
      • UncleRogerU Offline
        UncleRoger @sdetweil
        last edited by

        @sdetweil

        I gave that a bash and am still getting the same error. I even wiped the system and started from scratch just in case I’d done something to make things worse.

        S 1 Reply Last reply Reply Quote 0
        • S Do not disturb
          sdetweil @UncleRoger
          last edited by

          @UncleRoger hm… I installed, did the npm install gtfs

          ran, failed as version mismatch
          I then did the

          ../../node_modules/.bin/electron-rebuild 
          ✔ Rebuild Complete
          

          restart mm and no problems, using the default config

          Screenshot at 2024-06-21 15-31-57.png

          Sam

          How to add modules

          learning how to use browser developers window for css changes

          UncleRogerU 1 Reply Last reply Reply Quote 0
          • UncleRogerU Offline
            UncleRoger @sdetweil
            last edited by

            @sdetweil

            I appreciate the help, as always… I wiped the system again, reinstalled the OS and MM, did the rebuild. Still the same error except the version numbers are different:

            [2024-06-21 15:30:32.001] [ERROR] (node:53456) UnhandledPromiseRejectionWarning: Error: The module '/home/pi/MagicMirror/node_modules/better-sqlite3/build/Release/better_sqlite3.node'
            was compiled against a different Node.js version using
            NODE_MODULE_VERSION 127. This version of Node.js requires
            NODE_MODULE_VERSION 121. Please try re-compiling or re-installing
            the module (for instance, using `npm rebuild` or `npm install`).
            

            I should mention that this is on a Pi4 (probably 2gb) with no other modules installed.

            Maybe it’s just not meant to be.

            S 1 Reply Last reply Reply Quote 0
            • S Do not disturb
              sdetweil @UncleRoger
              last edited by

              @UncleRoger what folder are you in when you do the electron-rebuild?

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              UncleRogerU 1 Reply Last reply Reply Quote 0
              • UncleRogerU Offline
                UncleRoger @sdetweil
                last edited by

                @sdetweil

                The MMM-transitfeed module directory:

                {
                  cd ~/MagicMirror
                  npm install @electron/rebuild
                  cd ~/MagicMirror/modules/MMM-transitfeed
                  ../../node_modules/.bin/electron-rebuild
                  cd ~/MagicMirror
                }
                

                I basically copy-and-pasted that.

                S 1 Reply Last reply Reply Quote 0
                • S Do not disturb
                  sdetweil @UncleRoger
                  last edited by sdetweil

                  @UncleRoger and when the electron-rebuild ran it should have said
                  something about sqllite
                  and rebuild complete, like mine above

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  UncleRogerU 1 Reply Last reply Reply Quote 0
                  • UncleRogerU Offline
                    UncleRoger @sdetweil
                    last edited by

                    @sdetweil

                    Nothing about sqlite but it did say “Rebuild Complete”:

                    pi@MagicMirrorDev:~/MagicMirror $ {
                      cd ~/MagicMirror
                      npm install @electron/rebuild
                      cd ~/MagicMirror/modules/MMM-transitfeed
                      ../../node_modules/.bin/electron-rebuild
                      cd ~/MagicMirror
                    }
                    
                    added 81 packages in 11s
                    
                    253 packages are looking for funding
                      run `npm fund` for details
                    ✔ Rebuild Complete
                    pi@MagicMirrorDev:~/MagicMirror $ 
                    

                    This time around, I didn’t do the sqlite update:

                    {
                      cd ~/MagicMirror
                      rm -r node_modules/better-sqlite3/
                      npm install better-sqlite3 --build-from-source --runtime=electron --target=26.4.3 --dist-url=https://electronjs.org/headers --force
                    }
                    

                    But I don’t think it worked any better when I did. I’ll try that and then do the rebuild.

                    S 1 Reply Last reply Reply Quote 0
                    • S Do not disturb
                      sdetweil @UncleRoger
                      last edited by

                      @UncleRoger don’t install sql again, else you have to rebuild again

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      UncleRogerU 1 Reply Last reply Reply Quote 0
                      • UncleRogerU Offline
                        UncleRoger @sdetweil
                        last edited by

                        @sdetweil

                        Oops. I did the rebuild again. Still doesn’t say anything about the sqlite3 but it does say rebuild complete.

                        Thanks

                        S 1 Reply Last reply Reply Quote 0
                        • S Do not disturb
                          sdetweil @UncleRoger
                          last edited by

                          @UncleRoger and? does it run.

                          Sam

                          How to add modules

                          learning how to use browser developers window for css changes

                          UncleRogerU 1 Reply Last reply Reply Quote 0
                          • UncleRogerU Offline
                            UncleRoger @sdetweil
                            last edited by

                            @sdetweil

                            Sadly, no. Same error.

                            UncleRogerU 1 Reply Last reply Reply Quote 0
                            • UncleRogerU Offline
                              UncleRoger @UncleRoger
                              last edited by

                              Could it be hardware related? I’m not sure I have another Pi4 I can test with but I’ve got a Pi Zero 2 I could try. Would that be of any use?

                              S 1 Reply Last reply Reply Quote 0
                              • S Do not disturb
                                sdetweil @UncleRoger
                                last edited by

                                @UncleRoger its not hardware, but another try wouldn’t hurt

                                Sam

                                How to add modules

                                learning how to use browser developers window for css changes

                                UncleRogerU 2 Replies Last reply Reply Quote 0
                                • UncleRogerU Offline
                                  UncleRoger @sdetweil
                                  last edited by

                                  @sdetweil

                                  There is no joy in mudville.

                                  Here’s what I did with a fresh install of PiOS (Raspberry Pi 4 2gb):

                                  pi@MagicMirrorDev:~/MagicMirror $ history
                                      1  {   sudo apt update;   sudo apt full-upgrade; }
                                      2  bash -c  "$(curl -sL https://raw.githubusercontent.com/sdetweil/MagicMirror_scripts/master/raspberry.sh)"
                                      3  sudo nmtui
                                      4  sudo shutdown -r now
                                      5  sudo nmtui
                                      6  sudu shutdown -r now
                                      7  sudo shutdown -r now
                                      8  {   cd ~/MagicMirror/modules;   git clone https://github.com/bnitkin/MMM-transitfeed.git; }
                                      9  cd ..
                                     10  {   cd ~/MagicMirror                     # Enter magicmirror project directory
                                             npm uninstall gtfs-realtime-bindings # Now part of gtfs
                                             npm install gtfs --save-dev          # Force update to latest version
                                         }
                                     11  {   cd ~/MagicMirror                     # Enter magicmirror project directory
                                             npm uninstall gtfs-realtime-bindings # Now part of gtfs
                                             npm install gtfs --save-dev          # Force update to latest version
                                         }
                                     12  {   sudo npm install -g n;   sudo n lts;   sudo n latest;   sudo n prune; }
                                     13  {   cd ~/MagicMirror                     # Enter magicmirror project directory
                                             npm uninstall gtfs-realtime-bindings # Now part of gtfs
                                             npm install gtfs --save-dev          # Force update to latest version
                                         }
                                     14  cd $HOME/MagicMirror;
                                     15  DISPLAY=:0 npm start
                                     16  npm run config:check
                                     17  DISPLAY=:0 npm start
                                     18  npm run config:check
                                     19  DISPLAY=:0 npm start
                                     20  npm run config:check
                                     21  DISPLAY=:0 npm start
                                     22  {   cd ~/MagicMirror;   rm -r node_modules/better-sqlite3/;   npm install better-sqlite3 --build-from-source --runtime=electron --target=26.4.3 --dist-url=https://electronjs.org/headers --force; }
                                     23  {   cd ~/MagicMirror;   npm install @electron/rebuild; }
                                     24  {   cd ~/MagicMirror/modules/MMM-transitfeed;   ../../node_modules/.bin/electron-rebuild;   cd ~/MagicMirror; }
                                     25  DISPLAY=:0 npm start
                                     26  history
                                  pi@MagicMirrorDev:~/MagicMirror $
                                  

                                  The nmtui stuff is to set the IP address (which I did wrong a couple of times) and then I mucked up the config.js putting in the transitfeed module stuff.

                                  Here’s the log from trying to run it at the end (it’s basically the same):

                                  [2024-06-25 11:53:08.617] [LOG]   MMM-transitfeed: Importing with [object Object]
                                  [2024-06-25 11:53:08.649] [ERROR] (node:3464) UnhandledPromiseRejectionWarning: Error: The module '/home/pi/MagicMirror/node_modules/better-sqlite3/build/Release/better_sqlite3.node'
                                  was compiled against a different Node.js version using
                                  NODE_MODULE_VERSION 116. This version of Node.js requires
                                  NODE_MODULE_VERSION 121. Please try re-compiling or re-installing
                                  the module (for instance, using `npm rebuild` or `npm install`).
                                      at process.func [as dlopen] (node:electron/js2c/node_init:2:2214)
                                      at Module._extensions..node (node:internal/modules/cjs/loader:1343:18)
                                      at Object.func [as .node] (node:electron/js2c/node_init:2:2214)
                                      at Module.load (node:internal/modules/cjs/loader:1098:32)
                                      at Module._load (node:internal/modules/cjs/loader:945:12)
                                      at c._load (node:electron/js2c/node_init:2:13672)
                                      at Module.require (node:internal/modules/cjs/loader:1122:19)
                                      at require (node:internal/modules/helpers:130:18)
                                      at bindings (/home/pi/MagicMirror/node_modules/bindings/bindings.js:112:48)
                                      at new Database (/home/pi/MagicMirror/node_modules/better-sqlite3/lib/database.js:48:64)
                                      at setupDb (file:///home/pi/MagicMirror/node_modules/gtfs/lib/db.js:10:14)
                                      at openDb (file:///home/pi/MagicMirror/node_modules/gtfs/lib/db.js:31:12)
                                      at Module.importGtfs (file:///home/pi/MagicMirror/node_modules/gtfs/lib/import.js:676:16)
                                      at Class.startup (/home/pi/MagicMirror/modules/MMM-transitfeed/node_helper.js:48:29)
                                      at async Class.socketNotificationReceived (/home/pi/MagicMirror/modules/MMM-transitfeed/node_helper.js:33:52)
                                  (Use `electron --trace-warnings ...` to show where the warning was created)
                                  [2024-06-25 11:53:08.650] [ERROR] (node:3464) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 8)
                                  

                                  I’m thinking I might give it another go from scratch without worrying about the IP address and catching all the output from each command.

                                  S 1 Reply Last reply Reply Quote 0
                                  • UncleRogerU Offline
                                    UncleRoger @sdetweil
                                    last edited by

                                    @sdetweil

                                    Could you check that I’m doing things correctly? These are the commands I’m using to get from a fresh OS to MM with transitfeed:

                                    # Update system
                                    
                                    {
                                      sudo apt update
                                      sudo apt full-upgrade
                                    }
                                    
                                    # Install MagicMirror
                                    
                                    bash -c  "$(curl -sL https://raw.githubusercontent.com/sdetweil/MagicMirror_scripts/master/raspberry.sh)"
                                    
                                    # NOTICE ON INSTALL: npm install -g npm@10.8.1
                                    
                                    # update Node/NPM
                                    
                                    {
                                      sudo npm install -g n
                                      sudo n lts
                                      sudo n latest
                                      sudo n prune
                                    }
                                    
                                    # Install transitfeed
                                    
                                    {
                                      cd ~/MagicMirror/modules
                                      git clone https://github.com/bnitkin/MMM-transitfeed.git
                                    }
                                    
                                    # Install gtfs
                                    
                                    {
                                      cd ~/MagicMirror                     # Enter magicmirror project directory
                                      npm uninstall gtfs-realtime-bindings # Now part of gtfs
                                      npm install gtfs --save-dev          # Force update to latest version
                                    }
                                    
                                    # Update better-sqlite3
                                    
                                    {
                                      cd ~/MagicMirror
                                      rm -r node_modules/better-sqlite3/
                                      npm install better-sqlite3 --build-from-source --runtime=electron --target=26.4.3 --dist-url=https://electronjs.org/headers --force
                                    }
                                    
                                    # Rebuild Electron?
                                    
                                    {
                                      cd ~/MagicMirror
                                      npm install @electron/rebuild
                                      cd ~/MagicMirror/modules/MMM-transitfeed
                                      ../../node_modules/.bin/electron-rebuild
                                      cd ~/MagicMirror
                                    }
                                    

                                    Thanks so much for your help!

                                    1 Reply Last reply Reply Quote 0
                                    • S Do not disturb
                                      sdetweil @UncleRoger
                                      last edited by sdetweil

                                      @UncleRoger ok, simpler

                                      flash sd card with
                                      use my script to install MM (do nothing before, it does the update and adds whats needed for MM)
                                      npm start to prove MagicMirror is working
                                      clone the module

                                      cd to the module folder and do the npm install and npm install gtfs (in module folder NOT MM folder!!)
                                      npm install gtfs --save-dev

                                      now, need electron rebuild
                                      cd …/… # magicmirror folder
                                      npm install @electron/rebuild
                                      cd - # go back to module folder
                                      …/…/node_modules/.bin/electron-rebuild
                                      wait, should show sqlite
                                      rebuild complete
                                      cd - # back to MM folder

                                      add the config entry for the module
                                      npm start

                                      should work

                                      Sam

                                      How to add modules

                                      learning how to use browser developers window for css changes

                                      UncleRogerU 1 Reply Last reply Reply Quote 0
                                      • UncleRogerU Offline
                                        UncleRoger @sdetweil
                                        last edited by

                                        @sdetweil

                                        When you say “module folder”, you mean (in this case) ~/MagicMirror/modules/MMM-transitfeed not ~/MagicMirror/modules/ right? I’m pretty sure, but better safe than sorry.

                                        Thanks!

                                        S 1 Reply Last reply Reply Quote 0
                                        • S Do not disturb
                                          sdetweil @UncleRoger
                                          last edited by

                                          @UncleRoger correct the module’s folder

                                          Sam

                                          How to add modules

                                          learning how to use browser developers window for css changes

                                          UncleRogerU 1 Reply Last reply Reply Quote 0
                                          • UncleRogerU Offline
                                            UncleRoger @sdetweil
                                            last edited by

                                            @sdetweil

                                            Still no luck. 8^(

                                            I was getting a bunch of errors during the MM install which some googling suggested might be due to insufficient power (which is odd because I was using a big power supply) so I switched to an RPi power supply and still got the same errors. So maybe they’re somehow related? The errors are:

                                            During MM Install:

                                            (node:27144) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 close listeners added to [TLSSocket]. Use emitter.setMaxListeners() to increase limit
                                            

                                            During the Electron stuff:

                                            (node:42678) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 close listeners added to [TLSSocket]. Use emitter.setMaxListeners() to increase limit
                                            
                                            S 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
                                            • 2
                                            • 1 / 2
                                            • 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