Re: Davinci Jr Repetier Port
Is there any progress in porting the Repetier firmware to the DaVinci Jr.? Love to see that on my DaVinci Jr.
You are not logged in. Please login or register.
SoliForum - 3D Printing Community → XYZ Printing Hacks & Mods → Davinci Jr Repetier Port
Is there any progress in porting the Repetier firmware to the DaVinci Jr.? Love to see that on my DaVinci Jr.
@ XYLenTech
hi LenTech,
in post number 6 you wrote that You are able to read from the chip. Could You please figure out wether this from the chip is encrypted or decrypted and is it the firmware or anything else?
Regards
Ralph
Just a thought, but I'd read somewhere amongst the various threads about putting the Jr. in Bootloader Mode. Not sure if this would have any similarities to a JTAG interface with trace and debugging facilities, but maybe? And, if so or something along the same lines, could possibly dump the unencrypted FW in flash? Just thinking out loud for better or worse.
Doc
@ XYLenTech
hi LenTech,
in post number 6 you wrote that You are able to read from the chip. Could You please figure out wether this from the chip is encrypted or decrypted and is it the firmware or anything else?Regards
Ralph
Just like all Da Vinci models it is encrypted. When you read from the device all you get is a hex file. That files will have to be decompiled. In order to do that you have to know how it was compiled.
Just a thought, but I'd read somewhere amongst the various threads about putting the Jr. in Bootloader Mode. Not sure if this would have any similarities to a JTAG interface with trace and debugging facilities, but maybe? And, if so or something along the same lines, could possibly dump the unencrypted FW in flash? Just thinking out loud for better or worse.
Doc
Yes, you can start bootloader mode on the Jr and flash it, but Repetier still doesn't have definitions for the pins on the Jr board. Someone needs to work that out still, and I don't think the motivation for doing so is very high on this model.
I went a different route and got rid of the board altogether.
This card uses the same MCU that the Printer Da Vinci Jr (ATSAM4E8E)
Here you can see a process to load the firmware:
https://duet3d.com/wiki/Duet_Wifi_Wiki
https://duet3d.com/wiki/Updating_main_firmware
using a tool Atmel:
http://www.atmel.com/tools/atmelsam-bai … ab=devices
Even this card is for 3D printers
Has this progress been kept alive?
Has this progress been kept alive?
Efforts for a repetier conversion seem to have just died. It seems it is most likely easier to just replace the controller with a RAMPS setup and call it done. I would have liked to have seen someone just crack this POS open so those of us with wives and budgets would be able to thumb our noses at XYZ and their overpriced, limited option and color, limited availability proprietary filaments and just rip that incredibly stupid NFC reader out of the machine forever! Not to mention the horrid excuse for software XYZ vomits onto our computers along with their own advertising. It appears they spend much more time and energy developing their advertising than they do making effective software.
The only positive thing I can possibly say about XYZ is that they did spend some time on the enclosure of the Jr. Obviously much more than into anything else including packaging as mine arrived with the left side plastic having been banged during shipping and cracked at the top. Aesthetics, surely, but still.
As there seems to be no further development on a repetier port, I'll surely be looking into a RAMPS conversion while trying to maintain the integrity of the existing enclosure.
No, it is much easier just to replace firmware... Hardware replacement requires major rewiring because connectors and cabling are not compatible...
I just bought my jr used for US$ 135 and planning just to do that, porting Marlin starting with pin assignment for the processor...
It looks that this is an advanced board since it has laser scanner features partially populated...
It is going to be fun anyway...
Marlin support SAM4E8E cpu ?
No, it is much easier just to replace firmware... Hardware replacement requires major rewiring because connectors and cabling are not compatible...
I just bought my jr used for US$ 135 and planning just to do that, porting Marlin starting with pin assignment for the processor...
It looks that this is an advanced board since it has laser scanner features partially populated...
It is going to be fun anyway...
Actually swapping the hardware would be much easier. As Luc also asked. I don't believe Marlin supports that Processor. Smoothie would be a closer match firmware wise. It is not as simple as remapping pins.
This card uses the same MCU that the Printer Da Vinci Jr (ATSAM4E8E)
Here you can see a process to load the firmware:https://duet3d.com/wiki/Duet_Wifi_Wiki
https://duet3d.com/wiki/Updating_main_firmwareusing a tool Atmel:
http://www.atmel.com/tools/atmelsam-bai … ab=devices
Even this card is for 3D printers
Great help thanks, I got this installed on my junior and now changing pin assignment and LCD support...
When I plug the junior usb it starts OK reporting Duet 3D printer control electronic (COM4) and the lights inside printer comes on... But LCD still has just two horizontal bars...
This is fun, I will update daily until full conversion is done...
Yes this is what I flashed too last year but did not had time to work on it
This may help you
here the pinout Allen anb I found and validated :
Pin Type MCU Pin Descriptor PIO type Function
106 MASK PIO_PA5C_URXD1|PIO_PA6C_UTXD1 N/A
105 MASK PIO_PA9A_URXD0|PIO_PA10A_UTXD0 N/A
104 MASK PIO_PA3A_TWD0|PIO_PA4A_TWCK0 N/A
103 MASK PIO_PA28C_MCCDA | PIO_PA30C_MCDA0 | PIO_PA31C_MCDA1 | PIO_PA26C_MCDA2 | PIO_PA27C_MCDA3 N/A
102 Pin 129 PIO_PA29C_MCCK PIO_PERIPH_C
101 Pin 28 PIO_PE5 PIO_OUTPUT_0 Up Key
100 Pin 27 PIO_PE4 PIO_OUTPUT_0 Right Key MCU Descriptor
99 Pin 10 PIO_PE3 PIO_INPUT 62 PA26
98 Pin 7 PIO_PE2 PIO_INPUT 70 PA27
97 Pin 6 PIO_PE1 PIO_INPUT 79 PB6
96 Pin 4 PIO_PE0 PIO_INPUT 89 PB7
95 Pin 2 PIO_PD31 PIO_INPUT 87 PB12 Erase
94 Pin 34 PIO_PD30 PIO_OUTPUT_0 Home Key 105 PB4
93 Pin 108 PIO_PD29 PIO_INPUT 109 PB5
92 Pin 71 PIO_PD28 PIO_OUTPUT_0 112 PA28
91 Pin 47 PIO_PD27 PIO_OUTPUT_0 116 PA30
90 Pin 53 PIO_PD26 PIO_OUTPUT_0 118 PA31
89 Pin 52 PIO_PD25 PIO_OUTPUT_0 136 PB10
88 Pin 54 PIO_PD24 PIO_OUTPUT_0 137 PB11
87 Pin 57 PIO_PD23 PIO_OUTPUT_0 Inside LED on/Off 141 PB8
86 Pin 60 PIO_PD22 PIO_OUTPUT_0 142 PB9
85 Pin 63 PIO_PD21 PIO_OUTPUT_0
84 Pin 65 PIO_PD20 PIO_OUTPUT_0
83 Pin 67 PIO_PD19 PIO_OUTPUT_0
82 Pin 69 PIO_PD18 PIO_OUTPUT_0
81 Pin 74 PIO_PD17 PIO_OUTPUT_0
80 Pin 78 PIO_PD16 PIO_OUTPUT_0 Extruder Enable
79 Pin 106 PIO_PD15 PIO_OUTPUT_0
78 Pin 84 PIO_PD14 PIO_OUTPUT_0
77 Pin 88 PIO_PD13 PIO_OUTPUT_0
76 Pin 92 PIO_PD12 PIO_OUTPUT_0
75 Pin 98 PIO_PD11 PIO_OUTPUT_0
74 Pin 101 PIO_PD10 PIO_INPUT
73 Pin 110 PIO_PD9 PIO_OUTPUT_0 Y end stop
72 Pin 113 PIO_PD8 PIO_OUTPUT_0 X end stop
71 Pin 119 PIO_PD7 PIO_OUTPUT_0
70 Pin 121 PIO_PD6 PIO_OUTPUT_0 Enable Z
69 Pin 125 PIO_PD5 PIO_OUTPUT_0 Enable Y
68 Pin 126 PIO_PD4 PIO_OUTPUT_0
67 Pin 128 PIO_PD3 PIO_OUTPUT_0 Enable X
66 Pin 131 PIO_PD2 PIO_OUTPUT_0
65 Pin 132 PIO_PD1 PIO_OUTPUT_0
64 Pin 1 PIO_PD0 PIO_OUTPUT_0
63 Pin 14 PIO_PC31X1_AFE0_AD11 PIO_INPUT ADC11
62 Pin 15 PIO_PC30X1_AFE0_AD10 PIO_INPUT ADC10
61 Pin 16 PIO_PC29X1_AFE0_AD9 PIO_INPUT ADC9
60 Pin 76 PIO_PC28 PIO_OUTPUT_0
59 Pin 12 PIO_PC27X1_AFE0_AD13 PIO_INPUT ADC13
58 Pin 13 PIO_PC26B_TIOA4 PIO_PERIPH_B
57 Pin 133 PIO_PC25 PIO_OUTPUT_0
56 Pin 130 PIO_PC24 PIO_INPUT
55 Pin 127 PIO_PC23B_TIOA3 PIO_PERIPH_B
54 Pin 124 PIO_PC22 PIO_OUTPUT_0
53 Pin 122 PIO_PC21 PIO_INPUT
52 Pin 120 PIO_PC20 PIO_OUTPUT_0
51 Pin 117 PIO_PC19 PIO_OUTPUT_0 Z end stop
50 Pin 111 PIO_PC18 PIO_OUTPUT_0 LCD ???
49 Pin 103 PIO_PC17 PIO_OUTPUT_0
48 Pin 100 PIO_PC16 PIO_INPUT
47 Pin 18 PIO_PC15X1_AFE0_AD7 PIO_INPUT ADC7
46 Pin 97 PIO_PC14 PIO_OUTPUT_0
45 Pin 19 PIO_PC13X1_AFE0_AD6 PIO_INPUT ADC6
44 Pin 17 PIO_PC12X1_AFE0_AD8 PIO_INPUT ADC8
43 Pin 94 PIO_PC11B_TIOA8 PIO_PERIPH_B
42 Pin 90 PIO_PC10 PIO_OUTPUT_0 LCD light On/Off
41 Pin 86 PIO_PC9 PIO_OUTPUT_0
40 Pin 82 PIO_PC8B_TIOA7 PIO_PERIPH_B
39 Pin 48 PIO_PC7 PIO_OUTPUT_0
38 Pin 54 PIO_PC6 PIO_OUTPUT_0
37 Pin 58 PIO_PC5B_TIOA6 PIO_PERIPH_B LCD???
36 Pin 41 PIO_PC4X1_AFE1_AD7 PIO_INPUT ADC23
35 Pin 40 PIO_PC3B_PWML3 PIO_PERIPH_B PWM_CH3
34 Pin 39 PIO_PC2 PIO_OUTPUT_0
33 Pin 38 PIO_PC1X1_AFE1_AD4 PIO_INPUT ADC20/LCD ???
32 Pin 11 PIO_PC0 PIO_INPUT ADC14
31 Pin 140 PIO_PB14X1_DAC1 PIO_OUTPUT_0 DA1
30 Pin 144 PIO_PB13C_SCK0 PIO_PERIPH_C
29 Pin 31 PIO_PB3X1_AFE1_AD1 PIO_INPUT Left Key
28 Pin 26 PIO_PB2 PIO_OUTPUT_0
27 Pin 20 PIO_PB1C_TXD0 PIO_PERIPH_C
26 Pin 21 PIO_PB0C_RXD0 PIO_PERIPH_C
25 Pin 59 PIO_PA25 PIO_OUTPUT_0
24 Pin 56 PIO_PA24 PIO_OUTPUT_0
23 Pin 46 PIO_PA23A_SCK1 PIO_PERIPH_A
22 Pin 37 PIO_PA22A_TXD1 PIO_PERIPH_A
21 Pin 32 PIO_PA21A_RXD1 PIO_PERIPH_A Down Key
20 Pin 22 PIO_PA20B_PWML1 PIO_PERIPH_B PWM_CH1
19 Pin 23 PIO_PA19B_PWML0 PIO_PERIPH_B PWM_CH0
18 Pin 24 PIO_PA18X1_AFE0_AD1 PIO_INPUT ADC1
17 Pin 25 PIO_PA17X1_AFE0_AD0 PIO_INPUT Ok Key
16 Pin 45 PIO_PA16C_PWML2 PIO_PERIPH_C PWM_CH2
15 Pin 49 PIO_PA15B_TIOA1 PIO_PERIPH_B
14 Pin 51 PIO_PA14A_SPCK PIO_PERIPH_A
13 Pin 42 PIO_PA13A_MOSI PIO_PERIPH_A
12 Pin 68 PIO_PA12A_MISO PIO_PERIPH_A
11 Pin 64 PIO_PA11A_NPCS0 PIO_PERIPH_A
10 USB 66 PIO_PA10A_UTXD0 PIO_PERIPH_A // UTXD0 USB Din
9 USB 75 PIO_PA9A_URXD0 PIO_PERIPH_A // URXD0 USB Dout
8 Pin 36 PIO_PA8 PIO_OUTPUT_0
7 Pin 35 PIO_PA7 PIO_OUTPUT_0
6 Pin 114 PIO_PA6C_UTXD1 PIO_PERIPH_C
5 Pin 73 PIO_PA5C_URXD1 PIO_PERIPH_C
4 Pin 77 PIO_PA4A_TWCK0 PIO_PERIPH_A
3 Pin 91 PIO_PA3A_TWD0 PIO_PERIPH_A
2 Pin 93 PIO_PA2 PIO_OUTPUT_0
1 Pin 99 PIO_PA1 PIO_OUTPUT_0
0 Pin 102 PIO_PA0B_TIOA0 PIO_PERIPH_B
and this is what Allen found :
Z motor
enable pin 2 sam 121
clkin pin 3 sam 120
cw/ccw pin 44 sam 119
Y motor
enable pin 2 sam 124
clkin pin 3 sam 125
cw/ccw pin 44 sam 7
x motor
enable pin 2 sam 127
enable pin 3 sam 128
cw/ccw pin 44 sam 126
E1 motor
enable pin 2 sam 76
enable pin 3 sam 78
cw/ccw pin 44 sam 74
Be careful if power on after wipe the FW, the extruder is on and heating without any control, you better disconnect it
Allen was planning to work on tracing the extruder connector as I was not able to find the proper trace - I am terrible for this
Also be noted duet FW variant may need adjustment as it match the duet board not davinci jr
Also I guess you know duet do not support standard lcd neither keyboard, you need extra coding implementation for this, on duet this part is handled by standalone screen connected by serial
no mention about the thermistor table that I doubt to be standard on Jr if they use same mindset as others davinci
Thank you, that is big help!
I have https://duet3d.com/wiki/DuetWifi_Pinout_table to compare with junior and davinci 1.0 ported to Repetier-Firmware-0.92, and your pin assignment data...
I am compiling RepRap Duet FW since it is based on Marlin and well documented...
I will post an update hopefully with success :-)
the only common between Jr and others Davinci is the screen pad - a 16x4 winstar screen so initialisation is little bit different than others lcd - it took some time to make it work perfectly - you can check the specs of the screen on my github (https://github.com/luc-github/Repetier-Firmware-0.92)
the only common between Jr and others Davinci is the screen pad - a 16x4 winstar screen so initialisation is little bit different than others lcd - it took some time to make it work perfectly - you can check the specs of the screen on my github (https://github.com/luc-github/Repetier-Firmware-0.92)
Yes, thank You...
I am working on it now as it will be usefull for debuging of other parts...
Mathew looking forward to your result!. Was getting cross-eyed look at the board traces
I was able to setup eclypse neon 2, GNU Tools ARM Embedded and GnuWin32 for compiling original RepRapFirmware-dev...
For downloading FW.bin I used recommended sam-ba_2.16... All that because original build recommendation does not work on win 10...
There are two pads for erase and reset switches on jr motherboard and I have populated them with appropriate size push switches:
http://allegro.pl/tact-switch-3x6x4-3mm … 90340.html
I am doing lot of FW flashes and each require manual erase and reset...
Also I found the stepper ic doc: https://toshiba.semicon-storage.com/inf … TB62269FTG
All now ready for PIN match work and I should have some action this weekend...
Wow, nice work. It would be nice if its working with the Arduino IDE. I've bought a Ramps 1.4 Kit today for 35€, but it would be nicer if I could use the Davinci Jr Board.
Well we really want SAM4 ( faster / 32bit/floating point ) between 10x-100x performance ... but I will agreen samp is a good poorman solution ,
]
Gentlemen,
With the Da Vinci Jr. 1.0 OPEN BOX sitting at $153.99 on Newegg, I am especially intrigued by your work and would love to use it if it comes to fruition. If there is any way I can be of assistance I would like to throw my hat in the ring.
Happy Hacking!
Lemme know what I can do to help. I have a brand new Jr sitting in the corner right now just itching for use, but not without a filament or firmware solution I can try to help map pins (have an older multimeter i can use).
I have the RepRap firmware running using remote access trough USB port. It is printing and I've enabled the debug messages an can see all printing parameters. Still tracing pins and found temperature controller is an advanced circuit outside the sam processor so I have to draw full schematic and identify components involved. As mentioned before there is no LCD support so after I get all pins running I will switch to Repetier since it already has the LCD support which will also require to write new platform interface using sam4e. In any case I will not give up porting open firmware on davinci junior 1.0...
can you share the additional pins you found vs the ones I provided ?
Where are you guys with this right now, finally decided I was done with XYZ's OEM solution after battling with customer service over bad filament continuously clogging my extruder. I am a computer engineer and would love to help and get a comprehensive guide going as a big "F you" to XYZ
SoliForum - 3D Printing Community → XYZ Printing Hacks & Mods → Davinci Jr Repetier Port
Powered by PunBB, supported by Informer Technologies, Inc.