Welcome to Our Community

Some features disabled for guests. Register Today.

Tear down of Cubify cube 3 3D Printer + convert to RepRap

Discussion in '3D printers' started by Oderbang, Dec 6, 2015.

  1. Tom Dirriwachter

    Tom Dirriwachter Well-Known
    Builder

    Joined:
    Aug 30, 2016
    Messages:
    281
    Likes Received:
    31
    And there should be a subroutine that shows how much has been printed.
     
  2. eychei

    eychei Well-Known
    Builder

    Joined:
    Dec 26, 2016
    Messages:
    143
    Likes Received:
    36
    @Naldarn

    Thanks for the right unscrambled key. Do you know what i did wrong? Using the zilch.dll I got almost the same key but did I have to run it through the routine 2 times?
     
  3. Kiza

    Kiza New
    Builder

    Joined:
    Dec 1, 2016
    Messages:
    75
    Likes Received:
    3
    The problem was with extra (escaped) "\" :)
     
  4. eychei

    eychei Well-Known
    Builder

    Joined:
    Dec 26, 2016
    Messages:
    143
    Likes Received:
    36
    Thanks Kiza. Now I know what was wrong.
     
  5. Kiza

    Kiza New
    Builder

    Joined:
    Dec 1, 2016
    Messages:
    75
    Likes Received:
    3
    So, now, since we can modify Hex file and put correct checksum in there, I think we can try to use background debugger.
    Here is the current config:
    config.png
    Background debug is disabled, but it is easy to change and write back to printer.
    I don't have my picikt3 yet, once I have it, I will try it myself.
     
  6. Naldarn

    Naldarn New
    Builder

    Joined:
    Jun 7, 2014
    Messages:
    43
    Likes Received:
    0
    Great, can't you make that one change and re-update the firmware like you did before?
     
  7. Naldarn

    Naldarn New
    Builder

    Joined:
    Jun 7, 2014
    Messages:
    43
    Likes Received:
    0
    Do we know which pin goes to the 1-wire chip? If we know that, we should be able to remove any read or writes to that pin and no more chipped filament.
     
  8. Kiza

    Kiza New
    Builder

    Joined:
    Dec 1, 2016
    Messages:
    75
    Likes Received:
    3
    I am planning to do that and test if printer still works after that :) Will test it shortly. Once it's working, I'll post the packed firmware somewhere.
    Yes, that's the idea, but so far I don't know where it is connected so I don't know, which interface to look for. But once I can do live debugging, I'll figure it out and make the changes in the software.
     
  9. Naldarn

    Naldarn New
    Builder

    Joined:
    Jun 7, 2014
    Messages:
    43
    Likes Received:
    0
    On the LCD, were there any part no. or manufacturer? I'm looking into the display portion, and would help narrow the command set down if you have that info.
     
  10. eychei

    eychei Well-Known
    Builder

    Joined:
    Dec 26, 2016
    Messages:
    143
    Likes Received:
    36
    Can someone tell me howto get to the mainboard out the easiest way?
    I am doing my research on the cubepro and did buy a cube3.
    I can upload and download firmware without any problems now with a Chipkit3.5

    I also changed some code already and trying some stuff out. (Changed some lines in eWriteCartridgeCurrentQty: idx=%i current=%i new=%i to 99)

    edit:
    Ok didnt work:(
     
  11. Kiza

    Kiza New
    Builder

    Joined:
    Dec 1, 2016
    Messages:
    75
    Likes Received:
    3
    Oh if you even can flash the firmware, here are the last two lines of the .hex:

    :102FF000FFFFFF3CD979F8FF5B0DEDFFF6FFFF7F88
    :00000001FF

    The big line is the config registers, I enabled the debugger.

    Put those instead the last two ones in the .hex and flash to the PIC. You should have debugging capability with PicKit
     
  12. Kiza

    Kiza New
    Builder

    Joined:
    Dec 1, 2016
    Messages:
    75
    Likes Received:
    3
    Oh sorry, just realized you sad you have CubePro. These are from Cube 3 firmware, so they are probably different.

    Bu the way, can you share your experience connecting to the mainboard? What tools/software/configuration I need to have? I remember Geezer70 said that there was a problem with MEMCLR being pinned to low. What to do with it? I don't even know if I need to connect all 6 wires, complete newbie in the PIC32 in general, so help would be appreciated.
     
  13. Tom Dirriwachter

    Tom Dirriwachter Well-Known
    Builder

    Joined:
    Aug 30, 2016
    Messages:
    281
    Likes Received:
    31
    Not really. You have to talk to the chip to enable the proper switches, like material type for one, color is not critical to us, but it could be to the rest of the code. You just want to disable the write function so all chips will read 100% regardless.
     
  14. Tom Dirriwachter

    Tom Dirriwachter Well-Known
    Builder

    Joined:
    Aug 30, 2016
    Messages:
    281
    Likes Received:
    31
    mainboard: remove 2 screws and 2 feet the bottom. remove two screws from the cartridge area perpendicular to the front face. unclip the clear plastic catches in your previous post. Carefully move the front out far enough to disconnect the front panel PCB connector.
     
  15. Tom Dirriwachter

    Tom Dirriwachter Well-Known
    Builder

    Joined:
    Aug 30, 2016
    Messages:
    281
    Likes Received:
    31
    What I would suggest is to change the quantity calculation to fixed number. That way, all the functional code is the same but it never subtracts after the first write.

    Can you post more of this section of code?
     
  16. Naldarn

    Naldarn New
    Builder

    Joined:
    Jun 7, 2014
    Messages:
    43
    Likes Received:
    0
    Have torn into the firmware hex 1.14b, and most of the data from :10D0D000 to :10981000 seems to be text characters encoded in the firmware like this:
    encoded text.JPG
    I removed the checksum at the end of each line and the FF to make it easier to see.
     
  17. eychei

    eychei Well-Known
    Builder

    Joined:
    Dec 26, 2016
    Messages:
    143
    Likes Received:
    36
    Ok. I will post some pics of the connection, but will be tomorrow. I dont have any problems with pin out. Just connected the Chipkit cable to a header which i soldered in place.
    The config code for debugging is working. I can set breakpoints etc.

    The code of the Section is attached
    . ida.jpg
     
    szechyjs and Kiza like this.
  18. Kiza

    Kiza New
    Builder

    Joined:
    Dec 1, 2016
    Messages:
    75
    Likes Received:
    3
    Is it on live Cube? Great! I am looking forward doing the same! :)) By the way, I have slightly newer version of IDA file, or actually, I have produced some signature files from XC32 compiler, 1.21, so some of the statically compiled functions are now recognized! I can send you signatures.
     
  19. Naldarn

    Naldarn New
    Builder

    Joined:
    Jun 7, 2014
    Messages:
    43
    Likes Received:
    0
    Can you now save the disassembled code to files, then some of us can help?
     
  20. eychei

    eychei Well-Known
    Builder

    Joined:
    Dec 26, 2016
    Messages:
    143
    Likes Received:
    36
    @Kiza
    Please do so. The code is really hard to read.

    @Naldarn
    Which disassembled code do you mean? I use IDA as dissambler and Kiza is doing the job in dissambling the firmware.
    I then look into the routines and check where in the memory of the firmware it is and patch the code accordingly.

    Attached is the connection diagram for the Pickit 3.5. I did get the 3.5 Version which should be more stable in regards of power the chips. Thx Geezer70 for the Pinout. He told me how to connect the pickit.
    ICSP.jpg
     
    szechyjs and Kiza like this.
  21. Naldarn

    Naldarn New
    Builder

    Joined:
    Jun 7, 2014
    Messages:
    43
    Likes Received:
    0
    I have IDA and could help with the dissassembling, I have been looking through the image695.hex files and can rule out several sections as data only.
     
  22. Kiza

    Kiza New
    Builder

    Joined:
    Dec 1, 2016
    Messages:
    75
    Likes Received:
    3
    Thanks so much for the info! My PicKit3 is here, so I guess I am soldering the header tomorrow! :) Just a few quick questions, sorry if it is stupid.
    Should I power the system or PicKit3 will power the chip? Should I connect Pin 6, (PGM/LVP), or it should not be connected?
     
  23. eychei

    eychei Well-Known
    Builder

    Joined:
    Dec 26, 2016
    Messages:
    143
    Likes Received:
    36
    I did connect pin 6.

    You can Power the Board from the pickit. You have to set it in the options. You can also Power the Board normaly and write the firmware without the Power Option of the pickit.
    I did both without issues on my cubepro. (Same Board).
    Will try to get the Board of the cube3 out today.
     
  24. Kiza

    Kiza New
    Builder

    Joined:
    Dec 1, 2016
    Messages:
    75
    Likes Received:
    3
    Thank you so much, will do that!
    Cube 3 is easy to open, there are instructions on the 1st page. I actually did not remove the rubber stands. Removed the screws in the bottom, removed the 4 screws in the sides where the cartridge is inserted. Than you'll find the clips, they are big and easy to locate. This way you will remove the front panel with LCD screen and gain the access to the mainboard, no need to do anything with the back panel.
     
  25. Geezer70

    Geezer70 New
    Builder

    Joined:
    Sep 30, 2016
    Messages:
    48
    Likes Received:
    12
     
  26. eychei

    eychei Well-Known
    Builder

    Joined:
    Dec 26, 2016
    Messages:
    143
    Likes Received:
    36
    @Geezer70
    Are hinting to something? I mean do you want to say where to look?
     
  27. Geezer70

    Geezer70 New
    Builder

    Joined:
    Sep 30, 2016
    Messages:
    48
    Likes Received:
    12
    Nope, not hinting. Just saying these were interesting, to me. That perhaps you might find them interesting also.
    As of now they remain as locations I have yet to explore.
    I, at this time, can't trace them for two reasons: I, being clumsy, separated pin 5 of the ICSP from its home on the
    MOBO and I can't seem to get IDA 6.6 to co-operate with me. So, until hey something going, I'm hobbled.
    IDA being the best dissembler, works very well with J-Link albeit frustrating to me. So, I was asking if you could help me.
    The comment "you're the default lead" is meant as a compliment to you. :D
     
  28. Kiza

    Kiza New
    Builder

    Joined:
    Dec 1, 2016
    Messages:
    75
    Likes Received:
    3
  29. Geezer70

    Geezer70 New
    Builder

    Joined:
    Sep 30, 2016
    Messages:
    48
    Likes Received:
    12
    Thanks Kiza. I'll give it a shot.
    IDA drives me nuts. I'll be plugging along setting code segments and such, then I accidentally click
    an Icon by mistake. BAMM. The window disappears, never to be found again. I have to start over.
    Try MPLAB IPE (IPE not IDE) to program the Pickit3. The PK3 has two modes MPLAB and Debbuger
     

    Attached Files:

  30. Naldarn

    Naldarn New
    Builder

    Joined:
    Jun 7, 2014
    Messages:
    43
    Likes Received:
    0
    Since I don't have a hardware debugger, I used IDA to look into the 1.07 hex file, and found these ascii labels in the code. Of particular note is the D_OW which is the 1-wire protocol.
    aD_ow_reset 1D05D31C
    aD_ow_no_reset_ 1D05D328
    aD_ow_family_mi 1D05D340
    aD_ow_find_null 1D05D358
    aD_ow_rd_page_1 1D05D368
    aD_ow_rd_page_0 1D05D37C
    aD_ow_ff_read 1D05D41C
    aD_ow_write_blo 1D05D450
     

    Attached Files:

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice