Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Music skipping beats after firmware update (3.4.0beta6)

    Scheduled Pinned Locked Moved Solved
    Tuning and tweaking
    10
    28
    2.1k
    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.
    • o_lampeundefined
      o_lampe @jay_s_uk
      last edited by

      @jay_s_uk
      Yes, replace the while true line with a real boolean variable 👍

      1 Reply Last reply Reply Quote 1
      • gtamanundefined
        gtaman @o_lampe
        last edited by

        @o_lampe

        Hmm, I don't think I've used Daemon.g, so I don't even know what it does. I'll have to look more into it. Both of those ideas seem good though 🙂

        o_lampeundefined 2 Replies Last reply Reply Quote 0
        • o_lampeundefined
          o_lampe @gtaman
          last edited by

          @gtaman
          It's actually the same:

          • create a global variable blockDaemon
          • set global.blockDaemon = true at the start of the M300 file
          • set global.blockDaemon = false at the end

          Then anyone using Daemon.g for real can add these lines

          while global.blockDaemon = true
                    G4 S1000
          
          gtamanundefined 1 Reply Last reply Reply Quote 4
          • gtamanundefined
            gtaman @o_lampe
            last edited by

            @o_lampe Nice! 😄 I saved it and I’ll try it out tomorrow. Heading to bed now, Have a good one! 🙂

            1 Reply Last reply Reply Quote 0
            • o_lampeundefined
              o_lampe @gtaman
              last edited by

              @gtaman said in Music skipping beats after firmware update (3.4.0beta6):

              I don't think I've used Daemon.g, so I don't even know what it does

              I does what your imagination (and the conditional meta commands) are capable off.
              It could run a playlist for instance

              1 Reply Last reply Reply Quote 1
              • DonStaufferundefined
                DonStauffer @gtaman
                last edited by

                @gtaman I noticed the same thing.

                jens55undefined 1 Reply Last reply Reply Quote 0
                • jens55undefined
                  jens55 @DonStauffer
                  last edited by

                  Anybody have a good source for a bill receptor (if that's what it is called) ? User feeds it a dollar and in turn it plays a music track. Feed it $5 and get an hour of 3D printing service (or 6 music tracks). Find a pub, arrange to locate the printer and watch the money roll in 🙂
                  Just got to figure out how to deliver the printed part to the customer in such a way that they can't mess up the process.

                  gtamanundefined 1 Reply Last reply Reply Quote 1
                  • jens55undefined
                    jens55
                    last edited by

                    ... and if it's not obvious, add a smiley face to my last post!

                    1 Reply Last reply Reply Quote 0
                    • jens55undefined
                      jens55
                      last edited by

                      But seriously folks, I would love to have the printer play a different jingle for all the major events that require operator attention. Unfortunately my printer is run 99% remotely so I'd never get to hear it 😞

                      engikeneerundefined 1 Reply Last reply Reply Quote 0
                      • engikeneerundefined
                        engikeneer @jens55
                        last edited by

                        @jens55 you just need a bigger speaker 😉

                        E3D TC with D3Mini and Toolboards.
                        Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
                        i3 clone with a bunch of mods

                        jens55undefined 1 Reply Last reply Reply Quote 2
                        • jens55undefined
                          jens55 @engikeneer
                          last edited by

                          @engikeneer .... I am not an engikeneer so I didn't think far enough. Wish I would have finished my degree ...

                          I am sure the neighbours will also really appreciate the sound tracks !

                          1 Reply Last reply Reply Quote 0
                          • gtamanundefined
                            gtaman @jens55
                            last edited by gtaman

                            @jens55

                            Conveyor bed that automatically ejects prints 😄 I've seen it somewhere just not in a public machine. I think the hardest part would be reliability, but it is possible. You could also set it to cancel and kick a job out if the time runs out before the print is done xD I haven't used bill receptors because they're expensive, but I did put a coin selector in a claw machine I built 😄 It was just some generic thing from ebay and it works quite well surprisingly.

                            1 Reply Last reply Reply Quote 0
                            • dc42undefined
                              dc42 administrators @o_lampe
                              last edited by dc42

                              @o_lampe said in Music skipping beats after firmware update (3.4.0beta6):

                              @gtaman
                              Downside is, that it totally blocks Daemon.g for other purposes.
                              Would be cool to block it only while playing the sound.
                              Any ideas? Renaming the original file and replace it with Davids two-liner and back again?

                              @o_lampe said in Music skipping beats after firmware update (3.4.0beta6):

                              @gtaman
                              Downside is, that it totally blocks Daemon.g for other purposes.
                              Would be cool to block it only while playing the sound.
                              Any ideas? Renaming the original file and replace it with Davids two-liner and back again?

                              If you already have a daemon.g file that is coded as a while loop so that it never terminates under normal conditions, and it spends most of its time in G4 delay calls, then you may not have the original problem anyway. The reason that not having a daemon.g file causes interruptions to timed tasks such as playing tunes is that every 10 seconds RRF will try to open daemon.g if it is not already open; and trying to open a non-existent file on the SD card requires the whole directory to be searched, which may require several sector transfers.

                              Of course you could also choose to have daemon.g play the tune, triggered when it sees a global variable change state.

                              Duet WiFi hardware designer and firmware engineer
                              Please do not ask me for Duet support via PM or email, use the forum
                              http://www.escher3d.com, https://miscsolutions.wordpress.com

                              Baenwortundefined 1 Reply Last reply Reply Quote 0
                              • Baenwortundefined
                                Baenwort @dc42
                                last edited by

                                @dc42 said in Music skipping beats after firmware update (3.4.0beta6):

                                @o_lampe said in Music skipping beats after firmware update (3.4.0beta6):

                                @gtaman
                                Downside is, that it totally blocks Daemon.g for other purposes.
                                Would be cool to block it only while playing the sound.
                                Any ideas? Renaming the original file and replace it with Davids two-liner and back again?

                                @o_lampe said in Music skipping beats after firmware update (3.4.0beta6):

                                @gtaman
                                Downside is, that it totally blocks Daemon.g for other purposes.
                                Would be cool to block it only while playing the sound.
                                Any ideas? Renaming the original file and replace it with Davids two-liner and back again?

                                If you already have a daemon.g file that is coded as a while loop so that it never terminates under normal conditions, and it spends most of its time in G4 delay calls, then you may not have the original problem anyway. The reason that not having a daemon.g file causes interruptions to timed tasks such as playing tunes is that every 10 seconds RRF will try to open daemon.g if it is not already open; and trying to open a non-existent file on the SD card requires the whole directory to be searched, which may require several sector transfers.

                                Of course you could also choose to have daemon.g play the tune, triggered when it sees a global variable change state.

                                Is it enough to have a blank daemon.g or does it need contents?

                                o_lampeundefined dc42undefined 2 Replies Last reply Reply Quote 0
                                • o_lampeundefined
                                  o_lampe @Baenwort
                                  last edited by o_lampe

                                  @baenwort said in Music skipping beats after firmware update (3.4.0beta6):

                                  Is it enough to have a blank daemon.g or does it need contents?

                                  You could add something like the below lines in your Daemon.g (empty or not) to have a controlable looptime.
                                  Set a low value when you need faster processing or higher, when you don't.

                                  while  true
                                          //do other things
                                         ....
                                          G4 S{global.DaemonLoopSpeed}
                                  
                                  Baenwortundefined 1 Reply Last reply Reply Quote 0
                                  • dc42undefined
                                    dc42 administrators @Baenwort
                                    last edited by

                                    @baenwort said in Music skipping beats after firmware update (3.4.0beta6):

                                    Is it enough to have a blank daemon.g or does it need contents?

                                    It need to have a loop with a delay call in the body.

                                    I have it in mind to add a new GCode command to start/stop daemon.g.

                                    Duet WiFi hardware designer and firmware engineer
                                    Please do not ask me for Duet support via PM or email, use the forum
                                    http://www.escher3d.com, https://miscsolutions.wordpress.com

                                    DonStaufferundefined 1 Reply Last reply Reply Quote 1
                                    • nikschaundefined
                                      nikscha @gtaman
                                      last edited by

                                      @gtaman would you mind sharing your gcode music collection?

                                      Stay in school

                                      gtamanundefined 1 Reply Last reply Reply Quote 0
                                      • gtamanundefined
                                        gtaman @nikscha
                                        last edited by gtaman

                                        @nikscha
                                        Here is my favourite in the code text below. I just found it, and i've been imagining it for weeks I tell you, WEEKS! Its the commodore 64 tribute from GTA Vice city. I think I'm going to use this for my main sound. Also, this thread had a bunch I shared earlier:
                                        https://forum.duet3d.com/topic/26269/sound-for-duet?_=1639741054776

                                        Also Don't be scared to make your own:
                                        https://alexyu132.github.io/midi-m300/ -tool
                                        https://www.vgmusic.com -midi music
                                        https://bitmidi.com/ -midi music
                                        There are Mp3 to midi converters too, but i havent found a good one

                                        code_text
                                        M300 P161 S370
                                        G4 P161
                                        M300 P166 S0
                                        G4 P166
                                        M300 P161 S370
                                        G4 P161
                                        M300 P166 S0
                                        G4 P166
                                        M300 P161 S370
                                        G4 P161
                                        M300 P166 S0
                                        G4 P166
                                        M300 P163 S330
                                        G4 P163
                                        M300 P163 S370
                                        G4 P163
                                        M300 P163 S440
                                        G4 P163
                                        M300 P161 S370
                                        G4 P161
                                        M300 P166 S0
                                        G4 P166
                                        M300 P163 S330
                                        G4 P163
                                        M300 P487 S370
                                        G4 P487
                                        M300 P166 S0
                                        G4 P166
                                        M300 P161 S294
                                        G4 P161
                                        M300 P166 S0
                                        G4 P166
                                        M300 P161 S294
                                        G4 P161
                                        M300 P166 S0
                                        G4 P166
                                        M300 P163 S294
                                        G4 P163
                                        M300 P161 S277
                                        G4 P161
                                        M300 P166 S0
                                        G4 P166
                                        M300 P161 S277
                                        G4 P161
                                        M300 P166 S0
                                        G4 P166
                                        M300 P163 S277
                                        G4 P163
                                        M300 P327 S330
                                        G4 P327
                                        M300 P327 S349
                                        G4 P327
                                        M300 P1000 S370
                                        G4 P654
                                        
                                        
                                        1 Reply Last reply Reply Quote 1
                                        • Baenwortundefined
                                          Baenwort @o_lampe
                                          last edited by

                                          @o_lampe said in Music skipping beats after firmware update (3.4.0beta6):

                                          @baenwort said in Music skipping beats after firmware update (3.4.0beta6):

                                          Is it enough to have a blank daemon.g or does it need contents?

                                          You could add something like the below lines in your Daemon.g (empty or not) to have a controlable looptime.
                                          Set a low value when you need faster processing or higher, when you don't.

                                          while  true
                                                  //do other things
                                                 ....
                                                  G4 S{global.DaemonLoopSpeed}
                                          

                                          So I tried exactly that (but with {global.DaemonLoopSpeed} replaced by a 1 as I didn't want to add a variable in my configuration.g) and the DWC is not unresponsive.

                                          I'm going to pull the printer apart to get the mSDCard out once I get the kids in bed tonight.

                                          I presume that even though you put it in code blocks that I shouldn't have used it exactly as you wrote it?

                                          o_lampeundefined 1 Reply Last reply Reply Quote 0
                                          • o_lampeundefined
                                            o_lampe @Baenwort
                                            last edited by o_lampe

                                            @baenwort said in Music skipping beats after firmware update (3.4.0beta6):

                                            DWC is not unresponsive.

                                            I believe, you wanted to say "now unresponsive"?
                                            IMHO, a one second loop time for daemon.g shouldn't be too short, but there's a reason why they set the default loop time to ten seconds...

                                            With a global variable, you wouldn't have to pull the SD-card. Maybe you can overwrite daemon.g by replacing it through DWC download instead of editing the file?
                                            I recommend trying it with variable loop time until you figured out the best setting.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA