Updating HIC 3DP-03 to Marlin 1.1.X

Software and Firmware Discussion - related to source code, firmware updates, etc.
Post Reply
User avatar
zembacraftworks
Reactions:
Posts: 4
Joined: August 2nd, 2018, 4:01 pm
3D Printer(s): HIC 3DP-03

Updating HIC 3DP-03 to Marlin 1.1.X

Post by zembacraftworks » August 2nd, 2018, 4:30 pm

Greetings all, I've been running a HICTOP 3DP-03 for a couple years.

I've made a few modifications (new extruder, new hotend, new heated bed), and awhile ago I tracked down the source for the HICTOP firmware to make some minor modifications for those upgrades.

It still works great, but I've been wanting to update to a newer, official Marlin firmware and enable features like thermal runaway protection that are lacking in the stock HICTOP flavour.

It seems like you folks have done quite a bit of that. Any suggestions where to start? I was thinking of starting with Chip Luck's firmware from this thread but I'm curious what differences to look out for between different 3DP model printers.

User avatar
Roberts_Clif
Reactions:
Posts: 787
Joined: March 25th, 2017, 8:17 am
Location: Washington
3D Printer(s): Hictop 3DP11/12

Re: Updating HIC 3DP-03 to Marlin 1.1.X

Post by Roberts_Clif » August 2nd, 2018, 5:43 pm

Do you have your original firmware source code?

I have a 3DP11 and a 3DP12 and started with Chip Luck's firmware presently using Marlin 1.1.5. Thou have configured all Marlin 1.1.X

Post a Link or your configuration.h file, we have many Hictop users here and can get you on the correct path.
Not sure if the M503 works on the 3DP03 but this will print out most of the numbers needed for configuration.h setup.
Tell us about you minor modifications.

Now myself when I upgraded I was a little nervous, so to settle my nerves I purchased a spare Controller so if i messed up I would still have the original.
Today I have two 3D Printers and 2 sets of LCD & Controllers as backups no longer nervous about flashing any new firmware.
Electronics Technician / Computer Programmer

User avatar
zembacraftworks
Reactions:
Posts: 4
Joined: August 2nd, 2018, 4:01 pm
3D Printer(s): HIC 3DP-03

Re: Updating HIC 3DP-03 to Marlin 1.1.X

Post by zembacraftworks » August 2nd, 2018, 8:32 pm

Sure thing! Here's the configuration.h for the firmware I'm currently running. I forget where I downloaded it originally but it was posted as the stock HICTOP firmware for 3DP-03.

The upgrades I've installed are:
  • Replaced stock extruder with E3D Titan Extruder. Moved extruder to top of the printer next to the spool holder and added a bowden tube to the hotend.
  • Replaced stock hotend with E3D v6 hotend.
  • Replaced stock printbed with 1/4" cast aluminum plate (original bed was badly warped and it was impossible to make use of the full build area). Switched to 3-point leveling instead of 4-point. Added silicone heater mat to heat new bed.
And the associated tweaks I've made in the firmware are:

Changing the thermistor tables for the e3d thermistor and the silicone mat. I added Table 11 for the heater mat because it didn't exist in the original firmware I had:

Code: Select all

// 2018-03-24 Note: Changed Hotend to Table 5 for E3D Thermistor cartridge.
// Also added Table 11 for silicone heater mat to thermistortables.h and switched to that for heated bed.

#define TEMP_SENSOR_0 5 		// E3D Thermistor Cartridge
#define TEMP_SENSOR_1 0
#define TEMP_SENSOR_2 0
#define TEMP_SENSOR_BED 11 		// E3D Silicone Heater Mat
And the stepper values for the Titan motor. I think I also calibrated the other steppers but they're still the stock motors so I don't think they changed much, if at all:

Code: Select all

// 2016-12-06 Note: Installed bowden extruder system with approx 600 mm of tubing. Increasing extruder steps to 720 based on cal.

#define DEFAULT_AXIS_STEPS_PER_UNIT   {80,80,406,720}  
#define DEFAULT_MAX_FEEDRATE          {500, 500, 10, 25}    // (mm/sec)
#define DEFAULT_MAX_ACCELERATION      {9000,9000,100,10000}    // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot.
I haven't tuned the PID settings for the hotend or bed because the previous values have been working reasonably well, but I do want to do that eventually.

