This entry covers the electrical component over the last several session.
Several sessions ago we had little luck getting the microcontroller to talk to the USB device. The FT232R-based adapter we were using was modified from another in-house project (we'll call it the USBBT adapter). The symptom was that 'dmesg' gave some complaint about the USB device when our adapter was attached. (As you can tell, the exact events from several weeks ago are a bit foggy.) I think one of the connectors on the USBBT to MoBo adapter cable was reversed at one point, so the chip may have been damaged - but there was no confirming smoke or sparks.
I should pause here to point out that the bootloader had previously been successfully installed via the USBtiny. Pressing the reset on the MoBo caused the reset LED to give three short and one long blink. This proved the microcontroller was correctly wired and functioning - at least at some level. But we could not download through the USB channel.
Anyhow, a new USB board was assembled with the extensions for RepRap (adding +V, RTS#). This fresh adapter was correctly recognized by the Linux USB driver and so was deemed ready for the next C-Rap build session.
The next session gave us no joy, but we were able to prove that the USB interface adapter was indeed working properly - it was used to work with a commercial motor controller, and performed flawlessly. So why didn't it work with the RepRap board? Someone suggested downloading the bootloader again - just in case.... Well, we had a heck of time getting that to work (lots of timeouts) but it seemed to succeed in the end.
Last night's session we took it step-by-step and verified that the adapter pins were correct, etc., etc. We tried downloading the bootloader via the USBtiny since none of us were confident with the previous attempt, but we kept running into USB timeout errors. An alternative method (command line, not GUI) was used, and that worked like a champ. (Somesh - can you document exactly what you did?)
So, we made some progress. We knew the bootloader was properly installed, and that the microcontroller was still working. Yay. Back to the USB adapter.
Using an oscilloscope to monitor the RTS#, RXD and TXD lines on the mother board, we tried downloading the Menedl software. The only signal activity observed was one (or two) bytes on the RXD line when (I suppose) the host was trying to wake up the Sanguino. What should have happened was that the RTS# line should have strobed low, which would have triggered the reset on the bootloader. This line was always low (that's suspicious!), so there was never a reset pulse. After noodling over why this line was never high we thought to try a different USB adapter. We had on hand a FTDI adapter cable which was pin compatible with the MoBo header, and so connected that. This still did not work but the RTS# was always high!
It was getting toward the end of the session, and many people had already left, when Michael tried what Somesh had come across earlier (but did not work before): manually pressing the RESET button just before the compiler/downloader started the download stage.
Lo and behold, the red status LED on the MoBo began furiously blinking! A program was being downloaded! And then the download program read back the flash area! The program was verified!
Now, when powered up, our RepRap MoBo has a gently pulsing status LED. Michael tried the RepRap interface program even though we had nothing connected to the MoBo. There were some java exceptions (hey! software people - you're on deck!) but gcode commands were recognized.
The electrical team must figure out why the USBBT adapter did not work. My current hypothesis is that the internal EPROM has incompatible settings. Yes - the FT232RL does have programmable internals that can change the behavior on the various output pins. It is possible that the settings in the USBBT device differ from the default settings in the USB adapter module described on the Mendel site.
Sunday, August 29, 2010
Well, well, well. I bet you thought we'd all given up. Not true! It's been a busy couple of months at work, and we've had to cancel several sessions, but we are making progress. The electronics are fully assembled, and are currently undergoing debugging. As of the end of last week's session, the x-axis was assembled enough to get an idea of the shape of the assembly. Progress!
For much of this project, procuring the mechanical parts has been the major bottleneck. We have one milling machine, which means that there is really a fundamental limit to the number of parts we can make in a three hour session. Last week I had an epiphany: I got on ebay looking for part sets. (In my defense, I did this at the beginning of the project, but no one was selling reprap parts then.) Turns out, the street price for a set of printed parts is about $150. Now, we've been hard at work for a while now, and don't need all the parts, so I contacted a couple of sellers and asked if they would be willing to print just the parts we needed. Sure enough, Several of them were. Now, I've ordered some parts, and we'll see what shows up in the mail in the next couple of days!
Friday, April 2, 2010
I think I've figured out why the RepRap parts have all the crazy teardrop shaped holes:
They are designed to be printed on a machine that does not use support material. If you are printing a part with a hole (axis parallel to the build plane), it is difficult to print the "top" of the hole without the material sagging. A teardrop shape has the benefit of keeping the material overhang within reasonable limits.
Wednesday, March 31, 2010
In the interest of preserving the few scraps of sanity that I still posess, I have put together a spreadsheet to track our progress.
At the last build session it became clear that I could not simultaneously keep my darling daughter out of trouble and know what everyone needed to do next at the same time. My hope is that this will give every one a good idea of what remains to be done, and keep me from being the bottleneck.
Tuesday, March 30, 2010
- Adam H.
- Adam S.
Food: Castellos Pizza (Supreme, BBQ Chicken, Polynesian) and assorted beer
- Michael, Cedric, and Jim worked on putting together the order for the motherboard components
- Somesh was working on breadboarding something, possibly the motor control circuit?
- Nikola was stripping an old laser printer for parts: we got a motor, some optostops, and a few other interesting bits out.
- Adam S. and Branko worked on modeling parts in Pro/E. We almost have everything, I think.
- Adam H. helped with the modeling then started trying to figure out how we could make some parts out of MDF with the machines we have downstairs
- I (Ben) did my best to keep my daughter (Leah) pacified with the help of Monsters Inc. and Shrek. While I wasn't doing that, I spent some time organizing what needs to be done, and offering Pro/E advice to those who were interested.
- Costa and Devin spent a while in the basement cranking out parts (more on this later. I plan to start posting pictures of parts soon)