11#ifndef PINS_SAME70_H__
22#define PINS_SAME70_H__
33
4- #define BOARD_SHORT_NAME " MB6HC"
5- #define FIRMWARE_NAME " RepRapFirmware for Duet 3 v0.6"
6- #define DEFAULT_BOARD_TYPE BoardType::Duet3_06
4+ #define BOARD_SHORT_NAME " MB6HC"
5+ #define FIRMWARE_NAME " RepRapFirmware for Duet 3 MB6HC v0.6 or 1.0 "
6+ #define DEFAULT_BOARD_TYPE BoardType::Duet3
77const size_t NumFirmwareUpdateModules = 1 ;
88
9- #define IAP_FIRMWARE_FILE " Duet3Firmware_" BOARD_SHORT_NAME " .bin"
10- #define IAP_UPDATE_FILE " Duet3iap_sd_" BOARD_SHORT_NAME " .bin"
9+ #define IAP_FIRMWARE_FILE " Duet3Firmware_" BOARD_SHORT_NAME " .bin"
10+ #define IAP_UPDATE_FILE " Duet3iap_sd_" BOARD_SHORT_NAME " .bin"
1111
1212// Features definition
1313#define HAS_LWIP_NETWORKING 1
@@ -34,7 +34,7 @@ const size_t NumFirmwareUpdateModules = 1;
3434#define SUPPORT_SCANNER 0 // set zero to disable support for FreeLSS scanners
3535#define SUPPORT_LASER 1 // support laser cutters and engravers using G1 S parameter
3636#define SUPPORT_IOBITS 1 // set to support P parameter in G0/G1 commands
37- #define SUPPORT_DHT_SENSOR 0 // Temporary! // set nonzero to support DHT temperature/humidity sensors
37+ #define SUPPORT_DHT_SENSOR 1 // set nonzero to support DHT temperature/humidity sensors
3838#define SUPPORT_WORKPLACE_COORDINATES 1 // set nonzero to support G10 L2 and G53..59
3939#define SUPPORT_OBJECT_MODEL 1
4040#define SUPPORT_FTP 1
@@ -67,11 +67,13 @@ constexpr size_t MaxZProbes = 4;
6767constexpr size_t MaxGpioPorts = 12 ;
6868
6969constexpr size_t MinAxes = 3 ; // The minimum and default number of axes
70- constexpr size_t MaxAxes = 9 ; // The maximum number of movement axes in the machine, usually just X, Y and Z, <= DRIVES
70+ constexpr size_t MaxAxes = 10 ; // The maximum number of movement axes in the machine
7171constexpr size_t MaxDriversPerAxis = 5 ; // The maximum number of stepper drivers assigned to one axis
7272
7373constexpr size_t MaxExtruders = 16 ; // The maximum number of extruders
74- constexpr size_t NumDefaultExtruders = 3 ; // The number of drivers that we configure as extruders by default
74+ constexpr size_t NumDefaultExtruders = 1 ; // The number of drivers that we configure as extruders by default
75+
76+ constexpr size_t MaxAxesPlusExtruders = 20 ; // May be <= MaxAxes + MaxExtruders
7577
7678constexpr size_t MaxHeatersPerTool = 4 ;
7779constexpr size_t MaxExtrudersPerTool = 6 ;
@@ -232,9 +234,9 @@ constexpr PinEntry PinTable[] =
232234 { PortAPin (3 ), PinCapability::rw, " io3.out" },
233235 { PortEPin (0 ), PinCapability::rwpwm, " io4.out" },
234236 { PortDPin (21 ), PinCapability::rwpwm, " io5.out" },
235- { PortAPin (0 ), PinCapability::rwpwm, " io6.out" },
237+ { PortAPin (0 ), PinCapability::rw, " io6.out" },
236238 { PortCPin (23 ), PinCapability::rwpwm, " io7.out" },
237- { PortEPin (1 ), PinCapability::rwpwm, " io8.out" },
239+ { PortEPin (1 ), PinCapability::rw, " io8.out" }, // this pin could be PWM capable but shares the TC with io7.out, so the PWM frequencies are not independent
238240
239241 // Thermistor inputs
240242 { PortCPin (15 ), PinCapability::ainr, " temp0" },
@@ -265,13 +267,18 @@ constexpr Pin LinuxTfrReadyPin = PortEPin(2);
265267Spi * const LinuxSpi = SPI1;
266268
267269// Timer allocation
270+
271+ #if !LWIP_GMAC_TASK
272+
268273// Network timer is timer 4 aka TC1 channel1
269274#define NETWORK_TC (TC1)
270275#define NETWORK_TC_CHAN (1 )
271276#define NETWORK_TC_IRQN TC4_IRQn
272277#define NETWORK_TC_HANDLER TC4_Handler
273278#define NETWORK_TC_ID ID_TC4
274279
280+ #endif
281+
275282// Step timer is timer 2 aka TC0 channel 2
276283#define STEP_TC (TC0)
277284#define STEP_TC_CHAN (2 )
0 commit comments