@chrishamm thanks! Now everything works fine!
Posts made by Arplyu
-
RE: Few questions about building the DSF 3.4.x
-
RE: Few questions about building the DSF 3.4.x
@chrishamm
I built all deb packages for arm64 (for 3.4.4), installed them successfully. I increased SPI buffer size as explained to 8192. Then I enabled both DuetControlServer and DuetWebServer services; successfully connected to DWC from the browser. A macro file created from DWC appeared on the Raspi... BUT! Running tools like CodeConsole and ModelObserver fail withFailed to connect to DCS
. There is one suspicious record in logs, despite I mentioned above:Sep 13 13:42:50 core DuetControlServer[1745]: [warn] Kernel SPI buffer size is smaller than RepRapFirmware buffer size (4096 configured vs 8192 required)
Could that be a problem? If yes, what is wrong? shouldn't file
/etc/modprobe.d/spidev.conf
have set the right size? Or may be I've missed some step in the setup?Thanks!
UPD: I increased buffer size as explained here, the warning from service's log disappeared, but still cannot connect to DCS
-
RE: Few questions about building the DSF 3.4.x
- Roger
- Thanks a lot, I will check it out asap
- Just tested passing
--target=arm64
, seems to build it. I was a little bit confused that this option was not listed in the help. Will try those packages on my raspi a little later.
Thank you very much! I'll get back here if have further questions
-
Few questions about building the DSF 3.4.x
Hi! I'd like to add some minor changes to the DSF. As a first step, I tried to build standard version myself, and the process looked successful but in reality not everything is clear.
Could anybody please answer these questions:
- Which way is actually preferred - makefile in the root directory, or build.sh in /pkg?
- I haven't found in either of those files a target for building reprapfirmware package - what am I missing?
- I compiled .deb for 64-bit raspiOS. If I understand correctly, aarch64 (as it is named in pkg/build.sh) is just another name for the same architecture, but attempt to install from this package fails with
package architecture (aarch64) does not match system (arm64)
(thoughuname
gives aarch64!). Is it known problem?
(please take into consideration these points:
- I need to build version 3.4.4, maximum 3.4.6 - for compatibility with the modified RRF.
- I haven't had experience with .NET stuff and with building .deb packages by myself before, sorry if some questions seem too primitive for experienced users
- my goal is to do compilation of .deb packages for standard raspiOS (both 32 and 64 bits) on my x86-64 ubuntu machine)
Thank you
-
RE: Proper setup for debugging Duet3
@dc42 thank you for the reply. I use commits with tag "3.4.4" in all projects. Non-debug config from the same commits compiles without any problems, I used that as a start point for my modifications.
PS At the same time, checking out 3.4-dev branches at latest commits in all projects works fine - I managed to compile debug config and test the hardware, everything was ok.
-
RE: Proper setup for debugging Duet3
Sorry for getting back again to that topic. I finally found time to try compiling the debug version of MB6HC code. However, I'm getting errors if I try to compile for original 3.4.4 (my modified code is based on that, so I'd like to start from exactly this version):
Building target: Duet3Firmware_MB6HC_Debug.elf Invoking: Cross G++ Linker arm-none-eabi-gcc -L"/RRF/CoreN2G/SAME70_CAN_SDHC_USB_RTOS_Debug" -L"/RRF/RRFLibraries/SAME70_RTOS_Debug" -L"/RRF/FreeRTOS/SAME70_Debug" -L"/RRF/CANlib/SAME70_RTOS_Debug" --specs=nosys.specs -Os -Wl,--gc-sections -Wl,--fatal-warnings -mcpu=cortex-m7 -mfpu=fpv5-d16 -mfloat-abi=hard -T"/RRF/RepRapFirmware/src/Hardware/SAME70/same70q20b_flash.ld" -Wl,-Map,"/RRF/RepRapFirmware/Duet3_Debug/Duet3Firmware_MB6HC_Debug.map" -o "Duet3Firmware_MB6HC_Debug.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 ./src/libcpp/eh_alloc.o ./src/libcpp/vterminate.o ./src/libc/memcmp.o ./src/libc/memcpy.o ./src/libc/memmove.o ./src/libc/memset.o ./src/libc/nano-mallocr.o ./src/libc/strptime.o ./src/bossa/Applet.o ./src/bossa/BossaFlash.o ./src/bossa/Device.o ./src/bossa/EefcFlash.o ./src/bossa/Flasher.o ./src/bossa/Samba.o ./src/bossa/WordCopyApplet.o ./src/bossa/WordCopyArm.o ./src/Tools/Filament.o ./src/Tools/Spindle.o ./src/Tools/Tool.o ./src/Storage/CRC16.o ./src/Storage/CRC32.o ./src/Storage/EmbeddedFiles.o ./src/Storage/FileInfoParser.o ./src/Storage/FileStore.o ./src/Storage/MassStorage.o ./src/SBC/DataTransfer.o ./src/SBC/SbcInterface.o ./src/PrintMonitor/PrintMonitor.o ./src/Platform/Event.o ./src/Platform/Heap.o ./src/Platform/Logger.o ./src/Platform/OutputMemory.o ./src/Platform/Platform.o ./src/Platform/PortControl.o ./src/Platform/RepRap.o ./src/Platform/Roland.o ./src/Platform/Scanner.o ./src/Platform/Tasks.o ./src/Platform/UniqueId.o ./src/ObjectModel/GlobalVariables.o ./src/ObjectModel/ObjectModel.o ./src/ObjectModel/Variable.o ./src/Networking/MulticastDiscovery/MulticastResponder.o ./src/Networking/MulticastDiscovery/fgmc_protocol.o ./src/Networking/LwipEthernet/Lwip/src/netif/bridgeif.o ./src/Networking/LwipEthernet/Lwip/src/netif/bridgeif_fdb.o ./src/Networking/LwipEthernet/Lwip/src/netif/ethernet.o ./src/Networking/LwipEthernet/Lwip/src/netif/lowpan6.o ./src/Networking/LwipEthernet/Lwip/src/netif/lowpan6_ble.o ./src/Networking/LwipEthernet/Lwip/src/netif/lowpan6_common.o ./src/Networking/LwipEthernet/Lwip/src/netif/slipif.o ./src/Networking/LwipEthernet/Lwip/src/netif/zepif.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv6/dhcp6.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv6/ethip6.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv6/icmp6.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv6/inet6.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv6/ip6.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv6/ip6_addr.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv6/ip6_frag.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv6/mld6.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv6/nd6.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv4/autoip.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv4/dhcp.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv4/etharp.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv4/icmp.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv4/igmp.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv4/ip4.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv4/ip4_addr.o ./src/Networking/LwipEthernet/Lwip/src/core/ipv4/ip4_frag.o ./src/Networking/LwipEthernet/Lwip/src/core/altcp.o ./src/Networking/LwipEthernet/Lwip/src/core/altcp_alloc.o ./src/Networking/LwipEthernet/Lwip/src/core/altcp_tcp.o ./src/Networking/LwipEthernet/Lwip/src/core/def.o ./src/Networking/LwipEthernet/Lwip/src/core/dns.o ./src/Networking/LwipEthernet/Lwip/src/core/inet_chksum.o ./src/Networking/LwipEthernet/Lwip/src/core/init.o ./src/Networking/LwipEthernet/Lwip/src/core/ip.o ./src/Networking/LwipEthernet/Lwip/src/core/mem.o ./src/Networking/LwipEthernet/Lwip/src/core/memp.o ./src/Networking/LwipEthernet/Lwip/src/core/netif.o ./src/Networking/LwipEthernet/Lwip/src/core/pbuf.o ./src/Networking/LwipEthernet/Lwip/src/core/raw.o ./src/Networking/LwipEthernet/Lwip/src/core/stats.o ./src/Networking/LwipEthernet/Lwip/src/core/sys.o ./src/Networking/LwipEthernet/Lwip/src/core/tcp.o ./src/Networking/LwipEthernet/Lwip/src/core/tcp_in.o ./src/Networking/LwipEthernet/Lwip/src/core/tcp_out.o ./src/Networking/LwipEthernet/Lwip/src/core/timeouts.o ./src/Networking/LwipEthernet/Lwip/src/core/udp.o ./src/Networking/LwipEthernet/Lwip/src/apps/netbiosns/netbiosns.o ./src/Networking/LwipEthernet/Lwip/src/apps/mdns/mdns.o ./src/Networking/LwipEthernet/Lwip/src/api/api_lib.o ./src/Networking/LwipEthernet/Lwip/src/api/api_msg.o ./src/Networking/LwipEthernet/Lwip/src/api/err.o ./src/Networking/LwipEthernet/Lwip/src/api/if_api.o ./src/Networking/LwipEthernet/Lwip/src/api/netbuf.o ./src/Networking/LwipEthernet/Lwip/src/api/netdb.o ./src/Networking/LwipEthernet/Lwip/src/api/netifapi.o ./src/Networking/LwipEthernet/Lwip/src/api/sockets.o ./src/Networking/LwipEthernet/Lwip/src/api/tcpip.o ./src/Networking/LwipEthernet/GMAC/ethernet_sam.o ./src/Networking/LwipEthernet/LwipEthernetInterface.o ./src/Networking/LwipEthernet/LwipSocket.o ./src/Networking/FtpResponder.o ./src/Networking/HttpResponder.o ./src/Networking/Network.o ./src/Networking/NetworkBuffer.o ./src/Networking/NetworkInterface.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/FiveBarScaraKinematics.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/RoundBedKinematics.o ./src/Movement/Kinematics/ScaraKinematics.o ./src/Movement/Kinematics/ZLeadscrewKinematics.o ./src/Movement/HeightControl/HeightController.o ./src/Movement/BedProbing/Grid.o ./src/Movement/BedProbing/RandomProbePointSet.o ./src/Movement/AxisShaper.o ./src/Movement/DDA.o ./src/Movement/DDARing.o ./src/Movement/DriveMovement.o ./src/Movement/ExtruderShaper.o ./src/Movement/Move.o ./src/Movement/MoveSegment.o ./src/Movement/RawMove.o ./src/Movement/StepTimer.o ./src/Libraries/sha1/sha1.o ./src/Libraries/sd_mmc/ctrl_access.o ./src/Libraries/sd_mmc/sd_mmc.o ./src/Libraries/sd_mmc/sd_mmc_mem.o ./src/Libraries/sd_mmc/sd_mmc_spi.o ./src/Libraries/Fatfs/diskio.o ./src/Libraries/Fatfs/fattime_rtc.o ./src/Libraries/Fatfs/ff.o ./src/Libraries/Fatfs/ffunicode.o ./src/InputMonitors/InputMonitor.o ./src/Heating/Sensors/AdditionalOutputSensor.o ./src/Heating/Sensors/CpuTemperatureSensor.o ./src/Heating/Sensors/CurrentLoopTemperatureSensor.o ./src/Heating/Sensors/DhtSensor.o ./src/Heating/Sensors/LinearAnalogSensor.o ./src/Heating/Sensors/RemoteSensor.o ./src/Heating/Sensors/RtdSensor31865.o ./src/Heating/Sensors/SensorWithPort.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/Heater.o ./src/Heating/HeaterMonitor.o ./src/Heating/LocalHeater.o ./src/Heating/RemoteHeater.o ./src/Heating/TemperatureError.o ./src/Hardware/SharedSpi/SharedSpiClient.o ./src/Hardware/SharedSpi/SharedSpiDevice.o ./src/Hardware/SAME70/Ethernet/ksz8081rna/ethernet_phy.o ./src/Hardware/SAME70/Ethernet/GmacInterface.o ./src/Hardware/SAME70/Devices.o ./src/Hardware/SAME70/Main.o ./src/Hardware/ExceptionHandlers.o ./src/Hardware/I2C.o ./src/Hardware/IoPorts.o ./src/Hardware/NonVolatileMemory.o ./src/Hardware/SoftwareReset.o ./src/GPIO/GpInPort.o ./src/GPIO/GpOutPort.o ./src/GCodes/GCodeBuffer/BinaryParser.o ./src/GCodes/GCodeBuffer/ExpressionParser.o ./src/GCodes/GCodeBuffer/GCodeBuffer.o ./src/GCodes/GCodeBuffer/StringParser.o ./src/GCodes/GCodeException.o ./src/GCodes/GCodeFileInfo.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/GCodes4.o ./src/GCodes/ObjectTracker.o ./src/GCodes/RestorePoint.o ./src/GCodes/StraightProbeSettings.o ./src/GCodes/TriggerItem.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/Fan.o ./src/Fans/FansManager.o ./src/Fans/LedStripDriver.o ./src/Fans/LocalFan.o ./src/Fans/RemoteFan.o ./src/Endstops/Endstop.o ./src/Endstops/EndstopsManager.o ./src/Endstops/LocalZProbe.o ./src/Endstops/RemoteZProbe.o ./src/Endstops/StallDetectionEndstop.o ./src/Endstops/SwitchEndstop.o ./src/Endstops/ZProbe.o ./src/Endstops/ZProbeEndstop.o ./src/Config/Pins.o ./src/Comms/AuxDevice.o ./src/Comms/FirmwareUpdater.o ./src/Comms/PanelDueUpdater.o ./src/ClosedLoop/ClosedLoop.o ./src/CAN/CanDriversData.o ./src/CAN/CanInterface.o ./src/CAN/CanMessageGenericConstructor.o ./src/CAN/CanMotion.o ./src/CAN/CommandProcessor.o ./src/CAN/ExpansionManager.o ./src/Accelerometers/Accelerometers.o ./src/Accelerometers/LIS3DH.o ./src/RepRapFirmware.o ./src/Version.o -lCoreN2G -lRRFLibraries -lFreeRTOS -lCANlib -lsupc++ -Wl,--end-group -lm /opt/gcc-arm-none-eabi-10.3-2021.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./src/SBC/DataTransfer.o: in function `SPI1_Handler': /RRF/RepRapFirmware/Duet3_Debug/../src/SBC/DataTransfer.cpp:366: warning: undefined reference to `SPI1_WiFi_Handler()' /opt/gcc-arm-none-eabi-10.3-2021.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./src/Networking/Network.o: in function `Network::HandleWiFiCode(int, GCodeBuffer&, StringRef const&, OutputBuffer*&)': /RRF/RepRapFirmware/Duet3_Debug/../src/Networking/Network.cpp:366: warning: undefined reference to `WiFiInterface::HandleWiFiCode(int, GCodeBuffer&, StringRef const&, OutputBuffer*&)' /opt/gcc-arm-none-eabi-10.3-2021.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./src/Networking/Network.o: in function `Network::ResetWiFiForUpload(bool)': /RRF/RepRapFirmware/Duet3_Debug/../src/Networking/Network.cpp:406: warning: undefined reference to `WiFiInterface::ResetWiFiForUpload(bool)' /opt/gcc-arm-none-eabi-10.3-2021.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./src/Networking/Network.o: in function `Network::CreateAdditionalInterface()': /RRF/RepRapFirmware/Duet3_Debug/../src/Networking/Network.cpp:205: warning: undefined reference to `WiFiInterface::WiFiInterface(Platform&)' /opt/gcc-arm-none-eabi-10.3-2021.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: /RRF/RepRapFirmware/Duet3_Debug/../src/Networking/Network.cpp:207: warning: undefined reference to `WiFiInterface::Init()' /opt/gcc-arm-none-eabi-10.3-2021.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./src/Comms/FirmwareUpdater.o: in function `FirmwareUpdater::IsReady()': /RRF/RepRapFirmware/Duet3_Debug/../src/Comms/FirmwareUpdater.cpp:85: warning: undefined reference to `WifiFirmwareUploader::IsReady() const' /opt/gcc-arm-none-eabi-10.3-2021.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/bin/ld: ./src/Comms/FirmwareUpdater.o: in function `FirmwareUpdater::UpdateModule(unsigned int, unsigned int, StringRef const&)': /RRF/RepRapFirmware/Duet3_Debug/../src/Comms/FirmwareUpdater.cpp:124: warning: undefined reference to `WifiFirmwareUploader::SendUpdateFile(char const*, unsigned long)' collect2: error: ld returned 1 exit status make[1]: *** [makefile:114: Duet3Firmware_MB6HC_Debug.elf] Error 1 make: *** [makefile:99: all] Error 2 "make -j12 all" terminated with exit code 2. Build might be incomplete.
Do you have any ideas what was wrong? Thank you
-
RE: Duet3Bootloader compilation pt.2 - SAME5x target
@dc42 Thank you very much for quick reply! I changed branches to 3.5-dev, and the old issues are gone now. However, there is one new issue
../src/Bootloader.cpp: In function 'void GetBlock(uint32_t, uint32_t&)': ../src/Bootloader.cpp:211:30: error: 'CanMessageBuffer::CanMessageBuffer(CanMessageBuffer*)' is private within this context 211 | CanMessageBuffer buf(nullptr); | ^ In file included from ../src/Bootloader.cpp:22: /mnt/NTFSD/DEV/3DTech-Brinter/RRF-Brinter/CANlib/src/CanMessageBuffer.h:186:2: note: declared private here 186 | CanMessageBuffer(CanMessageBuffer *prev) noexcept : next(prev), managed(true) { } | ^~~~~~~~~~~~~~~~
Seems like moving CanMessageBuffer(CanMessageBuffer *prev) to public fixes the issue, but could you please check if the public repo contains the latest changes? Now the latest commit in 3.5-dev is 8eda57b890b2768bf5b16fcb692f98f68cad5e16.
Thank you!
-
Duet3Bootloader compilation pt.2 - SAME5x target
Hi, I need to build customized bootloader for SAME51 chip. Unfortunately, there are some issues:
../src/BoardType.cpp: In function 'unsigned int ReadAndQuantise(uint8_t, const uint16_t*, size_t)': ../src/BoardType.cpp:106:37: error: 'ReadChannel' is not a member of 'AnalogIn' 106 | const uint16_t reading = AnalogIn::ReadChannel(CommonAdcDevice, chan); | ^~~~~~~~~~~ ../src/BoardType.cpp: In function 'bool IdentifyBoard(CanAddress&, bool&, bool&)': ../src/BoardType.cpp:177:13: error: 'Init' is not a member of 'AnalogIn' 177 | AnalogIn::Init(CommonAdcDevice); | ^~~~ ../src/BoardType.cpp:180:13: error: 'Disable' is not a member of 'AnalogIn' 180 | AnalogIn::Disable(CommonAdcDevice); // finished using the ADC | ^~~~~~~
I see that all implementation of AnalogIn namespace for SAME5x chip (./src/SAME5x_C21/SAME5x/AnalogIn.cpp) goes excluded since it's completely under "#ifdef RTOS" condition, while in bootloader RTOS is not used. Are there errors in the source files, or am I missing something in my workspace setup? Thank you in advance.
P.S. Used branches and configs:
-
RRFLibraries 3.4-dev/SAME51
-
list itemCoreN2G 3.4-dev/SAME5x_CAN
-
list itemDuet3Bootloader dev/SAME5x
-
list itemCANLib 3.4-dev/SAME51_nonRTOS
All local branches updated 1.07.2023
-
-
RE: Proper setup for debugging Duet3
@dc42 Thanks for this note, that was exactly one of my questions when I started this topic, but unfortunately I didn't specify that I also have hardware revision 1.02. I'll test with debug config next week
-
RE: Proper setup for debugging Duet3
@LexJames Hi! I solved my particular coding issue without debugger, so I didn't try to get Atmel-ICE working anymore since that. But thank you for getting back to the problem, I still would like to figure out what was wrong with my setup. Just to make it clear: the Atmel-ICE which I have at hands is absolutely functional, it works perfectly when it comes to programming SAMMYC21 devboard, on which I test my modifications to DuetExpansion firmware and DuetBootloader. For debugging Duet3-6HC board I'd like to re-assemble the cable, and here I have a possibly very stupid question, sorry for asking that: how should I map 6HC' SWD_EXT_RESET pin to the Atmel-ICE's pinout? I just realized that in my test it was not connected. I suppose that 6HC's RESET goes to Atmel's nRESET, but what about SWD_EXT_RESET?... Hopefully @dc42 or @chrishamm could also comment regarding the pinout. Thanks!
-
RE: Proper setup for debugging Duet3
@chrishamm Thank you for the reply. I will check the pinout one more time.
-
Proper setup for debugging Duet3
Hi,
sorry for possibly stupid questions but I'm now going to do something which I haven't done before and need help with quite basic things.
I've used to debug my mods for RRF by printing out with debugPrint, but I faced some troubles in which this was not enough. So I'd like to do proper debugging.What I have done by the moment:
- I've got Atmel-Ice, but with custom cable. When I connect Atmel-Ice to Duet, the green light on Atmel at least goes up.
- I tried to connect to Duet3 from Microchip Studio. But the only positive result is reading voltage. Reading the device ID results in:
No device detected. Error 4109 Unable to enter programming mode. Verify device selection, interface settings, target power, security bit, and connections to the target device.
- I tried to connect with openocd from linux, using script from RRF repository, but it resulted in:
Open On-Chip Debugger 0.11.0 Licensed under GNU GPL v2 For bug reports, read http://openocd.org/doc/doxygen/bugs.html DEPRECATED! use 'adapter driver' not 'interface' Info : auto-selecting first available session transport "swd". To override use 'transport select <transport>'. Info : flash bank command Info : Listening on port 6666 for tcl connections Info : Listening on port 4444 for telnet connections Info : CMSIS-DAP: SWD Supported Info : CMSIS-DAP: JTAG Supported Info : CMSIS-DAP: FW Version = 1.0 Info : CMSIS-DAP: Serial# = J41800043599 Info : CMSIS-DAP: Interface Initialised (SWD) Info : SWCLK/TCK = 1 SWDIO/TMS = 1 TDI = 1 TDO = 1 nTRST = 0 nRESET = 1 Info : CMSIS-DAP: Interface ready Info : clock speed 1800 kHz Error: Error connecting DP: cannot read IDR
Could anybody answer these questions:
- Do I understand right that Atmel-Ice is a suitable hardware for Duet3 at all?
- Is it absolutely necessary to use debug configuration to at least read chip id? My custom configuration was based on release config for Duet3 6HC.
- As I mentioned, the cable is custom though I checked many times and was quite sure about pinout correctness. Can there be any other problems causing the aforementioned error messages, beside possibly wrong pinout/non-debug config?
- Please comment on the topic if you see other problems in my description.
Thanks!
-
RE: Duet3Bootloader compilation
@dc42 thanks, and sorry for taking your time with this problem. I've double checked, I'm pretty sure I use the latest commits on exactly those branches. Just in case:
CANLib
d2210cd9cdde4e40c4c575b273b58ddc75600b91CoreN2G
de512d3ce8c7add8c7230a102086b652f036f26eBootloader
a3a9567a427e9749796ec037e2c989d7ff571005RRFLibraries
a7260b7073f5b0a7e6940587ae34a0584f8ceee7 -
RE: Duet3Bootloader compilation
@dc42 thank you for the reply.
My goals are 1. research interest 2. adding own configuration to the expansion board firmware and a corresponding binary name to the bootloader (to update via CAN). The new config will be based on SAMMYC21, therefore I try to build first the standard SAMMYC21 configuration.I tried with adding CoreN2G project (config SAMC21_nonRTOS) and setting branch names according to the updated instructions. However, compilation failed again. I've tried in both Linux and Windows (I used to work with RRF3 in Linux during last 1.5 years and everything has always been ok; I haven't had any problems with compilation for expansion board firmware in Linux neither).
The errors were similar in both systems:../src/Bootloader.cpp: In function 'void GetBlock(uint32_t, uint32_t&)': ../src/Bootloader.cpp:211:19: error: no matching function for call to 'CanMessageBuffer::CanMessageBuffer()' 211 | CanMessageBuffer buf; | ^~~ In file included from ../src/Bootloader.cpp:22: /mnt/NTFSD/DEV/DUET_BOOTLOADER/CANlib/src/CanMessageBuffer.h:28:2: note: candidate: 'CanMessageBuffer::CanMessageBuffer(CanMessageBuffer*)' 28 | CanMessageBuffer(CanMessageBuffer *prev) noexcept : next(prev) { } | ^~~~~~~~~~~~~~~~ /mnt/NTFSD/DEV/DUET_BOOTLOADER/CANlib/src/CanMessageBuffer.h:28:2: note: candidate expects 1 argument, 0 provided /mnt/NTFSD/DEV/DUET_BOOTLOADER/CANlib/src/CanMessageBuffer.h:25:7: note: candidate: 'constexpr CanMessageBuffer::CanMessageBuffer(const CanMessageBuffer&)' 25 | class CanMessageBuffer | ^~~~~~~~~~~~~~~~ /mnt/NTFSD/DEV/DUET_BOOTLOADER/CANlib/src/CanMessageBuffer.h:25:7: note: candidate expects 1 argument, 0 provided /mnt/NTFSD/DEV/DUET_BOOTLOADER/CANlib/src/CanMessageBuffer.h:25:7: note: candidate: 'constexpr CanMessageBuffer::CanMessageBuffer(CanMessageBuffer&&)' /mnt/NTFSD/DEV/DUET_BOOTLOADER/CANlib/src/CanMessageBuffer.h:25:7: note: candidate expects 1 argument, 0 provided make[1]: *** [src/subdir.mk:26: src/Bootloader.o] Error 1 make: *** [makefile:56: all] Error 2
-
RE: Duet3Bootloader compilation
@dc42 sorry, I missed your reply while was writing my response to @droftarts . Yes, I mean bootloader for CAN-boards, more precisely for SAMMYC21
-
RE: Duet3Bootloader compilation
@droftarts Thanks for reply! Yes, I used those instructions. I chose the branches as said in the instructions. I don't remember, where I saw the build configs for bootloader, but AFAIR there should be non-RTOS configs. So I selected SAMC21_nonRTOS for CANLib, SAMC21 for RRFLibraries and SAMMYC21 for the main project. The target board for which I want to build the bootloader is SAMMYC21. So, as a result I get the following error when compiling RRFLibraries:
../src/Math/Isqrt.cpp:7:11: fatal error: Core.h: No such file or directory 7 | # include <Core.h> | ^~~~~~~~
which possiblyt refers to Core.h from CoreN2G (???), however nothing is said that this should be added to the workspace (anyways, adding CoreN2G didn't help and induced even more errors). In turn, error in RRFLIbraries doesn't allow to compile the main project.
-
Duet3Bootloader compilation
Hi, could anybody confirm if the compilation instructions available in the bootloader repository's readme are still valid? Or if not, are there correct instructions available anywhere else? To me it looks like the instructions from readme are outdated, or I do something wrong. Thanks!
-
RE: Configuration of OUT_7 connector on Duet3-6HC
@jay_s_uk my bad, I'm lacking knowledge in electronics The easiest way was just to test with a real fan, which I have done now. Everything works as expected.