I Revived 3-Axis CNC Mill G-Code Simulator

  • Nice and Thanks! Was looking for something like this with minimal dependency.

    By the way, changing options updates browser history every time. You may want a debounce. Also, you could remove jQuery and make it even more leaner.

  • More importantly, what do you use for toolpath generation? I haven't found anything open source that really works...

  • Very cool.

    It seemed to struggle a bit with a more complex example.

      N30 PAN=1 ST1="16MMRH" L=PCUA
      N40 Z=PRK
      N50 X1846.942 Y1157.433 G42 F=1.0 S20000 VF=1.0 AX=X,Y,Z PRF=-12.7 TP=1 L=PON M55
      N60 G1 X1832.8 Y1171.575 Z=-LPZ+-12.7 F=1.0
      N70 G1 X1832.8 Y1187.575 Z=-LPZ+12.2 F=1.0
      N80 G2 X1807.8 Y1218.8 I=1839.8 J=1218.8 F=1.0
      N90 G1 X1.2 Y1218.8 Z=-LPZ+12.2 F=5.0
      N100 G1 X1.2 Y757.2 Z=-LPZ+12.2 F=5.0
      N110 G1 X1807.8 Y757.2 Z=-LPZ+12.2 F=5.0
      N120 G1 X1807.8 Y1218.8 Z=-LPZ+12.2 F=5.0
      N130 G1 X1799.0 Y1218.8 Z=-LPZ+12.2 F=5.0
      N140 G2 X1767.775 Y1243.8 I=1799.0 J=1250.8 F=5.0
      N150 G1 X1767.775 Y1243.8 Z=-LPZ+-12.7 F=5.0
      N160 G1 G40 X1778.481 Y1260.693 Z=-LPZ+-12.7 F=5.0
      N170 G0 L=PSU
      N180 X1846.142 Y1156.633 G42 F=1.0 S20000 VF=1.0 PRF=-12.7 TP=1 L=PON M55
      N190 G1 X1832.0 Y1170.775 Z=-LPZ+-12.7 F=1.0
      N200 G1 X1832.0 Y1186.775 Z=-LPZ+12.2 F=1.0
      N210 G2 X1807.0 Y1218.0 I=1839.0 J=1218.0 F=1.0
      N220 G1 X2.0 Y1218.0 Z=-LPZ+12.2 F=5.0
      N230 G1 X2.0 Y758.0 Z=-LPZ+12.2 F=5.0
      N240 G1 X1807.0 Y758.0 Z=-LPZ+12.2 F=5.0
      N250 G1 X1807.0 Y1218.0 Z=-LPZ+12.2 F=5.0
      N260 G1 X1798.2 Y1218.0 Z=-LPZ+12.2 F=5.0
      N270 G2 X1766.975 Y1243.0 I=1798.2 J=1250.0 F=5.0
      N280 G1 X1766.975 Y1243.0 Z=-LPZ+-12.7 F=5.0
      N290 G1 G40 X1777.681 Y1259.893 Z=-LPZ+-12.7 F=5.0
      N300 G0 L=PSU
      N310 G0 L=POFF
      N320 PAN=1 ST1="FINTOOL" L=PCUA
      N330 X1817.607 Y747.3934 G42 F=3.0 S18000 VF=1.0 PRF=-12.7 TP=1 L=PON M55
      N340 G1 X1807.0 Y758.0 Z=-LPZ+-12.7 F=1.0
      N350 G1 X1807.0 Y758.0 Z=-LPZ+12.2 F=1.0
      N360 G1 X1807.0 Y1216.5 Z=-LPZ+12.2 F=3.0
      N370 G3 X1805.5 Y1218.0 I=1805.5 J=1216.5 F=3.0
      N380 G1 X3.5 Y1218.0 Z=-LPZ+12.2 F=3.0
      N390 G3 X2.0 Y1216.5 I=3.5 J=1216.5 F=3.0
      N400 G1 X2.0 Y758.0 Z=-LPZ+12.2 F=3.0
      N410 G1 X2.0 Y758.0 Z=-LPZ+-12.7 F=3.0
      N420 G1 G40 X-8.6066 Y747.3934 Z=-LPZ+-12.7 F=3.0
      N430 G0 L=PSU
      N440 G0 L=POFF
      N450 G0 Z=PRK

  • https://nraynaud.github.io/webgcode/

    I made one too, a long time ago.

    https://nraynaud.github.io/webgcode/webapp/visucamTest.html

    I did some code generation too, but it's bit rotting.

  • I have a post-processed NC file from Fusion 360...which I think is just gcode. How can I transform that into something this can simulate? My hacky attempts have failed.

  • This is awesome. I learned CNC & manual G-Code on a Rockwell 3 axis in ~2000 and I am taken back tinkering with this.

  • what if I want to learn CNC programming as a hobby, where one can go and learn and practice, without purchasing CNC equipment? (in NorCal/bay area)

    lets say I want to emboss hello world on a piece of foam

  • Very cool project. what kind of post processors do you test with?

  • has anyone tried making a mastercam/solidworks replacement?

    Mostly interested in looking at some code, not taking on the challenge lol

  • Very nice thank you!!