Welcome! Log In Create A New Profile

Advanced

RepRapFirmware 2.04 and 3.0beta12 released

Posted by dc42 
RepRapFirmware 2.04 and 3.0beta12 released
November 02, 2019 10:13AM
I released RepRapFirmware 2.04 yesterday at [github.com]. This is intended to be the last release in the RepRapFirmware 2 series, because development has now moved to RepRapFirmware 3. Pre-built binaries are provided for Duet 06/085, Duet WiFi/Ethernet, Duet Maestro, and Arduino Due/RADDS.

Today I released RepRapFirmware 3.0beta12 at [github.com]. Pre-built binaries are provided for Duet 3, Duet WiFi/Ethernet, and Duet Maestro. RRF3 provides highly flexible pin allocation which, like everything else, can be configured at boot time or even at run time. It also supports CAN-connected expansion boards on Duet 3.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: RepRapFirmware 2.04 and 3.0beta12 released
November 06, 2019 12:11AM
Thanks for your RADDS support smiling smiley
Re: RepRapFirmware 2.04 and 3.0beta12 released
November 23, 2019 08:29AM
Working on a small RepRap fw compatible board shown at: https://reprap.org/forum/read.php?159,862626

Would you be able to fix RRF, SAM4S variant to compile when:

#define HAS_WIFI_NETWORKING 1
#define SUPPORT_TMC22xx 0
Re: RepRapFirmware 2.04 and 3.0beta12 released
November 23, 2019 05:39PM
Which file fails to compile? Have you defined the pins and SPI channel used to interface to the WiFi module?

Edited 1 time(s). Last edit at 11/23/2019 05:41PM by dc42.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: RepRapFirmware 2.04 and 3.0beta12 released
November 24, 2019 05:34AM
Quote
dc42
Which file fails to compile? Have you defined the pins and SPI channel used to interface to the WiFi module?

Yes, the pins are defined. Attached Pins_DuetM.h.

Errors:

.............
Building file: ../src/Networking/FtpResponder.cpp
Invoking: Cross G++ Compiler
arm-none-eabi-g++ -std=gnu++17 -D__SAM4S8C__ -DRTOS -DDUET_M -D_XOPEN_SOURCE -I"C:\Eclipse\RRFLibraries" -I"C:\Eclipse\FreeRTOS" -I"C:\Eclipse\CoreNG" -I"C:\Eclipse\CoreNG\cores\arduino" -I"C:\Eclipse\CoreNG\libraries\Flash" -I"C:\Eclipse\CoreNG\libraries\SharedSpi" -I"C:\Eclipse\CoreNG\libraries\Storage" -I"C:\Eclipse\CoreNG\libraries\Wire" -I"C:\Eclipse\CoreNG\asf" -I"C:\Eclipse\CoreNG\asf\common\utils" -I"C:\Eclipse\CoreNG\asf\common\services\clock" -I"C:\Eclipse\CoreNG\asf\common\services\ioport" -I"C:\Eclipse\CoreNG\asf\sam\drivers" -I"C:\Eclipse\CoreNG\asf\sam\services\flash_efc" -I"C:\Eclipse\CoreNG\asf\sam\utils" -I"C:\Eclipse\CoreNG\asf\sam\utils\cmsis\sam4s\include" -I"C:\Eclipse\CoreNG\asf\sam\utils\header_files" -I"C:\Eclipse\CoreNG\asf\sam\utils\preprocessor" -I"C:\Eclipse\CoreNG\asf\thirdparty\CMSIS\Include" -I"C:\Eclipse\CoreNG\variants\sam4s" -I"C:\Eclipse\RepRapFirmware\src" -I"C:\Eclipse\RepRapFirmware\src\DuetM" -I"C:\Eclipse\RepRapFirmware\src\Networking" -I"C:\Eclipse\DuetWiFiSocketServer\src\include" -I"C:\Eclipse\FreeRTOS\src\include" -I"C:\Eclipse\FreeRTOS\src\portable\GCC\ARM_CM3" -I"C:\Eclipse\RRFLibraries\src" -O2 -Wall -c -mcpu=cortex-m4 -mthumb -ffunction-sections -fdata-sections -fno-threadsafe-statics -fno-rtti -fno-exceptions -nostdlib -Wdouble-promotion -fsingle-precision-constant "-Wa,-ahl=FtpResponder.s" -MMD -MP -MF"src/Networking/FtpResponder.d" -MT"src/Networking/FtpResponder.o" -o "src/Networking/FtpResponder.o" "../src/Networking/FtpResponder.cpp"
../src/Networking/FirmwareUpdater.cpp: In function 'bool FirmwareUpdater::CheckFirmwareUpdatePrerequisites(uint8_t, const StringRef&)':
../src/Networking/FirmwareUpdater.cpp:35:105: error: 'WIFI_FIRMWARE_FILE' was not declared in this scope
if ((moduleMap & (1 << WifiFirmwareModule)) != 0 && !reprap.GetPlatform().FileExists(DEFAULT_SYS_DIR, WIFI_FIRMWARE_FILE))
^~~~~~~~~~~~~~~~~~
../src/Networking/FirmwareUpdater.cpp:35:105: note: suggested alternative: 'IAP_FIRMWARE_FILE'
if ((moduleMap & (1 << WifiFirmwareModule)) != 0 && !reprap.GetPlatform().FileExists(DEFAULT_SYS_DIR, WIFI_FIRMWARE_FILE))
^~~~~~~~~~~~~~~~~~
IAP_FIRMWARE_FILE
../src/Networking/FirmwareUpdater.cpp: In function 'void FirmwareUpdater::UpdateModule(unsigned int)':
../src/Networking/FirmwareUpdater.cpp:72:32: error: 'WIFI_FIRMWARE_FILE' was not declared in this scope
uploader->SendUpdateFile(WIFI_FIRMWARE_FILE, DEFAULT_SYS_DIR, WifiFirmwareUploader::FirmwareAddress);
^~~~~~~~~~~~~~~~~~
../src/Networking/FirmwareUpdater.cpp:72:32: note: suggested alternative: 'IAP_FIRMWARE_FILE'
uploader->SendUpdateFile(WIFI_FIRMWARE_FILE, DEFAULT_SYS_DIR, WifiFirmwareUploader::FirmwareAddress);
^~~~~~~~~~~~~~~~~~
IAP_FIRMWARE_FILE
src/Networking/subdir.mk:39: recipe for target 'src/Networking/FirmwareUpdater.o' failed
make: *** [src/Networking/FirmwareUpdater.o] Error 1
make: *** Waiting for unfinished jobs....
Finished building: ../src/Networking/FtpResponder.cpp

Pins_DuetM.h
Re: RepRapFirmware 2.04 and 3.0beta12 released
November 25, 2019 02:08AM
You haven't defined WIFI_FIRMWARE_FILE in your Pins file.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: RepRapFirmware 2.04 and 3.0beta12 released
November 25, 2019 03:23AM
Quote
dc42
You haven't defined WIFI_FIRMWARE_FILE in your Pins file.

Thanks, still issues:

Building target: DuetMaestroFirmware.elf
Invoking: Cross G++ Linker
arm-none-eabi-gcc -L"C:\Eclipse\CoreNG\SAM4S" -L"C:\Eclipse\CoreNG\SAM4S" -L"C:\Eclipse\FreeRTOS\SAM4S" -L"C:\Eclipse\RRFLibraries\SAM4S_RTOS" -Os --specs=nano.specs -Wl,--gc-sections -Wl,--fatal-warnings -mcpu=cortex-m4 -T"C:\Eclipse\CoreNG\variants\sam4s\linker_scripts\gcc\flash.ld" -Wl,-Map,"C:\Eclipse\RepRapFirmware\DuetM_RTOS/DuetMaestroFirmware.map" -o "DuetMaestroFirmware.elf" -mthumb -Wl,--cref -Wl,--check-sections -Wl,--gc-sections -Wl,--entry=Reset_Handler -Wl,--unresolved-symbols=report-all -Wl,--warn-common -Wl,--warn-section-align -Wl,--warn-unresolved-symbols -Wl,--start-group "C:\Eclipse/CoreNG/SAM4S/cores/arduino/syscalls.o" ./src/Tools/Filament.o ./src/Tools/Tool.o ./src/Storage/CRC32.o ./src/Storage/FileInfoParser.o ./src/Storage/FileStore.o ./src/Storage/MassStorage.o ./src/ObjectModel/ObjectModel.o ./src/Networking/W5500Ethernet/Wiznet/Internet/DHCP/dhcp.o ./src/Networking/W5500Ethernet/Wiznet/Ethernet/W5500/w5500.o ./src/Networking/W5500Ethernet/Wiznet/Ethernet/WizSpi.o ./src/Networking/W5500Ethernet/Wiznet/Ethernet/socketlib.o ./src/Networking/W5500Ethernet/Wiznet/Ethernet/wizchip_conf.o ./src/Networking/W5500Ethernet/MdnsResponder.o ./src/Networking/W5500Ethernet/W5500Interface.o ./src/Networking/W5500Ethernet/W5500Socket.o ./src/Networking/FirmwareUpdater.o ./src/Networking/FtpResponder.o ./src/Networking/HttpResponder.o ./src/Networking/Network.o ./src/Networking/NetworkBuffer.o ./src/Networking/NetworkResponder.o ./src/Networking/TelnetResponder.o ./src/Networking/UploadingNetworkResponder.o ./src/Movement/StepperDrivers/DriverMode.o ./src/Movement/StepperDrivers/TMC22xx.o ./src/Movement/StepperDrivers/TMC2660.o ./src/Movement/StepperDrivers/TMC51xx.o ./src/Movement/Kinematics/CoreKinematics.o ./src/Movement/Kinematics/HangprinterKinematics.o ./src/Movement/Kinematics/Kinematics.o ./src/Movement/Kinematics/LinearDeltaKinematics.o ./src/Movement/Kinematics/PolarKinematics.o ./src/Movement/Kinematics/RotaryDeltaKinematics.o ./src/Movement/Kinematics/ScaraKinematics.o ./src/Movement/Kinematics/ZLeadscrewKinematics.o ./src/Movement/BedProbing/Grid.o ./src/Movement/BedProbing/RandomProbePointSet.o ./src/Movement/DDA.o ./src/Movement/DDARing.o ./src/Movement/DriveMovement.o ./src/Movement/Move.o ./src/Movement/StepTimer.o ./src/Libraries/sha1/sha1.o ./src/Libraries/Fatfs/diskio.o ./src/Libraries/Fatfs/fattime_rtc.o ./src/Libraries/Fatfs/ff.o ./src/Libraries/Fatfs/ffunicode.o ./src/Heating/Sensors/CpuTemperatureSensor.o ./src/Heating/Sensors/CurrentLoopTemperatureSensor.o ./src/Heating/Sensors/DhtSensor.o ./src/Heating/Sensors/RtdSensor31865.o ./src/Heating/Sensors/SpiTemperatureSensor.o ./src/Heating/Sensors/TemperatureSensor.o ./src/Heating/Sensors/Thermistor.o ./src/Heating/Sensors/ThermocoupleSensor31855.o ./src/Heating/Sensors/ThermocoupleSensor31856.o ./src/Heating/Sensors/TmcDriverTemperatureSensor.o ./src/Heating/FOPDT.o ./src/Heating/Heat.o ./src/Heating/HeaterProtection.o ./src/Heating/Pid.o ./src/Heating/TemperatureError.o ./src/Hardware/DmacManager.o ./src/Hardware/I2C.o ./src/Hardware/IoPorts.o ./src/GCodes/GCodeBuffer.o ./src/GCodes/GCodeInput.o ./src/GCodes/GCodeMachineState.o ./src/GCodes/GCodeQueue.o ./src/GCodes/GCodes.o ./src/GCodes/GCodes2.o ./src/GCodes/GCodes3.o ./src/GCodes/RestorePoint.o ./src/FilamentMonitors/Duet3DFilamentMonitor.o ./src/FilamentMonitors/FilamentMonitor.o ./src/FilamentMonitors/LaserFilamentMonitor.o ./src/FilamentMonitors/PulsedFilamentMonitor.o ./src/FilamentMonitors/RotatingMagnetFilamentMonitor.o ./src/FilamentMonitors/SimpleFilamentMonitor.o ./src/Fans/DotStarLed.o ./src/Fans/Fan.o ./src/Fans/Tacho.o ./src/Display/ST7920/glcd11x14.o ./src/Display/ST7920/glcd7x11.o ./src/Display/ST7920/lcd7920.o ./src/Display/Display.o ./src/Display/Menu.o ./src/Display/MenuItem.o ./src/Display/RotaryEncoder.o ./src/CAN/CanInterface.o ./src/CAN/CanMessageBuffer.o ./src/CAN/CanSender.o ./src/Logger.o ./src/OutputMemory.o ./src/Platform.o ./src/PortControl.o ./src/PrintMonitor.o ./src/RepRap.o ./src/RepRapFirmware.o ./src/Roland.o ./src/Scanner.o ./src/SoftTimer.o ./src/Spindle.o ./src/Tasks.o ./src/ZProbe.o ./src/ZProbeProgrammer.o -lCoreNG -lCoreNG -lFreeRTOS -lRRFLibraries -Wl,--end-group -lm
c:/program files (x86)/gnu tools arm embedded/8 2018-q4-major/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ./src/Networking/FirmwareUpdater.o: in function `FirmwareUpdater::IsReady()':
FirmwareUpdater.cppsad smiley.text._ZN15FirmwareUpdater7IsReadyEv+0x10): warning: undefined reference to `WifiFirmwareUploader::IsReady() const'
c:/program files (x86)/gnu tools arm embedded/8 2018-q4-major/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ./src/Networking/Network.o: in function `Network::HandleWiFiCode(int, GCodeBuffer&, StringRef const&, OutputBuffer*&)':
Network.cppsad smiley.text._ZN7Network14HandleWiFiCodeEiR11GCodeBufferRK9StringRefRP12OutputBuffer+0x38): warning: undefined reference to `WiFiInterface::HandleWiFiCode(int, GCodeBuffer&, StringRef const&, OutputBuffer*&)'
collect2.exe: error: ld returned 1 exit status
makefile:73: recipe for target 'DuetMaestroFirmware.elf' failed
make: *** [DuetMaestroFirmware.elf] Error 1
Re: RepRapFirmware 2.04 and 3.0beta12 released
November 25, 2019 02:39PM
Looks like your build configuration excludes the Networking/ESP8266WiFi folder, because I don't see any of those files in the linker input list. OTOH it does include the W5500 Ethernet files, which it shouldn't do if your board has WiFi instead.

Edited 1 time(s). Last edit at 11/25/2019 02:40PM by dc42.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: RepRapFirmware 2.04 and 3.0beta12 released
March 07, 2020 01:22AM
I looked briefly at the Eclipse settings, DuetM and Duet2 library search paths seems the same ?

The board was intend to have both WiFi or Ethernet connectivity. However probably ESP8266 might not be recommendable solution. What I understood from other comments – Realtek IoT products might be more recommendable. Have you tested – RTL8710, RTL8720DN ... ?
Re: RepRapFirmware 2.04 and 3.0beta12 released
March 10, 2020 10:55AM
I am experiencing some strange issue with Firmware Version: 2.05.1 (2020-02-09b1). Delta printer config - the motors move when command is initiated to move in X and Y direction, but not in Z ?
Re: RepRapFirmware 2.04 and 3.0beta12 released
March 10, 2020 06:39PM
Is this the build for your own board still? 2.05.1 works on my Duet WiFi controlled delta.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: RepRapFirmware 2.04 and 3.0beta12 released
March 12, 2020 06:18AM
Yes, my own board. With the latest version from Github had so far no issue with the Z movement.

Some other issues:
- Platform.cpp, (option #define SUPPORT_TMC22xx 0)
Line #488
// numSmartDrivers = MaxSmartDrivers; // for now we assume that expansion drivers are smart too

Fine just to comment the line ?

Another problem, when initiate homing, I get:

12:08:44Warning: VIN under-voltage event (0.0V)
12:08:40G28
Warning: VIN under-voltage event (0.3V)

And how do you stop the filament retraction after the print ? I tried most of the solutions posted on forums … , still it continues to retract it ?
Re: RepRapFirmware 2.04 and 3.0beta12 released
March 12, 2020 05:29PM
The retraction at the end is because you've sliced the file in absolute extrusion mode and you've got a G1 E-xxx command in your end Gcode without zeroing the extruder position first.

Absolute extrusion is a throwback to the early days of 3D printing. It causes multiple problems and has no place now. It's time it was consigned to history.

Edited 1 time(s). Last edit at 03/12/2020 05:30PM by dc42.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: RepRapFirmware 2.04 and 3.0beta12 released
March 22, 2020 08:04AM
Quote
dc42
The retraction at the end is because you've sliced the file in absolute extrusion mode and you've got a G1 E-xxx command in your end Gcode without zeroing the extruder position first.

No such command.

; Default end code
;G1 X0 Y0 Z130 ; Get extruder out of way. Uncomment to use!
M107 ; Turn off fan
; Disable all extruder
;G91 ; Relative positioning
T0
M104 T0 S0
;G90 ; Absolute positioning
;G93 E0 ; Reset extruder position
M140 S0 ; Disable heated bed
M84 ; Turn steppers off

end.g:
G1 Z5 F360

Quote
dc42
Absolute extrusion is a throwback to the early days of 3D printing. It causes multiple problems and has no place now. It's time it was consigned to history.

Wouldn’t still be useful having it as an option ? Have no such issues with other firmwares.
Re: RepRapFirmware 2.04 and 3.0beta12 released
March 22, 2020 12:41PM
RRF does support absolute extrusion. I wish it didn't have to, because it complicates the firmware in several areas and causes additional problems for users. It was OK is the early days of 3D printing when there was no extrusion factor adjustment, no mixing extruders, no pressure advance, and no resume-after-power-fail functionality.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: RepRapFirmware 2.04 and 3.0beta12 released
November 20, 2020 09:06AM
Just had very strange situation with RRF 2.05.1 (2020-02-09b1). As was mentioned, it seems there are some issues with my experimental board that make the Vin readings fluctuate. However today the firmware got into some loop (during Pause job), showing:

Processing 0:/gcodes/Motormount_Backside_2x +1.gcode, 100%

Processed 0:/gcodes/Motormount_Backside_2x +1.gcode, 100%
Complete

The logs I’m getting are just the Vin fluctuations:

15:53:53Warning: VIN under-voltage event (9.2V)
15:53:48Warning: VIN under-voltage event (9.5V)
15:53:44Warning: VIN under-voltage event (9.2V)
15:53:39Warning: VIN under-voltage event (9.3V)
15:53:34Warning: VIN under-voltage event (9.4V)
15:53:30Warning: VIN under-voltage event (9.5V)
15:53:25Warning: VIN under-voltage event (9.2V)
15:53:21Warning: VIN under-voltage event (9.1V)
15:53:17Warning: VIN under-voltage event (9.3V)
15:53:12Warning: VIN under-voltage event (9.1V)
15:53:07Warning: VIN under-voltage event (9.2V)
15:53:03Warning: VIN under-voltage event (9.4V)
15:52:59Warning: VIN under-voltage event (9.2V)

When I press Resume, get:

15:55:49Warning: VIN under-voltage event (9.1V)
15:55:45Warning: VIN under-voltage event (9.2V)
15:55:40Warning: VIN under-voltage event (9.4V)
15:55:39M24
Printing resumed

And the printer made some moves and stopped again .... No command to disable Vin checks or adjust on fly Vin ?

M911 command:
M911
Auto save is disabled
Re: RepRapFirmware 2.04 and 3.0beta12 released
November 21, 2020 01:59AM
Most likely you have a weak PSU or a bad VIN connection, so that every time you tried to move the motor, the VIN voltage dropped below the minimum. The Trinamic drivers don't work below about 11V.

You can compile RRF with HAS_VOLTAGE_MONITOR disabled.

Edited 1 time(s). Last edit at 11/21/2020 02:01AM by dc42.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: RepRapFirmware 2.04 and 3.0beta12 released
December 14, 2020 02:58PM
Have one board that would like to use it as I2S expansion with SAM4S MINI board. It is a slightly different version of ESP32Controller R2 has 4x 74HC595 8-Bit shift registers.

Could you provide some directions how to add I2S expansion support to RRF ?


Sorry, only registered users may post in this forum.

Click here to login