Endmukbud,
Yes and no. The firmware is usually implemented as a result of the hardware decisions used on the printer. Flashing the pixma 1000 firmware to the i320 printer will not increase the speed and resolution of the i320, because the i320 may not have the required hardware for the pixma 1000 firmware to use properly. For example, the stepper motor and drive pcb may appear to be the same on both printers but the pixma 1000 might use half-step phase control of the stepper motor and the i320 might use full-double phase control. However, sometimes the printer vendors will use the same hardware across several models and change the resolution and speed by not implementing the features in firmware. Adding extra wait times to make the 10 model slower than the 12 model, for instance. This is often done to create a lower price(read: less profitable) printer model to compete with the other printer vendors' offerings, but not cannibalize sales from your own more upscale(read: more profitable) printer lineup. This is strictly a marketing decision by the printer vendor. It is usually more cost-effective to implement than to develop a unique model for the low-end market. On these printers, changing the firmware will sometimes change the speed and/or resolution.
Oftentimes, printer vendors will use the same parts across different models for several reasons. One, to get volume discount pricing from their suppliers, which should allow them to reduce costs. Two, same part usage should allow them to use the same engineering design, testing, validation and production processes. Again, reducing costs as well as allowing them to get the printer to the market sooner. Three, same part usage should allow for better inventory control, as well as service and support. It is one thing to release a new printer, but you still have to support it, especially in the competitive marketplace today. There are other reasons as well.
If you take a basic dc motor, like in a child's toy for instance, it has one coil(two lead wires). This coil is wrapped around the motor shaft and is in the center of two magnets. If you connect the wires to the +/- terminals of a dc power source, the coil will energize, and the motor will rotate in one direction. To change the direction the motor is spinning you must swap the lead wires at the +/- terminals. If you add an encoder to the end of the motor shaft, to determine rotational position and/or motor speed, you have just created a DC "servo" motor.
Stepper motors are not too hard to understand, just different. Stepper motors have the magnet mounted to the shaft. See, it is different already! And this magnet/shaft is surrounded by a series of coils. If one of the coils gets energized, the shaft will rotate towards the coil and stop there, attracted to the coils' magnetic field. It will stay rigidly in this position (called "holding torque") as long as the coil is energized. In order to get a stepper motor to rotate, you must turn on and off (pulse) the coils in a certain sequence. This is easy enough to implement with a digital processor, the number of pulses can be counted, stored, and compared to determine shaft rotation, speed, etc. The greater the number of coils, usually, the greater the precision, but in return the more complicated the stepper's coil drive circuitry will be, and the faster the processor and drive circuit will have to be to keep up. Adding an encoder mainly allows for greater precision using error-checking and correction using digital signal processing routines, which adds even more burden to the processor system.
Hope this helps you
Yes and no. The firmware is usually implemented as a result of the hardware decisions used on the printer. Flashing the pixma 1000 firmware to the i320 printer will not increase the speed and resolution of the i320, because the i320 may not have the required hardware for the pixma 1000 firmware to use properly. For example, the stepper motor and drive pcb may appear to be the same on both printers but the pixma 1000 might use half-step phase control of the stepper motor and the i320 might use full-double phase control. However, sometimes the printer vendors will use the same hardware across several models and change the resolution and speed by not implementing the features in firmware. Adding extra wait times to make the 10 model slower than the 12 model, for instance. This is often done to create a lower price(read: less profitable) printer model to compete with the other printer vendors' offerings, but not cannibalize sales from your own more upscale(read: more profitable) printer lineup. This is strictly a marketing decision by the printer vendor. It is usually more cost-effective to implement than to develop a unique model for the low-end market. On these printers, changing the firmware will sometimes change the speed and/or resolution.
Oftentimes, printer vendors will use the same parts across different models for several reasons. One, to get volume discount pricing from their suppliers, which should allow them to reduce costs. Two, same part usage should allow them to use the same engineering design, testing, validation and production processes. Again, reducing costs as well as allowing them to get the printer to the market sooner. Three, same part usage should allow for better inventory control, as well as service and support. It is one thing to release a new printer, but you still have to support it, especially in the competitive marketplace today. There are other reasons as well.
If you take a basic dc motor, like in a child's toy for instance, it has one coil(two lead wires). This coil is wrapped around the motor shaft and is in the center of two magnets. If you connect the wires to the +/- terminals of a dc power source, the coil will energize, and the motor will rotate in one direction. To change the direction the motor is spinning you must swap the lead wires at the +/- terminals. If you add an encoder to the end of the motor shaft, to determine rotational position and/or motor speed, you have just created a DC "servo" motor.
Stepper motors are not too hard to understand, just different. Stepper motors have the magnet mounted to the shaft. See, it is different already! And this magnet/shaft is surrounded by a series of coils. If one of the coils gets energized, the shaft will rotate towards the coil and stop there, attracted to the coils' magnetic field. It will stay rigidly in this position (called "holding torque") as long as the coil is energized. In order to get a stepper motor to rotate, you must turn on and off (pulse) the coils in a certain sequence. This is easy enough to implement with a digital processor, the number of pulses can be counted, stored, and compared to determine shaft rotation, speed, etc. The greater the number of coils, usually, the greater the precision, but in return the more complicated the stepper's coil drive circuitry will be, and the faster the processor and drive circuit will have to be to keep up. Adding an encoder mainly allows for greater precision using error-checking and correction using digital signal processing routines, which adds even more burden to the processor system.
Hope this helps you