Understanding counting with arrays

	uint8_t change_this_cell  = 0;
	// value of the default cell
	uint8_t change_value = EEPROM.read(change_this_cell);

How is one supposed to make a connection between a variable called change_this_cell and an address in EEPROM? Meaningful names would make your code easier to follow.

	uint8_t change_this_cell  = 0;
	for (uint16_t cell = 1; cell < cells_to_use; ++cell) {
			change_this_cell = cell;

Storing a uint16_t in a uint8_t is going to potentially require a big shoe horn. You really need to evaluate all the argument types to see whether they are all reasonable.

	for(uint8_t times=0; times<8; ++times) { // pot input divide by 25 or 30 for Leonardo....multiply by 5 for Uno

The relationship between the comment and the code is???