Skip to content

Commit b59828d

Browse files
committed
Merge tag '2.4.0'
BQ Marlin firmware version 2.4.0
2 parents 94a7aee + 5fd0ce8 commit b59828d

File tree

20 files changed

+3448
-30
lines changed

20 files changed

+3448
-30
lines changed

Documentation/Changelog.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,12 @@
11

2+
# BQ Marlin v2.4.0
3+
---
4+
### Bugfixes:
5+
* Added support for box fan when printing through serial (W2).
6+
7+
### New hardware support:
8+
* Support for new printer Hephestos with BQ-Zum Mega3D board (HZ).
9+
210
# BQ Marlin v2.3.1
311
---
412
### Bugfixes:

Marlin/GuiAction.cpp

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@
4646

4747
#ifdef DOGLCD
4848
#include "StatsManager.h"
49+
#include "FanManager.h"
4950
#endif
5051

5152
bool raised = false;
@@ -671,6 +672,13 @@ void action_start_print()
671672
StatsManager::single::instance().increaseTotalPrints();
672673
#endif //DOGLCD
673674

675+
#ifdef FAN_BOX_PIN
676+
if(FanManager::single::instance().state() == true)
677+
{
678+
digitalWrite(FAN_BOX_PIN, HIGH);
679+
}
680+
#endif //FAN_BOX_PIN
681+
674682
enquecommand_P(PSTR("G90"));
675683
enquecommand_P(PSTR("G92 E0"));
676684
enquecommand_P(PSTR("G1 F1800")); // sets slow initial feedrate
@@ -783,6 +791,13 @@ void action_stop_print()
783791
StatsManager::single::instance().updateTotalTime(printTime);
784792
#endif
785793

794+
#ifdef FAN_BOX_PIN
795+
if(FanManager::single::instance().state() == true)
796+
{
797+
digitalWrite(FAN_BOX_PIN, LOW);
798+
}
799+
#endif //FAN_BOX_PIN
800+
786801
for(int i=0; i != num_ok; i++)
787802
{
788803
SERIAL_PROTOCOLLNPGM(MSG_OK);

Marlin/Makefile

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,10 @@ else ifeq ($(MACHINE_MODEL), Hephestos)
170170
VPATHTEMP += config/hephestos
171171
else ifeq ($(MACHINE_MODEL), Hephestos XL)
172172
VPATHTEMP += config/hephestos_xl
173+
else ifeq ($(MACHINE_MODEL), Hephestos ZUM)
174+
VPATHTEMP += config/hephestos_zum
175+
else ifeq ($(MACHINE_MODEL), Hephestos ZUM XL)
176+
VPATHTEMP += config/hephestos_zum_xl
173177
else ifeq ($(MACHINE_MODEL), Witbox 2)
174178
VPATHTEMP += config/witbox_2
175179
else ifeq ($(MACHINE_MODEL), Hephestos 2)
@@ -427,6 +431,19 @@ hephestos_xl:
427431
$(L) $(COPY) config$(PATHSEP)hephestos_xl$(PATHSEP)Makefile .config_mach
428432
$(L) $(COPY) language$(PATHSEP)en$(PATHSEP)Makefile .config_lang
429433

434+
# 1st Generation printers with new board
435+
hephestos_zum:
436+
$(L) $(ECHO) Configurating for $@ printer...
437+
$(L) $(ECHO) Language selected: English [EN] \(by default\)
438+
$(L) $(COPY) config$(PATHSEP)hephestos_zum$(PATHSEP)Makefile .config_mach
439+
$(L) $(COPY) language$(PATHSEP)en$(PATHSEP)Makefile .config_lang
440+
441+
hephestos_zum_xl:
442+
$(L) $(ECHO) Configurating for $@ printer...
443+
$(L) $(ECHO) Language selected: English [EN] \(by default\)
444+
$(L) $(COPY) config$(PATHSEP)hephestos_zum_xl$(PATHSEP)Makefile .config_mach
445+
$(L) $(COPY) language$(PATHSEP)en$(PATHSEP)Makefile .config_lang
446+
430447
# 2nd Generation printers
431448
witbox_2:
432449
$(L) $(ECHO) Configurating for $@ printer...

Marlin/StorageManager.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -246,10 +246,14 @@ namespace eeprom
246246
{
247247
return BOARD_BQ_ZUM_MEGA_3D;
248248
}
249+
else if(strcmp(board_type, "ZMH") == 0)
250+
{
251+
return BOARD_BQ_HPH_ZUM_3D;
252+
}
249253
else if(strcmp(board_type, "CNC") == 0)
250254
{
251255
return BOARD_BQ_CNC;
252-
}
256+
}
253257
return BOARD_RAMPS_13_EFB;
254258
}
255259

Marlin/TemperatureManager.cpp

Lines changed: 21 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,13 @@
2727

2828
#include <math.h>
2929

30-
#include "TemperatureManager.h"
30+
#include "TemperatureManager.h"
3131

3232
#include "Configuration.h"
3333
#include "temperature.h"
3434
#include "Marlin.h"
3535
#include "cardreader.h"
36+
#include "PrintManager.h"
3637

3738
#ifdef DOGLCD
3839
#include "GuiManager.h"
@@ -78,7 +79,7 @@ namespace temp
7879
ADCSRA = 0x87;
7980
ADCSRB = 0x08;
8081
ADMUX = 0x45;
81-
82+
8283
ADCSRA |= 0x40;
8384
ADCSRA |= 0x10;
8485
delay(1);
@@ -141,9 +142,9 @@ namespace temp
141142
}
142143

143144
for (uint8_t j = 0; j < 4; i++, j++)
144-
{
145-
m_cache[j].raw = pgm_read_word(&(*tt)[i][0]);
146-
m_cache[j].temperature = pgm_read_word(&(*tt)[i][1]);
145+
{
146+
m_cache[j].raw = pgm_read_word(&(*tt)[i][0]);
147+
m_cache[j].temperature = pgm_read_word(&(*tt)[i][1]);
147148
}
148149
}
149150

@@ -161,7 +162,7 @@ namespace temp
161162
{
162163
#ifdef DOGLCD
163164
m_control->setCurrentTemperature(temp);
164-
#endif
165+
#endif
165166
if (m_current_temperature != temp)
166167
{
167168
m_current_temperature = temp;
@@ -242,25 +243,28 @@ namespace temp
242243
#endif //FAN_BLOCK_PIN
243244
if (m_blower_control == true)
244245
{
245-
fanSpeed = 0;
246-
}
246+
fanSpeed = 0;
247+
}
247248
}
248249
#ifdef FAN_BLOWER_PIN
249250
analogWrite(FAN_BLOWER_PIN,fanSpeed);
250251
#endif
251252

252253
#ifdef FAN_BOX_PIN
253-
if(FanManager::single::instance().state() == true)
254-
{
255-
if(card.isFileOpen() == true)
254+
if(FanManager::single::instance().state() == true)
255+
{
256+
if(!card.isFileOpen() && PrintManager::single::instance().state() != SERIAL_CONTROL)
256257
{
258+
if(m_current_temperature > min_temp_cooling)
259+
{
257260
digitalWrite(FAN_BOX_PIN, HIGH);
258-
}
259-
else
260-
{
261+
}
262+
else
263+
{
261264
digitalWrite(FAN_BOX_PIN, LOW);
265+
}
262266
}
263-
}
267+
}
264268
#endif //FAN_BOX_PIN
265269
}
266270

@@ -283,7 +287,7 @@ ISR(TIMER2_OVF_vect)
283287
if (control_flag == true)
284288
{
285289
temp::TemperatureManager::single::instance().m_control->manageControl();
286-
control_flag = false;
290+
control_flag = false;
287291
}
288292

289293
temp_counter++;
@@ -327,4 +331,4 @@ ISR(ADC_vect)
327331
accumulate = 0;
328332
}
329333
}
330-
#endif //DOGLCD
334+
#endif //DOGLCD

Marlin/boards.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@
5353
#define BOARD_WITBOX 41 // bq WITBOX
5454
#define BOARD_HEPHESTOS 42 // bq Prusa i3 Hephestos
5555
#define BOARD_BQ_ZUM_MEGA_3D 43 // bq ZUM Mega 3D
56+
#define BOARD_BQ_HPH_ZUM_3D 44 // bq ZUM Mega 3D for Hephestos ZUM variant
5657

5758
#define BOARD_BAM_DICE 401 // 2PrintBeta BAM&DICE with STK drivers
5859
#define BOARD_BAM_DICE_DUE 402 // 2PrintBeta BAM&DICE Due with STK drivers

Marlin/config/hephestos/Configuration.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
#define MACHINE_NAME "Hephestos"
1414
#define FIRMWARE_URL "http://www.bq.com/gb/support/prusa"
1515
#define SOURCE_CODE_URL "http://github.com/bq/Marlin"
16-
#define FIRMWARE_VER "2.3.1"
16+
#define FIRMWARE_VER "2.4.0"
1717
#define BUILD_VER ""
1818

1919
#define STRING_VERSION_CONFIG_H __DATE__ " " __TIME__ // build date and time

Marlin/config/hephestos_2/Configuration.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
#define MACHINE_NAME "Hephestos 2"
1212
#define FIRMWARE_URL "http://www.bq.com/gb/support/prusa"
1313
#define SOURCE_CODE_URL "http://github.com/bq/Marlin"
14-
#define FIRMWARE_VER "2.3.1"
14+
#define FIRMWARE_VER "2.4.0"
1515
#define BUILD_VER ""
1616
#define STRING_VERSION_CONFIG_H __DATE__ " " __TIME__ // build date and time
1717

Marlin/config/hephestos_xl/Configuration.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
#define MACHINE_NAME "Hephestos"
1414
#define FIRMWARE_URL "http://www.bq.com/gb/support/prusa"
1515
#define SOURCE_CODE_URL "http://github.com/bq/Marlin"
16-
#define FIRMWARE_VER "2.3.1"
16+
#define FIRMWARE_VER "2.4.0"
1717
#define BUILD_VER ""
1818

1919
#define STRING_VERSION_CONFIG_H __DATE__ " " __TIME__ // build date and time

0 commit comments

Comments
 (0)