Without any prior notice to Roomba/Scooba owners iRobot has (ca., 2006, Q4-2007, Q1) invoked a new policy regarding performance of "diagnostic" tests (those which are built-in to all Roomba/Scooba firmware) without first discussing the need to do so with iRobot Customer Support. A robot with valid warranty stands to have its warranty revoked if an owner fails to heed the new policy.
There has been no formal release of the subject policy, however, a quasi-formal post, which also explains the Company's concerns, may be read via this RoombaReview Sticky. [v.0.2]
When Scooba's wheels, brushes or pumps are driven, finger-tips, beards, and neck-ties or other garments are exposed to a hazardous situation. Notice that a Scooba-5900 in Self-Test Mode is operating without the normal safety features, features that can stop motors when Scooba is lifted off the floor, or if something jams a mechanism. Due care must be exercised when using hands to reorient Scooba while its wheel and brush motors are powered. With that preamble said, be aware that this document has been prepared by Scooba owners, [1], none of whom are employed by iRobot, Inc.; further the authors are not to be held responsible for personal, or material damage, nor for any inaccuracy within this document.
To proceed, you are doing so at your own risk; and, agree to the above disclaimer statement.
Self-testing may be done with, or without Scooba's Tank Assembly mounted. If proceeding without the Tank, notice that several tests cannot be completed; however, if the Tank is to be included, be certain to place a couple measuring cups of acceptable cleaning solution in both of its chambers. Alternatively, you may begin testing with the Tank mounted, then unlatch it when particular tests need it out of the way; and, replace it if subsequent tests require its presence.
Prior to entering Scooba-5900's self-test, "ST", mode, you should decide whether you want testing to sequence automatically, or to wait for your manual-command before proceeding. Choose either of these methods:
If auto-indexing was not chosen, use the "Clean" button to move forward through the self-test series. The "Power" button may be used to reverse the test-selection at any point, if manually indexing tests.
Upon entry into each self-test, Scooba's speaker will emit beeps of one, and/or two lengths, in which the test-number is encoded via the Base-5 numbering system.[2] One exception is test-zero, which has its own 'song'.
The 5900's numeric-display, titled "Service", will indicate the test-number in decimal format, and with a leading zero for test-numbers less than 10. Since 'Service' can display only a single digit, the display must toggle the two digits that make up any test-number.
Beeps |
Service |
Function Under[v.0.2] |
Comments[v.0.2] |
5 notes up, |
0,0 |
All panel LEDs & displays, and the speaker are tested. |
All panel LEDs lock ON for about three seconds, then flash in sequence until test increments. If you had recorded these LED actions when Scooba was new, you would have a comparison set :-). See note [3] for lighting details. |
Success is: |
All LEDs and indicators, properly light; and tones from the speaker are heard. |
||
0 long, |
0,1. |
Unknown |
TBD test. An SCI-dump of Factory Tests calls this "ext-watchdog". |
Final display is: |
Clean & Power flash GRN, then CheckTank lights and Clean = GRN. |
||
0 long, |
0,2. |
Bump-Functions, |
Push in one side of Bumper, push in the opposite side, then press the Bumper’s center. Clean = dark, at entry to ST#2. |
Left-side SW: |
"CheckTank" should light |
||
Right-side SW: |
"I'mStuck" should light |
||
Both-SWs together: |
Both of above indicators should light |
||
Success is: |
After L, R, and central presses, Clean = GRN = PASS. |
||
0 long, |
0,3. |
Cliff Sensors, Side
|
Lift left side, then right, off the table, CheckTank & I'mStuck lights go ON
|
Left-floor gone: |
CheckTank should light |
||
Right-floor gone: |
I'mStuck should light |
||
Success is: |
After CheckTank & I'mStuck light, Clean = GRN = PASS. |
||
0 long, |
0,4. |
Center-Cliff & |
Lift front off the table, then set it down to toggle the Cliff indicator. Hold hand or white-card near Wall-sensor ports, to toggle Wall sensor's indicator. |
Center-floor gone: |
CheckTank should light |
||
Wall simlation: |
I'mStuck should light |
||
Success is: |
After CheckTank & I'mStuck light, Clean = GRN = PASS. |
||
1 long, |
0,5. |
Drop Sensors, Driving-Wheels' |
Lift Scooba off table, lift one drive-wheel, then the other to toggle the indicators. |
Left-whl down & up: |
CheckTank lit, then dark |
||
Right-whl down & up: |
I'mStuck lit, then dark |
||
Success is: |
After CheckTank & I'mStuck toggle, Clean = GRN = PASS. |
||
1 long, |
0,6. |
Lift Scooba’s front off the table, so the Front Wheel may be manipulated. |
|
Frnt-Whl down & up: |
CheckTank+I'mStuck lit, then dark |
||
Front-Whl-Rotation |
Collapse knee-action, then I'm Stuck lights during part of each turn. |
||
Success is: |
After CheckTank & I'mStuck toggling, Clean = GRN = PASS. |
||
1 long, |
0,7. |
Unlatch Tank, remove test items, then re-install / re-latch Tank. |
|
If Tank is unseated: |
CheckTank will light. |
||
If Cleaning-Head is not latched: |
I'mStuck will light. |
||
If Filter Asm. gone: |
CheckBrush will light. |
||
Success is: |
After CheckTank, I'mStuck & CheckBrush toggle, Clean = GRN = PASS. |
||
1 long, |
0,8. |
Ambient-Light Sensor |
In a brightly lit ambient, I'mStuck should be lit. Put a finger-tip over the circular window to the right of the I’m Stuck indicator, to mask the window; but also watch CheckTank while blocking the window. |
Sensor blocked: |
CheckTank light should light as I'mStuck goes dark. |
||
Sensor response to mid-level lighting: |
CheckTank and I'mStuck should be dark. |
||
Sensor not blocked: |
I'mStuck light should light. |
||
Success is: |
After all indicator-toggles, Clean = GRN = PASS. |
||
1 long, |
0,9. |
VWU Receiver |
Check response to VWU & Remote-Controller stimuli. |
Using VWU's beam(s): |
CheckTank should light |
||
Using Roomba’s Remote-Control: |
I'mStuck should light |
||
Success is: |
After CheckTank, & I'mStuck toggle, Clean = GRN = PASS. |
||
2 long, |
1,0. |
Brush-Motor Operation |
Brush-motor should be powered upon test-entry. |
If over-current fault: |
CheckTank will light |
||
Success is: |
Motor runs + CheckTank = dark, Power = GRN = PASS. |
||
2 long, |
1,1. |
Vacuum-Motor Operation |
Motor should be heard running upon test-entry. |
If over-current fault: |
TBD fault-indicator will light |
||
Success is: |
Motor runs; exhaust flowing out forward of left wheel may be felt & dark fault indicator, Power = Clean = GRN = PASS. |
||
2 long, |
1,2. |
Pumping Operation (High rate grades to slow) |
Requires presence of Clean-Tank with liquid. Lift Scooba enough to observe both jets ejecting liquid. |
If over-current fault: |
TBD_indicator will light |
||
Success is: |
Pump operates to eject liquid out both jets; starting at max-rate, then slowing to low-rate & dark fault indicator, Power = Clean = GRN = PASS. |
||
2 long, |
1,3. |
Liquid Sensors' Tests |
Again, both jets should be emitting fluid, but watch CheckTank and I'mStuck. ChkTnk and I’m-Stuck are dark |
If Clean-chamber contains an acceptably conductive liquid: |
CheckTank should be lit to indicate flow of conductive liquid through the sensor at the far end of the Solution Inlet Lance. |
||
If Dirty-chamber is more than half full of acceptably conductive liquid: |
I'mStuck should light. |
||
(Don't know why:) |
CheckBrush may light when pump-motor runs. |
||
Success is: |
With proper liquids in tank-chambers, both CheckTank and I'mStuck should be lit = PASS. Pump operation is incidental. |
||
2 long, |
1,4. |
Left wheel, forward-drive |
On test-entry, wheel is rotating. If on floor, NOT RECOMMENDED, Scooba will spin C-W, pivoting around its right wheel. Power = GRN. |
If over-current fault: |
CheckTank will light |
||
Success is: |
Left-Wheel rotates properly + CheckTank = CheckBrush = I'mStuck = dark; Power = Clean = GRN = PASS. | ||
3 long, |
1,5. |
Right wheel, forward-drive |
On test-entry, wheel is rotating. If on floor, NOT RECOMMENDED, Scooba will spin anti-C-W, pivoting around its left wheel. Power = GRN. |
If over-current fault: |
I'mStuck will light |
||
Success is: |
Left-Wheel rotates properly + CheckTank = CheckBrush = I'mStuck = dark; Power = Clean = GRN = PASS. |
||
3 long, |
1,6. |
Drive-Wheels Rotation Sensors’ (tachometers) test |
On test-entry both wheels drive in reverse. Observe rapid flashing of "CheckTank" and "I'mStuck" lights. Power and Clean are GRN. |
Success is: |
"CheckTank"and "I'mStuck" lights flash, CheckBrush = dark + Power = Clean = GRN; = PASS. |
||
3 long, |
1,7. |
Charging-voltage Check |
Connect SPSU-charger to Scooba, then AC-power the SPSU. |
If Charging voltage is OK: |
CheckTank will light |
||
Success is: |
CheckTank lit and Clean = GRN = PASS. |
||
3 long, |
1,8. |
Battery-Parameter-Sensing Checks |
Verifies robot's read-out of its battery-voltage, -temperature, & -current. |
(Don't know if V or I:) |
But, CheckTank will be lit |
||
(Don't know if I or V:) |
But, TBD-indicator will be lit |
||
Temperature - If Battery is cool enough to charge: |
I'mStuck will light |
||
Success is: |
CheckTank and I'mStuck lit, plus Power = Clean = GRN = PASS. |
||
3 long, |
1,9. |
Trickle-Current Check |
I_tricl_chg = +0.14A, underway |
Success is: |
CheckTank = lit, Power = Clean = GRN = PASS. |
||
4 long, |
2,0. |
Top-Off Charge Check |
I_topOff_chg = +0.42A, underway |
Success is: |
CheckTank = lit, Power = Clean = GRN = PASS. |
||
4 long, |
2,1. |
High-Rate Charging Check |
I_fast_chg = +1.73A, underway |
Success is: |
CheckTank = lit, Power = Clean = GRN = PASS. |
||
4 long, |
2,2. |
Unknown |
TBD test. An SCI-dump of Factory Tests calls this "charger-watchdog". On entry, Power & Clean are dark. |
Final display is: |
CheckTank and I'mStuck lit, and Clean = GRN. |
||
4 long, |
2,3. |
Unknown |
TBD test. An SCI-dump of Factory Tests calls this "charger-switch-isolation". On entry, Power & Clean are dark. |
Final display is: |
CheckTank and I'mStuck lit and Clean = GRN. |
||
4 long, |
2,4. |
'Bootloader' |
Clean = GRN and "Check Tank" = lit. |
Final display is: |
CheckTank lit and Clean = GRN. |
||
Repeat, |
Pressing Clean to end Test-24 will also return Scooba to Self-Test 0,0. Disconnect the
SPSU-Charger at this time; else, if you forget, see Note [4] to learn what the Power button does. |
||
[1] Thanks go to Greg Lane for: reporting (Spring 2006) how to access Scooba's built-in tests; for devising the very first table of tests; and, for allowing his source material to be ported into the editor's site .
[2] Howard Busch, a RoombaReview member, deduced the Base-5 system is being used to code test-numbers in Discovery-Roomba's self-test (diagnostic) sequence. We can see iRobot has done the same with Scooba.
[3] Here are some details about Test-Zero's light-display:
[4] If the battery is disconnected to end self-testing, without first disconnecting charging power, a portion of Scooba's electronics will be powered by the SPSU's voltage. Scooba will indicate that status by performing a Power-button light-show. Two pairs of red and white LEDs will light for a few seconds, then be replaced by a full arc of green, briefly flashed, and that will be followed with a flash of red, both filling the illumination window of the Power button. The 'show' then repeats.
v.0.0, 060413: Original version posted by Greg Lane (see the 7:13PM post in that thread).
v.0.1, 060706: Transformed MSWd-html to non-MS-html and updated the tests with new information.
v.0.2, 070912: Added missing material to Tests 7,8,10, 13-15, and 17-24. Users may again thank Howard Busch, for his efforts in fleshing out the previously unknown features; as well as the editor, for fleshing-out and adapting Howard's findings to this format. Miscellaneous re-formatting has also been done in this update. Essentially every test has undergone correction, or other adjustment, hence it is not feasible to flag every changed item.
This document is currently maintained by Gordon. If you have any corrections, or new material, you may contact "Gordon" via PM at RoombaReview.