I think I've also tweaked some smaller things like travel limits (X/Y/Z_MAX_POS), but I haven't had to tweak anything outside of configuration.h other than adding the thermistor table.
Attachments
Configuration.h
(20.52 KiB) Downloaded 81 times

User avatar
Roberts_Clif
Reactions:
Posts: 787
Joined: March 25th, 2017, 8:17 am
Location: Washington
3D Printer(s): Hictop 3DP11/12

Re: Updating HIC 3DP-03 to Marlin 1.1.X

Post by Roberts_Clif » August 2nd, 2018, 9:08 pm

Are planning to setup the auto bed leveling?

Manual using Z-End Stop Switch ( https://github.com/MarlinFirmware/Marli ... d-Leveling )
Auto bed leveling using a Z-Proximity sensor ( http://marlinfw.org/docs/features/auto_ ... eling.html )
Electronics Technician / Computer Programmer

User avatar
zembacraftworks
Reactions:
Posts: 4
Joined: August 2nd, 2018, 4:01 pm
3D Printer(s): HIC 3DP-03

Re: Updating HIC 3DP-03 to Marlin 1.1.X

Post by zembacraftworks » August 2nd, 2018, 11:38 pm

Probably not to start with but I would like to play around with it eventually.

User avatar
Roberts_Clif
Reactions:
Posts: 787
Joined: March 25th, 2017, 8:17 am
Location: Washington
3D Printer(s): Hictop 3DP11/12

Re: Updating HIC 3DP-03 to Marlin 1.1.X

Post by Roberts_Clif » August 3rd, 2018, 8:00 am

Marlin 1.1.5 Configuration.h

Took the liberality of making most changes take a look see if I missed anything.

I used WinMerge to make the changes.

Configuration.h
(62.01 KiB) Downloaded 101 times
Electronics Technician / Computer Programmer

User avatar
zembacraftworks
Reactions:
Posts: 4
Joined: August 2nd, 2018, 4:01 pm
3D Printer(s): HIC 3DP-03

Re: Updating HIC 3DP-03 to Marlin 1.1.X

Post by zembacraftworks » February 11th, 2019, 9:44 pm

Thanks again, @Roberts_Clif! Sorry to take forever getting back to you -- I kept finding new projects to print, and I didn't want to potentially take my printer offline to upgrade the firmware until I had some time to troubleshoot if necessary. Fortunately, Marlin 1.1.5 with the Configuration.h you posted went off almost without a hitch.

As it turns out (for future reference if anyone else with a Hictop is reading this) I did need to invert the endstop logic:

Code: Select all

#define X_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
#define Y_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
#define Z_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
And I changed the motherboard to RAMPS 1.3 instead of 1.4 since that matched the old code 33 from my Hictop configuration.h, although I'm not sure if there's much of a difference:

Code: Select all

#ifndef MOTHERBOARD
  #define MOTHERBOARD BOARD_RAMPS_13_EFB
#endif
Aside from that everything was perfect and it's printing beautifully again. Setting up OctoPrint next!

User avatar
Roberts_Clif
Reactions:
Posts: 787
Joined: March 25th, 2017, 8:17 am
Location: Washington
3D Printer(s): Hictop 3DP11/12

Re: Updating HIC 3DP-03 to Marlin 1.1.X

Post by Roberts_Clif » February 12th, 2019, 7:22 am

zembacraftworks wrote:
February 11th, 2019, 9:44 pm
Marlin 1.1.5 with the Configuration.h you posted went off almost without a hitch.

As it turns out (for future reference if anyone else with a Hictop is reading this) I did need to invert the endstop logic:
This is really strange went back through all my Configuration.h files I do not have a configuration.h with all False.
Must have accidentally Changed the true's to false's in the uploaded configuration.h

My Configuration.h Settings

#define X_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
#define Y_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
#define Z_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
#define X_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
#define Y_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.

Its good you worked it out.

I started off with my Hictop 3D Printers on "MOTHERBOARD BOARD_RAMPS_13_EFB" finally changed to "MOTHERBOARD BOARD_RAMPS_14_EFB" Works Great.
I have 3 Hictop Controllers Base v1.3, MPX.3 and the Newest one MPK_V1 all work with "MOTHERBOARD BOARD_RAMPS_14_EFB".
Electronics Technician / Computer Programmer

Post Reply

Return to “Software and Firmware Discussion”