I have a 3D printer but it is too small to print the X-rack in one piece. Can I still build the PiAutoStage?

Yes, it is still possible to build the stage. You will need to open the .STL file for the X-rack in a 3D modeling software. You can then split the shapefile in half, print the two halves, and glue them together. Be careful to align the parts accurately. 

Everything is connected properly, but the PiAutoStage will not respond to serial commands. 

Answer 1: Manually send the GoCode to the Arduino. GoCode = "55551500". This will attach the servo motors to permit movement. 

Answer 2: Check that the COM port in the python code is the same as the COM port shown in the Arduino IDE (red circle in image) . 


Screen shot of the Arduino IDE interface. Text reading "arduino uno on COM5" is circles in the lower left corner.

Arduino IDE screenshot

Is it normal for the servo motors to shift when the GoCode is sent?

Yes, the servo motors are returning to the neutral position. Some small variations in the initial voltage can cause them to move. They will stabilize into the neutral position once the electrical signal stabilizes (Takes <1-2 seconds). 

There are regions in my stitched images that are blurry, but the rest is not. What is the problem?

We have found that this issue relates to movement of the thin section inside the slide carriage. There are two solutions, either place shims between the carriage forks and the section or print one of the more advanced carriage designs from the GitHub repository. 

Is an external power supply necessary to run the servo mechanism?

Some applications require external power to be connected to the Arduino controller. We have not found it necessary to use an external power supply. 

Where are the pictures saved? 

Images will be saved into the same folder as the Python Script. 

Can I use an existing (non RaspberryPi) camera that I have attached to a computer?

No. It is not possible to use an existing camera with PiAutoStage with the current setup. You must have a RaspberryPi camera. The reason for this relates to control of the camera. The RaspberryPi needs to be able to control when the camera takes a photo. For a non-RaspberryPi camera there are likely no Python libraries available to control the camera and so the Python script that manages PiAutoStage has no way to send a signal to the camera telling it to take a picture and move to the next point. In the unlikely case that the camera you have purchased does have Python libraries available, then you may be able to control it, but you will need to modify the codes yourself to reflect the new camera controls.