I've developed a counter based on the Newton's-cradle memory cell. There are two key modifications to the basic cell: first, I added a spur that the cart bumped from the middle runs along before it reaches the main rollers, and second, I altered the cell so that instead of writing a '1' or '0' directly, it inverts its value on a rising edge. (This is distinct from the modified load-adjusted memory cell: the modified load-adjusted cell inverts on any edge.)
I went through two earlier designs. Both designs use reset rollers (driven from the microcline gear) which are powered whenever the set rollers (orthoclase gear) aren't powered. To invert the value of a cell, the orthoclase gear is switched on and the microcline gear switched off. The cart bumped out of the cradle follows the tracks off to one side and stops on top of the unpowered reset roller. On the falling edge of the incoming signal, the microcline gear is turned on and the orthoclase gear is turned off. The reset roller derails the cart onto the reset track, and it comes to rest atop the unpowered set roller.
During construction, a lever is first linked to the microcline gear. The lever is then pulled, linked to the orthoclase gear, and pulled again.
For the carry bit, a pressure plate is placed on the spur that a cart will traverse when the cell transitions from '1' to '0'. This pressure plate is linked to the orthoclase and microcline gears of the next bit in the counter. A cell with a carry plate after the reset roller sets the overflow bit on the falling edge of the signal:
(Note that the second and third cells in the illustrated 3-bit counter use an overhead axle to link their set rollers.)
while a cell with a plate before the reset roller sets the overflow bit shortly after the rising edge:
(Note that the all cells illustrated here use an overhead axle to link their set rollers.)
The first design is not suited to a typical counter because the carry propagates too slowly. Both these designs have the disadvantage that they consume power even when they're not being written.
The final design I settled on is fast, mechanically simpler and has no idle power consumption, but it takes up slightly more space. The key is that instead of using a reset roller to push the cart back onto the set roller when the input signal goes low, it instead uses a "hold-off" roller to keep pushing the cart onto a ramp, preventing it from reaching the set roller until the input goes low. This cart-return mechanism works on the same principle as the ramped power-to-signal converter.
The orthoclase gear is initially off. When the input goes high, all rollers are powered and the cell's value inverts. The cart bounced out of the cradle derails onto the ramp, then rolls down toward the hold-off roller. The hold-off roller bounces the cart back to the ramp, keeping it from reaching the set roller until the input goes low and the rollers all turn off.
The pressure plate on the spur a cart rolls along when the cell transitions from '1' to '0' is linked to the orthoclase gear in the next cell over.
All ramps are constructed E-W track ramps with a solid ceiling above. Without a solid ceiling, this design may send carts flying.
In testing, I found that there must be space between the hold-off roller and the ramp. Putting the roller on the ramp prevented the cell from resetting under certain circumstances. The walls alongside the reset track are important: if they're not present and input stays high for long enough, the cart will fly out that side. Finally, the return track must derail onto the E-W track ramp, not onto the hold-off roller: If the cell is operated from a pressure plate, no problems will happen, but if it's operated from a lever, it's possible to flip the input fast enough that the hold-off roller will be off by the time the cart reaches it, preventing the cart from reaching the set roller. If the cart derails onto the ramp, it'll always return to the set roller.
If overhead space is available, this design can be made more compact by putting the gear in the middle of the cell and taking power from a bus on the z-level above.
If used in a design that waits for the counter to reach a particular value, I recommend briefly turning off power to the comparator every time the clock goes high. If held off for 100 ticks plus the worst-case time for a carry to propagate through your counter, this should prevent you from reading incorrect values.