I was wondering how do memory seats keep track of their position. Since this kind of equipment existed in 1990's cars, it must be simple yet ingenious. I have been thinking about this for quite a time now and cannot figure out how it works (without tearing apart a donor car).

So as to keep it simple, let's only consider the forward / backward position of the seat. Usually, we have buttons for 3 memories.

Seats could be using a default position as a reference paired with a duration of movement of the electric motors, but they would need to go back to this position when you press a button to recall a memorized position before moving to the right position. Since they go straight to the right position, I guess it's not how it works.

Any idea?


  • \$\begingroup\$ Rotary encoders and eeproms. Or comparable parts. \$\endgroup\$ – Passerby Nov 13 '18 at 14:58
  • \$\begingroup\$ Thanks! It means the rotary encoder must have some sort of teeth track to drive the encoder's cogwheel, or be driven directly from the electric motors. I kinda see how it works now. Thanks a lot! \$\endgroup\$ – Doc47 Nov 13 '18 at 15:03
  • \$\begingroup\$ Yeah. It had to be simple back in the 1990s. All we had for memory was scratch marks on slate, but only if you kept a rat bone from the previous week's only meal. Didn't have nonvolatile RAM with battery backup, didn't have EEPROMs or FRAMs. Didn't have encoder wheels with gray code. It's a miracle any of us made it out of the 90s alive. \$\endgroup\$ – JRE Nov 13 '18 at 16:11
  • \$\begingroup\$ Went here to get answers, wasn't expecting such a level of sarcasm. Sorry for not having the same knowledge as you do. \$\endgroup\$ – Doc47 Nov 13 '18 at 17:49

The automotive industry has spent a lot of years on designing feature for a low cost. The most likely mechanism used in this case, is a simple contact that is triggered once for each revolution of the motor.

The seat position is then memorised in revolutions from the zero state, which is defined by and end switch at one extreme of the range.

  • \$\begingroup\$ Seems feasable, storing the revolutions count would be the same as storing the value from a rotary encoder, as suggested by @Passerby \$\endgroup\$ – Doc47 Nov 13 '18 at 15:33
  • 1
    \$\begingroup\$ This would be easy to check. If the seat goes to a "home" position before an adjustment, it's like a relative encoding, like a pulse-per-revolution would provide. I have a feeling its an absolute encoder, however \$\endgroup\$ – Scott Seidman Nov 13 '18 at 15:44
  • \$\begingroup\$ @ScottSeidman if the system is very sure about its position all the time, then it maybe needs to do this only once at the factory and can move from the last saved position. Sounds a bit dodgy though, if the seat is moved by force... \$\endgroup\$ – Arsenal Nov 13 '18 at 16:11
  • \$\begingroup\$ @Arsenal -- I suppose it can store current position in non-volatile memory continuously, to survive a battery change or a blown fuse, but that would involve many writes. \$\endgroup\$ – Scott Seidman Nov 13 '18 at 16:15
  • \$\begingroup\$ You overestimate how often people move their seats or set their favorite position. But most cars with automatic seats will have a recalibration process in their service manual, for when seats are worked on. \$\endgroup\$ – Passerby Nov 13 '18 at 16:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.