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

New firmware 2.0RC5 available

Scheduled Pinned Locked Moved
Firmware installation
23
88
12.4k
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.
  • undefined
    denke @dc42
    last edited by 24 May 2018, 07:38

    @dc42
    Thanks for the info!

    A behaviour suggestion if i may:
    -The sorting could be implemented in the duet fw, not dwc.
    -The board could send down the first ~25 entries initially (the first 25 of the sorted list), then send the follow-up entries threw page turning or infinite scrolling

    Or at least a warning that "there are too many files in this directory, not all files are shown".

    undefined 1 Reply Last reply 24 May 2018, 08:00 Reply Quote 1
    • undefined
      dc42 administrators @denke
      last edited by dc42 24 May 2018, 08:00

      @denke said in New firmware 2.0RC5 available:

      @dc42
      Thanks for the info!

      A behaviour suggestion if i may:
      -The sorting could be implemented in the duet fw, not dwc.
      -The board could send down the first ~25 entries initially (the first 25 of the sorted list), then send the follow-up entries threw page turning or infinite scrolling

      Or at least a warning that "there are too many files in this directory, not all files are shown".

      Thanks, I am already in discussions with chrishamm about how to resolve this.

      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

      undefined 1 Reply Last reply 24 May 2018, 08:13 Reply Quote 1
      • undefined
        denke @dc42
        last edited by 24 May 2018, 08:13

        Nice, thanks @dc42 !

        1 Reply Last reply Reply Quote 0
        • undefined
          3DOeste
          last edited by 24 May 2018, 11:33

          Hi! I've been testing RC5 since the release date and everything works fine. I was previously on 1.21. I found no bug or anything strange to repport.

          undefined 1 Reply Last reply 24 May 2018, 16:06 Reply Quote 0
          • undefined
            dc42 administrators @3DOeste
            last edited by 24 May 2018, 16:06

            @3doeste said in New firmware 2.0RC5 available:

            Hi! I've been testing RC5 since the release date and everything works fine. I was previously on 1.21. I found no bug or anything strange to repport.

            Thanks for the feedback!

            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

            undefined 1 Reply Last reply 24 May 2018, 18:28 Reply Quote 0
            • undefined
              ShadowX @dc42
              last edited by ShadowX 24 May 2018, 18:28

              I don't know if anyone else have this issue, but with the 1.21.1 web interface, I seem to have a hard time controlling the fan speed in the "Machine Control" tab. If I pull on the slider, it would move over, but when I let go it would bounce back to the previous value. I repeat the same process on IE and Firefox and had the same issues. Sometimes if I double click slowly it would stay, but its a bit annoying.

              When I move the fans, speed factor or extrusion factor in the "Print Status" tab, I have no problem moving the sliders. The slider in the fan control on the "Print Status" jumps slightly, but nowhere near as often as the "Machine Control" slider.

              I don't think its related to RC5, but it seems like a problem with the recent updates.

              Firmware Name: RepRapFirmware for Duet 2 WiFi/Ethernet
              Firmware Electronics: Duet WiFi 1.0 or 1.01
              Firmware Version: 2.0(RTOS)RC5 (2018-05-22b1)
              WiFi Server Version: 1.21
              Web Interface Version: 1.21.1

              undefined 1 Reply Last reply 24 May 2018, 18:39 Reply Quote 0
              • undefined
                Christoph13524 @ShadowX
                last edited by 24 May 2018, 18:39

                @shadowx
                I have the same problems in Safari.
                It looks like for me this annoying bug got worse in the recent updates.

                Printing with an UMO+
                Duet 2 WiFi 1.04

                1 Reply Last reply Reply Quote 0
                • undefined
                  zerspaner_gerd
                  last edited by 24 May 2018, 19:28

                  @dc42 With your advice, uploading the gcode files works without any problems.

                  The connection problems with DWC are still present.

                  The funny, on the Tablet (also with chrome and Windows10) comes for a long time no mistake.
                  On desktop PC this comes more often.

                  I do not understand that.

                  It seems that the update suspends the web interface but the connection remains.

                  With combination DWC 1.21.1 and RRF 1.21, the dropouts are not present.

                  Board: Duet WiFi 1.03 | Firmware Version: 3.1.1 | WiFi Server Version: 1.23 | Web Interface Version: 3.1.1

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    sigxcpu
                    last edited by 24 May 2018, 19:31

                    There are problems with this firmware (upgraded from 1.21, so I don't know if it is 2.0 specific or not).

                    Uploading a file, creating a directory (through DWC or FTP) is not shown in web UI. I've dumped the traffic between the browser and the Duet and indeed the file list does not show the added entries. If using FTP, they are there. If using M32 directly to print they are there.

                    Old files on the SD card are shown in DWC, but anything new since 2.0RC5 upgrade is not shown.

                    undefined undefined 2 Replies Last reply 24 May 2018, 19:37 Reply Quote 0
                    • undefined
                      sigxcpu @sigxcpu
                      last edited by 24 May 2018, 19:37

                      @sigxcpu said in New firmware 2.0RC5 available:

                      There are problems with this firmware (upgraded from 1.21, so I don't know if it is 2.0 specific or not).

                      Uploading a file, creating a directory (through DWC or FTP) is not shown in web UI. I've dumped the traffic between the browser and the Duet and indeed the file list does not show the added entries. If using FTP, they are there. If using M32 directly to print they are there.

                      Old files on the SD card are shown in DWC, but anything new since 2.0RC5 upgrade is not shown.

                      Example:

                      Create a folder in gcodes/Raducu named ccc:

                      T 2018/05/24 22:21:48.056786 192.168.27.125:54849 -> 192.168.27.7:80 [AP] #74
                      GET /rr_mkdir?dir=0%3A%2Fgcodes%2FRaducu%2Fccc HTTP/1.1.
                      Host: 192.168.27.7.
                      Accept-Encoding: gzip, deflate.
                      Connection: keep-alive.
                      Accept: application/json, text/javascript, */*; q=0.01.
                      User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/602.2.14 (KHTML, like Gecko) Version/10.0.1 Safari/602.2.14.
                      Referer: http://192.168.27.7/.
                      Accept-Language: en-us.
                      X-Requested-With: XMLHttpRequest.
                      .
                      T 2018/05/24 22:21:48.143654 192.168.27.7:80 -> 192.168.27.125:54849 [AP] #78
                      HTTP/1.1 200 OK
                      Cache-Control: no-cache, no-store, must-revalidate
                      Pragma: no-cache
                      Expires: 0
                      Access-Control-Allow-Origin: *
                      Content-Type: application/json
                      Content-Length: 9
                      Connection: close
                      {"err":0}

                      Reload shows no ccc entry.

                      T 2018/05/24 22:21:48.151622 192.168.27.125:54850 -> 192.168.27.7:80 [AP] #87
                      GET /rr_filelist?dir=0%3A%2Fgcodes%2FRaducu HTTP/1.1.
                      Host: 192.168.27.7.
                      Accept-Encoding: gzip, deflate.
                      Connection: keep-alive.
                      Accept: application/json, text/javascript, */*; q=0.01.
                      User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/602.2.14 (KHTML, like Gecko) Version/10.0.1 Safari/602.2.14.
                      Referer: http://192.168.27.7/.
                      Accept-Language: en-us.
                      X-Requested-With: XMLHttpRequest.
                      .
                      T 2018/05/24 22:21:48.168250 192.168.27.7:80 -> 192.168.27.125:54850 [A] #88
                      HTTP/1.1 200 OK
                      Cache-Control: no-cache, no-store, must-revalidate
                      Pragma: no-cache
                      Expires: 0
                      Access-Control-Allow-Origin: *
                      Content-Type: application/json
                      Content-Length: 1992
                      Connection: close
                      {"dir":"0:/gcodes/Raducu","files":[{"type":"f","name":"loubie_aria_dragon_PLA.gcode","size":6043030,"date":"2017-04-03T19:10:15"},{"type":"f","name":"spaceShuttle1_PLA.gcode","size":1735511,"date":"2017-04-03T22:55:18"},{"type":"f","name":"2part_-_A_head_ABS.gcode","size":4456480,"date":"2017-04-23T22:04:29"},{"type":"f","name":"nema17_support_PLA.gcode","size":1277492,"date":"2017-04-07T13:03:07"},{"type":"f","name":"belt_support_PLA.gcode","size":911789,"date":"2017-04-07T15:22:11"},{"type":"f","name":"plate_and_pillars_PLA 220 (Sacele).gcode","size":2990130,"date":"2017-04-08T00:29:20"},{"type":"f","name":"robot_pillar_PLA 220 (Sacele).gcode","size":1621129,"date":"2017-04-08T14:13:06"},{"type":"f","name":"2part_-_B_body_ABS.gcode","size":6222247,"date":"2017-04-23T23:01:19"},{"type":"f","name":"Variable_Speed_Gears_-_Main_Gear-1_ABS.gcode","size":9204723,"date":"2017-05-01T10:16:23"},{"type":"f","name":"metal_detector_coil_PLA.gcode","size":1589034,"date":"2017-05-06T20:54:17"},{"type":"d","name":"Spinner","size":0,"date":"2017-05-22T02:26:25"},{"type":"f","name":"Hull_Mk6_ABS.gcode","size":3329265,"date":"2017-05-31T15:23:21"},{"type":"f","name":"Finger_Pad_V2_Twisted_Pins_ABS.gcode","size":958387,"date":"2017-05-15T22:36:15"},{"type":"d"
                      T 2018/05/24 22:21:48.271859 192.168.27.7:80 -> 192.168.27.125:54850 [AP] #90
                      ,"name":"Microscop","size":0,"date":"2017-05-19T01:31:00"},{"type":"f","name":"SphericalIrisBox_PLA.gcode","size":11446362,"date":"2017-05-20T21:24:09"},{"type":"f","name":"Jumping_Turtle_PLA.gcode","size":7794056,"date":"2017-08-10T23:55:16"},{"type":"f","name":"Jumping_Turtle_PLA_0.3.gcode","size":4326095,"date":"2017-08-10T23:59:10"},{"type":"f","name":"Spikey_Top_PLA.gcode","size":2177682,"date":"2017-08-22T20:17:24"},{"type":"f","name":"Rocket_Launcher_PLA.gcode","size":5816173,"date":"2017-08-28T17:56:01"},{"type":"f","name":"Rocket_Launcher_10mm.gcode","size":3424444,"date":"2017-08-29T14:46:10"},{"type":"f","name":"2LiterThreads_1fourth_npt_FINS_righted_PET-G.gcode","size":2229123,"date":"2017-08-30T19:36:09"}]}
                      1 Reply Last reply Reply Quote 0
                      • undefined
                        dc42 administrators @sigxcpu
                        last edited by dc42 24 May 2018, 19:48

                        @sigxcpu said in New firmware 2.0RC5 available:

                        There are problems with this firmware (upgraded from 1.21, so I don't know if it is 2.0 specific or not).

                        Uploading a file, creating a directory (through DWC or FTP) is not shown in web UI. I've dumped the traffic between the browser and the Duet and indeed the file list does not show the added entries. If using FTP, they are there. If using M32 directly to print they are there.

                        Old files on the SD card are shown in DWC, but anything new since 2.0RC5 upgrade is not shown.

                        Please see this response https://forum.duet3d.com/topic/5394/new-firmware-2-0rc5-available/30.

                        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

                        1 Reply Last reply Reply Quote 0
                        • undefined
                          sigxcpu
                          last edited by sigxcpu 24 May 2018, 20:23

                          Thank you for the answer.

                          I've scanned this thread, but missed that.

                          Is this a permanent issue or we can expect it to be fixed in the future? I don't know the internals, but I assume that the serialization buffer is small. If it is that, can't you simply generate the JSON on the fly (i.e. streaming)?

                          Another option is to shrink the JSON. On a machine to machine transfer there is no need to repeat type, name, size, date all the time. They can be abbreviated to t n s d, for example.

                          LE: now that this started me, I dug in the source code.

                          I see that the big M122 reply is sent at this size:
                          Content-Length: 2539

                          My example reply is:
                          Content-Length: 1992

                          My example with shorted field names is 1739 bytes in size, around 250 bytes smaller.

                          So there are ~550 bytes that could've taken more files to be displayed.

                          Also the modified times can be encoded as UNIX timestamps instead of formatted, which will reduce that even further, from 21 bytes to 9 bytes per entry.

                          We can have a parameter in rr_filelist sent by DWC to request short format and implement a list with all the above mentioned optimizations, so things are backward compatible.
                          I can take a stab at this, without the buffer size part (M122 is big, filelist is small) because I don't know why you've chosen it to be that way.
                          This will be for a 2.1 release maybe.

                          1 Reply Last reply Reply Quote 0
                          • undefined
                            dc42 administrators
                            last edited by 24 May 2018, 21:14

                            I agree that the protocol is too verbose (I didn't design it) and we are discussing how to fix the issue. Unfortunately it won't be fixed in time for the 2.0 release because the master files are needed tomorrow for SD card duplication.

                            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

                            1 Reply Last reply Reply Quote 0
                            • undefined
                              sigxcpu
                              last edited by 24 May 2018, 21:42

                              How do you think this should be integrated?

                              • create a new command like rr_compactfilelist?dir=xxx
                              • add a parameter to existing rr_filelist like rr_filelist?dir=xxx&compact=true
                              undefined 1 Reply Last reply 25 May 2018, 14:14 Reply Quote 0
                              • undefined
                                Synlor
                                last edited by Synlor 25 May 2018, 03:12

                                I ran into an issue I have never seen before in the 1 series of firmware. I almost always run prints via Octoprint over the usb serial connection. About 3.5 hours into a print the connection died.

                                I am running firmware 2.0(RTOS)RC5 (2018-05-22b1).

                                Here was the error on the Octoprint terminal:

                                Unexpected error while reading serial port, please consult octoprint.log for details: SerialException: 'device reports readiness to read but returned no data (device disconnected or multiple access on port?)' @ comm.py:_readline:2417
                                

                                In the DWC console it had this:

                                g-code buffer 'serial' length overflow

                                I ran an M122 in the DWC console interface:

                                M122
                                === Diagnostics ===
                                RepRapFirmware for Duet 2 WiFi/Ethernet version 2.0(RTOS)RC5 running on Duet WiFi 1.0 or 1.01 + DueX5
                                Board ID: 08DAM-999TL-MQ4S8-6J9D8-3SJ6N-15B3W
                                Used output buffers: 1 of 20 (10 max)
                                === RTOS ===
                                Static ram: 28452
                                Dynamic ram: 96644 of which 16 recycled
                                Exception stack ram used: 380
                                Never used ram: 5580
                                Task NETWORK ready, free stack 420
                                Task DHTSENSOR blocked, free stack 36
                                Task HEAT blocked, free stack 1256
                                Task MAIN running, free stack 3620
                                === Platform ===
                                Last reset 00:04:46 ago, cause: software
                                Last software reset at 2018-05-24 21:58, reason: Assertion failed, spinning module Platform, available RAM 5284 bytes (slot 1)
                                Software reset code 0x0090 HFSR 0x00000000, CFSR 0x00000000, ICSR 0x0041f80e, BFAR 0xe000ed38, SP 0x2001ffb4
                                Stack: 2001e6a0 2001e6d4 00445509 00000000 00000000 00000001 20006c68 20006bf4 00444885 2001e6ec 20006bf4 00000000 00f00000 e000ef34 c0000018 00000003 004449c7 00444738 61000000 b082b430 b33b9d04 b2c96804 41b4f041 3480f444
                                Error status: 0
                                Free file entries: 10
                                SD card 0 detected, interface speed: 12.0MBytes/sec
                                SD card longest block write time: 0.0ms
                                MCU temperature: min 46.6, current 46.7, max 49.5
                                Supply voltage: min 24.0, current 24.2, max 24.4, under voltage events: 0, over voltage events: 0
                                Driver 0: standstill, SG min/max not available
                                Driver 1: standstill, SG min/max not available
                                Driver 2: standstill, SG min/max not available
                                Driver 3: standstill, SG min/max not available
                                Driver 4: standstill, SG min/max not available
                                Driver 5: standstill, SG min/max not available
                                Driver 6: standstill, SG min/max not available
                                Driver 7: standstill, SG min/max not available
                                Driver 8: standstill, SG min/max not available
                                Driver 9: standstill, SG min/max not available
                                Expansion motor(s) stall indication: yes
                                Date/time: 2018-05-24 22:03:05
                                Slowest main loop (seconds): 0.372014; fastest: 0.000069
                                === Move ===
                                Hiccups: 0, StepErrors: 0, LaErrors: 0, FreeDm: 240, MinFreeDm 240, MaxWait: 0ms, Underruns: 0, 0
                                Scheduled moves: 0, completed moves: 0
                                Bed compensation in use: none
                                Bed probe heights: 0.000 0.000 0.000 0.000 0.000
                                === Heat ===
                                Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1
                                Heater 3 is on, I-accum = 0.0
                                === GCodes ===
                                Segments left: 0
                                Stack records: 1 allocated, 0 in use
                                Movement lock held by null
                                http is idle in state(s) 0
                                telnet is idle in state(s) 0
                                file is idle in state(s) 0
                                serial is idle in state(s) 0
                                aux is idle in state(s) 0
                                daemon is idle in state(s) 0
                                queue is idle in state(s) 0
                                autopause is idle in state(s) 0
                                Code queue is empty.
                                === Network ===
                                Responder states: HTTP(4) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
                                HTTP sessions: 1 of 8
                                - WiFi -
                                Network state is running
                                WiFi module is connected to access point
                                Failed messages: pending 0, notready 0, noresp 0
                                WiFi firmware version 1.21
                                WiFi MAC address 5c:cf:7f:2c:27:2d
                                WiFi Vcc 3.38, reset reason Turned on by main processor
                                WiFi flash size 4194304, free heap 15000
                                WiFi IP address 192.168.2.143
                                WiFi signal strength -65dBm, reconnections 0, sleep mode modem
                                Socket states: 0 5 0 0 0 0 0 0
                                === Expansion ===
                                DueX I2C errors 0

                                I know I am weird to still use Octoprint with a Duet Wifi, but I like the various plugins and record keeping that it provides over the DWC interface. Thanks!

                                1 Reply Last reply Reply Quote 0
                                • undefined
                                  marekzehra
                                  last edited by 25 May 2018, 08:52

                                  Running FW: 2.0(RTOS)RC5 (2018-05-22b1), DWC: 1.21.1

                                  Tested on small print and no issue occured.
                                  Just one glitch on first print (macro with delta calibration, heat and cooldown) when reloading DWC in browser caused "Emergency STOP". But can't reproduce.

                                  1 Reply Last reply Reply Quote 0
                                  • undefined
                                    Adrian52
                                    last edited by 25 May 2018, 11:40

                                    Running 2.0rc5 and dwc121. 1, I have noticed odd behaviour of M122 included in slicer end script. At the end of the print, the M122 report does not appear. The gcode console accepts an M122, but no report. YAT connection accepts M122, and provides a report, but this does not relate to the print, so I guess the original M122 cleared. The DWC console accepts other commands when in the M122 blocked state, and M122 works fine after reset. The effect is seen with S3D and kislicer end scripts.

                                    1 Reply Last reply Reply Quote 0
                                    • wilrikerundefined
                                      wilriker
                                      last edited by 25 May 2018, 12:09

                                      I just finished a print with a strange message:

                                      Error: G1/G2/G3: intermediate position outside machine limits
                                      Finished printing file Upgrades/Spool_Holder.gcode, print time was 4h 9m

                                      X is now reported as being -253.69

                                      My end code is the following

                                      G10 P0 R-273.15 S-273.15 ;extruder heater off
                                      M140 S-273.15 ;bed heater off
                                      G91 ;relative positioning
                                      G1 Z+4 X-20 Y+20 F9000 ;move nozzle away from object
                                      G0 S1 X-250 ;move X to the left, so the head is completely out of the way
                                      G90 ;absolute positioning
                                      G0 Y190 F5000 ;move bed to the front
                                      M84 ;steppers off

                                      Could it be that the G0 S1 X-250 in contrast to a G1 S1 X-250 F3600 that is used in my homex.g is the problem here? AFAIK G0 and G1 are aliases on a cartesian setup.

                                      This might not be directly related to RC5 but I never had this message before and I have not modified my end code since updating to RC5.

                                      Manuel
                                      Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
                                      with probably always latest firmware/DWC (incl. betas or self-compiled)
                                      My Tool Collection

                                      undefined 1 Reply Last reply 25 May 2018, 14:27 Reply Quote 0
                                      • undefined
                                        dc42 administrators @sigxcpu
                                        last edited by 25 May 2018, 14:14

                                        @sigxcpu said in New firmware 2.0RC5 available:

                                        How do you think this should be integrated?

                                        • create a new command like rr_compactfilelist?dir=xxx
                                        • add a parameter to existing rr_filelist like rr_filelist?dir=xxx&compact=true

                                        The solutions we are looking at are:

                                        1. DWC to revert to using rr_files instead of rr_filelist.

                                        2. Extend rr_filelist to take a "skip the first N files" parameter, and in the response to return the value of N that should be used to get the next chunk of the file list, with N=0 meaning the list is complete.

                                        Most likely we will implement #2.

                                        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

                                        undefined 1 Reply Last reply 25 May 2018, 19:44 Reply Quote 0
                                        • undefined
                                          dc42 administrators @wilriker
                                          last edited by 25 May 2018, 14:27

                                          @wilriker said in New firmware 2.0RC5 available:

                                          I just finished a print with a strange message:

                                          Error: G1/G2/G3: intermediate position outside machine limits
                                          Finished printing file Upgrades/Spool_Holder.gcode, print time was 4h 9m

                                          X is now reported as being -253.69

                                          My end code is the following

                                          G10 P0 R-273.15 S-273.15 ;extruder heater off
                                          M140 S-273.15 ;bed heater off
                                          G91 ;relative positioning
                                          G1 Z+4 X-20 Y+20 F9000 ;move nozzle away from object
                                          G0 S1 X-250 ;move X to the left, so the head is completely out of the way
                                          G90 ;absolute positioning
                                          G0 Y190 F5000 ;move bed to the front
                                          M84 ;steppers off

                                          Could it be that the G0 S1 X-250 in contrast to a G1 S1 X-250 F3600 that is used in my homex.g is the problem here? AFAIK G0 and G1 are aliases on a cartesian setup.

                                          This might not be directly related to RC5 but I never had this message before and I have not modified my end code since updating to RC5.

                                          What printer geometry do you have?

                                          That message is new in RC5 but I don't think it should ever be reported except for G1 moves on SCARA printers and G2 or G3 moves on any type of printer. Maybe it was the G1 Z+4 X-20 Y+20 F9000 command that provoked it? What was the head position prior to executing that command?

                                          A G0 S1 move should behave the same as a G0 S1 move, but I haven't actually tested it.

                                          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

                                          wilrikerundefined 1 Reply Last reply 25 May 2018, 14:35 Reply Quote 0
                                          47 out of 88
                                          • First post
                                            47/88
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA