Is the mightyboard really this hard to work with?

925 views
Skip to first unread message

DrOne Solertron

unread,
Mar 27, 2016, 8:52:07 AM3/27/16
to Makerbot Users
I am trying to remain positive...and somewhat philosophical as regards my recent experiences with this demoralising offering from Makerbot. How a simple upgrade from v7.5 firmware (makerbot) to Sailfish ends up in a hung board and no display- other than two solid lines on the L:CD is I am sad to admit, beyond me.  
All I did was hookup with Rep40R33 and hit the upgrade to Sailfish - I have had to resort to re-loading the Bootloader and usbserial with my AVR-ISP and I get what appears to be the right signs of life as the pics show but I still cannot get the PC to connect.
I would be grateful for any thoughts/ insights anyone may have on this.

Cheers
 
avrdude-op.png

Jetguy

unread,
Mar 27, 2016, 9:37:26 AM3/27/16
to Makerbot Users
AVR dude told you you had it connected to the wrong processor, you used the -F override and flashed anyway, and now you wonder why you bricked??

#1 don't use the -F flag because duh, you will then seriously brick it.
#2 why are you 8u2 firmware on the wrong processor?

Jetguy

unread,
Mar 27, 2016, 9:41:18 AM3/27/16
to Makerbot Users
The file says atmega 1280 and you are using the device AT90USB82.
And then you went the extra mile and wrote FUSE BITS???????????????????

At this point, if you ever get it work again without replacing that processor I'll be amazed.

Jetguy

unread,
Mar 27, 2016, 10:16:51 AM3/27/16
to Makerbot Users



The CORRECT instructions. Notice that the TOP half of the instructions is for the 8u2 USB to serial processor and the SECOND HALF is for the actual atmega 1280.




Just so we have these files somewhere and in one place.
The obvious- you need an AVR programmer (that supports avrdude flashing tool) to plug into the ICSP headers on the mainboard to program.
Special thanks to Dan Newman and Jake for some of these hex files and instructions along the way.

8u2 USB to Serial firmware (technically not a bootloader)
See the attached files, copy to a folder you can navigate to easily. I normally just copy to the root of C since I do this so often, it's easy to paste the commands. (I had to zip avrdude sso unzip to C:)
You need 3 files: avrdude.exe, avrdude.conf (these 2 are the flashing tool), then the hex file (I copied to the root of my C  drive).

TO DOWNLOAD THE HEX FILE:
THIS SECTION IS ONLY TO RESTORE FIRMWARE ON THE 8U2 USB TO SERIAL. THIS IS NOT REQUIRED FOR "I flashed the wrong firmware and my printer is displaying 2 black bars". This is "I blew up my mightyboard, replaced the 8U2 USB processor with a blank one, and need to get firmware on it".
1. Connect the AVR ISP MKII compatible programmer to the 8U2 6 pin programming header
2. Ensure the Board is Powered
3. navigate to the directory containing the .hex file in the terminal
4. Execute the following avrdude command: avrdude -p at90usb82 -F -P usb -c avrispmkii -U flash:w:Makerbot-usbserial.hex -U lfuse:w:0xFF:m -U hfuse:w:0xD9:m -U efuse:w:0xF4:m -U lock:w:0x0F:m
Note, I'm using a genuine AVRMkII programmer from Atmel. You would ned to know the correct avrdude name for your given programmer and change this piece of the above command string "avrispmkii"
This command was verbatim copied from the MakerBot website which I see they put the -F into. I did not make this command up, again, this is verbatim copied from here https://github.com/makerbot/MightyBoardFirmware/tree/master/bootloader/8U2_firmware


OK, so that got the 8u2 in the correct state, now, we can work on the main processor (Atmega1280). If you have 2 black bars, these are the instructions you should be following.
I use AVR Burn-O-Mat, GUI for AVRdude because I'm lazy and because  I do this so often  (OK, so I'm command line challenged myself- alright??)
Simply do the AVR dude configuration so it points to the previously copied AVR dude exe and conf files in C:, then choose your programmer, then choose USB as the port, then finally, check the box "disable auto erase for flash (-d)". Hit apply
On the main screen (of AVR Burn-O-Mat) choose your processor 1280
Ensure the programmer is now plugged into the 1280 ICSP port !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
If you have a standard 1280 (anyone with a genuine MakerBot board has a 1280) then you flash this hex (ATmegaBOOT_168_atmega1280.hex)


Again, what happened here is you mixed instructions and used part of the 8u2 command, plugged it into the 1280 port and potentially bricked the chip.
If you were going to use avrdude directly  flash your chip, then this is the avrdude command you should have used.
#1 again, ensure the ICSP is plugged into the 1280 ICSP port.
#2 ensure the board is powered
#3 C:\avrdude.exe -C C:\avrdude.conf -p m1280 -P usb -c avrispmkII  -U flash:w:C:\ATmegaBOOT_168_atmega1280.hex:i 
The above instruction assumes all 3 files (avrdude.exe, avrdude.conf, and the specified hex) are in the root of C:. You will either have to move the files or change the path.
again, the basic command is call avrdude.exe then this is the actual command passed
-p m1280 -P usb -c avrispmkII  -U flash:w:C:\ATmegaBOOT_168_atmega1280.hex:i 
-p is for program
m1280 is for the 1280 processor type
usb tells it where to find the programmer on what port
-c ???? Sorry, I don't know off the top of my head
-i at the end is just what type of hex file i= Intel (since these are based on an Intel architecture)

Jetguy

unread,
Mar 27, 2016, 10:30:14 AM3/27/16
to Makerbot Users
Just checked and the correct default fuses for Genuine Replicator 1 mightyboard  rev E are:
F4, D9, FF

I also just happened to have a genuine Mightyboard rev G from a Makerbot Replicator 2X (also used in the Replicator 2)
F4,DA,FF

 
In order to write fuses to a Mightyboard Rev E (replicator 1).
C:\avrdude.exe -C C:\avrdude.conf -p m1280 -P usb -c avrispmkII  -u -U efuse:w:0xF4:m -U hfuse:w:0xD9:m -U lfuse:w:0xFF:m

That should write the correct fuses, provided you even can.

Jetguy

unread,
Mar 27, 2016, 10:32:03 AM3/27/16
to Makerbot Users
The other thing is that all this does is put a correct bootloader back on the 1280.
You still have to use Replicator-G 33, select the correct type of printer and mainboard, and then flash over USB following the normal update instructions to get firmware onto the board.

Jetguy

unread,
Mar 27, 2016, 10:46:06 AM3/27/16
to Makerbot Users
Sorry for the tone, I'm just upset to see you have this kind of problem, then go down the path of making it worse by using completely incorrect commands.

hopefully, you can flash the correct fuse bits and the correct bootloader and make it work.

Dan Newman

unread,
Mar 27, 2016, 11:51:40 AM3/27/16
to DrOne Solertron, Makerbot Users
Which printer is this.

My guess: you initially wrote the wrong firmware to your printer. E.g., you wrote
Replicator 2 or 2X firmware to a Replicator 1 or vice versa. That would produce the
symptoms similar to what you first saw: nothing but two solid lines on the LCD display.
However, you can still load new firmware at that point over USB. (I should know, I've
accidentally put Rep2 firmware on my Rep1 and vice versa. I've done it several times.)
However, there's another common mistake that you might have done: if the printer was
a Rep 2 or 2X BUT you pressed the reset button, then you may have corrupted the
bootloader. For those printers, you do not press the reset button and RepG doesn't
tell you to press it. (If, however, you try to load Rep 1 firmware on a Rep 2 or 2X,
then RepG will believe you and tell you to press the reset button.)

In the first avrdude command you wrote USB firmware to the 8u2 (USB) chip. That's
maybe okay. Which makerbot is this? You may not have written the correct USB
firmware. Moreover, I'm not confident that the correct USB firmware for a late model
Rep 2 or 2X is even available. At any rate, there was no need to write the USB
firmware to the USB chip. (The -F command is used in that particular command since
most people do not have an avrdude.conf file with the correct part definition and
but they do have the part definition for the mostly identical at90usb82 chip. So
some of the example commands floating around show using -p at90usb82 and then the -F
switch to force avrdude to accept that part number. In general, using the -F
switch is asking for trouble: it tells avrdude to turn off its safeties.)

In the second avrdude command, you then tried to write an ATmega1280 bootloader to
the 1280 chip. (And I can see that avrdude was talking to the 1280 since the
reported device signature is for a 1280.) HOWEVER, you told avrdude that the part
(chip) was a at90usb82 and used the -F switch to force avrdude to ignore the difference
between what the chip reported and what you claimed with the command (-p at90usb82).
At that point you scribbled garbage into the chip and did who knows what to the
fuse bits. You may be able to recover by using the correct command for the 1280.
Or you may not. If you cannot, then it may involve some very careful use of
avrdude to unbrick things. I myself am not an expert in doing that.

Dan
Message has been deleted

DrOne Solertron

unread,
Mar 27, 2016, 6:01:47 PM3/27/16
to makerbo...@googlegroups.com
Hello Jetguy,
      Thanks for replying and all your help.  I understand it must be annoying for power users such as yourself to witness noobs burn themselves on this stuff.  Unfortunately for me I am not a veteran in this space as I said earlier.  And since I am not certain of what I am actually doing I figure that I should just trust what I read especially if it is written by those that clearly know more.
When I read the post, I realized that the USB was being burned "from scratch" but I figured it should not hurt to burn it again (Should it?).  Then in the same post - I read the line "You can again, use command line and AVRdude to flash this hex file https://github.com/makerbot/MightyBoardFirmware/tree/master/bootloader/1280_bootloader to the 1280 just as above and this is the "correct" bootloader."  -  Now, I think that when all is said and done it is a case of expectations and perceptions.  I write requirements and instructions for a living among other things in my existence as a systems engineer so I am accustomed to articulating each instruction as if I were speaking to a person doing the task for the first time - comes from loads of specification writing. 

I did see that -F was override but that is what was recommended. I also saw the line above and yes, I did see that it was referencing the 80usb but I still blindly followed it - it is a habit that is hard to break especially when you don't really know if you are doing the right thing.  I actually thought it was strange because I had read what each parameter did but a combination of exuberance and ignorance was never going to add up to anything good. I circumstance like these you can expect that if you tell some one to jump - they jump
Again, I will work though the suggestions and see where it gets me.  I will also undertake to help establish an indexed reference of issues with detailed instructions for all players big and small beginning with this one.  While there is a wealth of knowledge in this groups pages, I am afraid it is all embedded in conversations making it difficult to access readily - one can say this is only to be expected as discussion forums are not really ever meant to be information repositories.
Se la vie.
Message has been deleted

DrOne Solertron

unread,
Mar 27, 2016, 6:17:06 PM3/27/16
to Makerbot Users, sole...@gmail.com
HI Dan,
         Thanks for replying.  I very much appreciate all your help.  I did see that -F was in use but I am accustomed to following orders (silly me) when they are given and especially if I am in unfamiliar territory.  O well, another opportunity to improve.
I will follow your suggestions now that i am endowed with further knowledge and 20-20 hindsight and see where it hopefully gets me:)

Jetguy

unread,
Mar 27, 2016, 6:38:38 PM3/27/16
to Makerbot Users, sole...@gmail.com
Problem solved, bad instructions post permanently removed. Unless you use a web cache, it's not where somebody can read it again.

Jetguy

unread,
Mar 27, 2016, 6:54:50 PM3/27/16
to Makerbot Users, sole...@gmail.com
I'll move files and a new set of instructions to a 3D printing wiki when I get some more time.
http://3dprinterwiki.info/

DrOne Solertron

unread,
Mar 27, 2016, 9:16:28 PM3/27/16
to makerbo...@googlegroups.com, sole...@gmail.com
Thanks jetguy - I am happy to help you with the wiki if you like.

Just tried flashing again - seems the 1280 is OK as attachments 1&2 indicate but the usb82 appears to be a different story as the signature does not match but it still flashes anyway (due to the -F ?)
Also I keep noticing that avrdude keeps reporting h & e fuses switched round - why is this?

2.png
3.png
1.png

Jetguy

unread,
Mar 27, 2016, 9:27:22 PM3/27/16
to Makerbot Users, sole...@gmail.com
Worry about what matters. If you plug in the printer USB and power it, does your OS detect the printer and load the S3G device making a serial port in the device manager?
If yes, then proceed to updating the firmware over USB.

Again, no reason to do anything to the 8u2, it was working, should still be working.

DrOne Solertron

unread,
Mar 27, 2016, 10:19:01 PM3/27/16
to Makerbot Users, sole...@gmail.com
Jetguy,
             Not detecting the USB.   No activity in device manager when printer USB plugged in:(

Jetguy

unread,
Mar 27, 2016, 10:34:19 PM3/27/16
to Makerbot Users, sole...@gmail.com
what printer is this again?
Replicator Dual (wooden frame) ?

If so, then follow the makerbot command verbatim to flash the 8u2 and ensure you are on the 8u2 ICSP.

DrOne Solertron

unread,
Mar 28, 2016, 3:24:23 AM3/28/16
to Makerbot Users, sole...@gmail.com
This is a (wooden frame) Replicator 1 Dual -
So the command you refer to as written below (including -F):
avrdude -p at90usb82 -F -P usb -c avrispmkii -U flash:w:Makerbot-usbserial.hex -U lfuse:w:0xFF:m -U hfuse:w:0xD9:m -U efuse:w:0xF4:m -U lock:w:0x0F:m
I will do this
-------------

DrOne Solertron

unread,
Mar 31, 2016, 7:22:16 AM3/31/16
to Makerbot Users, sole...@gmail.com
Hello Jetguy et al,
            Apologies for the tardy update, Had to return to work after the Easter break.
So I tried the command as prescribed and got the output shown in the attached pic.
I do not understand the verification error - I used the latest (avrdude 6.3) and the config supplied.
In any case I  do not get signs of life when trying to connect with RepG33.
Could be time to replace the USB82 chip?
avrdude-op-.png

Jetguy

unread,
Mar 31, 2016, 8:16:32 AM3/31/16
to Makerbot Users, sole...@gmail.com
The byte mismatch is an error we see from time to time from certain programmers. It may or may not mean anything.

The part 2 that is the problem  is how you tested and know what is and what is not working.
You do not "connect" with rep-g 33 yet, there is no firmware on the main processor to connect to.
At this point,, all you have is hopefully a working 8u2 acting as a USB to serial interface, and then that serial interface talks to the main processor which at this point, only contains a bootloader.
The only thing the bootloader will allow you to do is flash the main chip.
Then and only then after flashing main firmware can you use the "connect" function in rep-g.

So the question remains, if you plug in the printer USB and powered on, in device manager in windows detect the S3G USB device under the com ports listing in windows device manager?
If yes, stop flashing the 8u2, it's working.
If no, at this point, you either need to find a friend or go down this road of replacement.

If you have a working USB to serial, you are now at the point where you will use firmware update function and follow the directions verbatim choosing the correct firmware and flash it.
Then don't forget to do the follow up reset to factory defaults and also check and know your offsets (especially toolhead) before you even attempt to use the printer.

DrOne Solertron

unread,
Mar 31, 2016, 5:16:41 PM3/31/16
to Makerbot Users, sole...@gmail.com
Thanks for this information.  It all makes now....
I will check to see if I have the interface on the weekend and report.
Cheers

DrOne Solertron

unread,
Apr 3, 2016, 6:42:29 PM4/3/16
to Makerbot Users, sole...@gmail.com
HI Jetguy et al,
            So I got to trying to connect to the USB but without success.When I plugged in the printer USB and powered the board on - the device manager in windows did not detect the S3G USB device under the com ports listing in windows device manager.
So now for me the question is ....do I keep flashing the 8u2 in the hope that sooner or later it will work?  I guess it does not hurt to do this few more times.  
But I already have 90usb82 sitting on the bench.  Cost me a whole $3!  So why not bring out the soldering station and change it.  

Jetguy

unread,
Apr 3, 2016, 6:53:05 PM4/3/16
to Makerbot Users, sole...@gmail.com
Either keep flashing until you give up or change it.
Remember, the 8u2 currently soldered has a huge thermal pad underneath. I found that i had a less than 20% success rate removing the chip and not damaging a tiny trace pad.

You could directly flash the firmware, skip the bootloader and use alternate UART to the main processor.
Reply all
Reply to author
Forward
0 new messages