Display for Stackmat timer

The mcp1700 has arrived in my store, but I don't know why I ordered that instead 1702, because 1700 can be burned with 4x normally AAA, uhh :roll_eyes::sleepy:

And AAA, from my tests, will have enough power to run days and days, instead AA, which are bigger, and uses more space in enclosure.

Does this help with flickering?

  if (yuxin.available() >= 10) { //full message has arrived?
    yuxin.read(); //discard command byte
    yuxin.readBytes(time, 6);

    while (yuxin.read() != '\r'); //discard rest of message
    //Serial.println(time); // Show Serial for testing
    }
  else if (yuxin.available() == 0) { //no message waiting, update display
    if (time[0] != '0') {
      display.showString(time, 6, 0, 0b10100000);
    }
    else {
      time[0] = ' '; //supress minutes digit

      if (time[1] == '0') time[1] = ' '; //suppress ten seconds digit
      display.showString(time, 6, 0, 0b00100000);
    }
  }

Thanks. It is same.
As I can see, you set if time = 0, but I think there is a time, which exist (as single digit), only not converted in number.
Bez naslova
Also, sometimes when digit blank in serial, thinks that there is some hidden digit under it, which can't see.
That interference, whatever its cause, result, usually with two digit flickering (random of 6) one by another.

I created a short VIDEO, maybe come a new idea.

I agree, there is still some corrupted data being received from the yuxin. This is causing the flickering.

  if (yuxin.available() >= 10) { //full message has arrived?
    yuxin.read(); //discard command byte
    yuxin.readBytes(time, 6);

    while (yuxin.read() != '\r'); //discard rest of message
    //Serial.println(time); // Show Serial for testing

    bool isDigits = true;
    for (byte d = 0; d < 6; d++) isDigits &= isDigit(time[d]); // check all characters are digits

    if (isDigits) {
      if (time[0] != '0') {
        display.showString(time, 6, 0, 0b10100000);
      }
      else {
        time[0] = ' '; //supress minutes digit

        if (time[1] == '0') time[1] = ' '; //supress ten seconds digit
        display.showString(time, 6, 0, 0b00100000);
      }
    }
  }

Well done! Thanks!
I tried very hard to see with naked eye, even with camera, is there flickering, but I can't see any of them. I think this problem are solved. :+1: :+1:

How you do that? :slight_smile:
Is that mean if no clear numbers, then show number from before, like freeze it (only in 1/8 of second) ?

Now, if you don't mind, please allow me to remove last placed resistor, so that will be only one resistor (like scheme #55), can I do that? :smiley:

Try it, you will soon know the answer.

It means if any of the 6 characters are not digits, do not update the display.

Not truly solved. The data is still getting corrupted, we did not fix that

I don't need try. From before know that will work haha

Is this scheme at the end of page fine(but with other capacitors)?

But, there is only 1 capacitor, and in datasheet required 2.

Tell me for booth 1700/1702, do I need buy 1μF capacitor? Voltage? 1 or 2 pcs?

No, there are 2. They are both on the output side of the regulator. One is 100nF and the other is 1000uF. I don't think you need anything as big as 1000uF for your circuit, so try the 1uF as the data sheet suggests, plus the 1uF on the input of the regulator also. If you have problems, increase the cap on the output side to 10uF. The voltage of the caps does not matter as long as they are above the maximum battery voltage.

Great. How many volts in range?
I see that store not have big selection by volts.

I don't understand your question.

Every capacitor have mark "v", for voltage. Which v I need? 5, or can be higher?
Closest I found on store web is 1uf63v.

Ok.

For the same value of capacitance, a lower voltage cap will probably be physically smaller, and may be cheaper. Those are the only advantages. If the size and price is ok for your project, a higher voltage cap will be fine.

Sorry, now I saw that you answered here.

My rechargeable AAA Panasonic 1.2v battery charging 1.46-1.49 per cell, and not exceed 6v. They are around 5.90v.

I installed MCP1700 and 2x 1uf63v. No matter how many volts input (bellow 6v), output is always 4.8v. Is that ok?

Tried to install on output 10uf, not see difference, only maybe is more stable voltage.

(On scheme we will pretend that regulator is MCP1700 and capacitors 1uf63v.
And MCP1702 is on the way from China.)

Yeah, fine.

I am looking how much exactly volts have 4xAAA, non-rechargeable. Only video I found is here.

From that I see that all have 6.0 to 6.1v.
So, now the biggest question, stay on 1700 or use 1702. Can be 1700 burned when exceed this 0.1v? I think not.

The second question is minimum input of this two. Is that mean if regulator have higher minimum voltage input, it will shut down earlier (when device use power) than regulator with the lowest minimum input voltage? And after that battery can be used and working in other devices which have no such big limited minimum input?

Linear regulators like these do not cut out when they can no longer output 5V. They just output less than 5V.

The mcp2702 has a drop-out of 625mV. The mcp1700 has a drop-out voltage of only 178mV.

That means that as the battery voltage falls, the 1702 output will drop below 5V when the input voltage reaches about 5.6V. After that, the output voltage will remain about 0.6V below the input, so when the input voltage falls to 5.0V, the output will be about 4.4V.

With the 1700, the output will drop below 5V when the input voltage falls to about 5.2V. When the input voltage has fallen to 5.0V, the output will be 4.8V.

What we don't know is what minimum voltage the Nano and the display need to continue to operate. The Nano should be ok down to around 3.8V, and maybe lower, but it is not guaranteed. I don't know about the display.

So the 1700 might give a longer battery life. But it has the disadvantage that it could be damaged by input voltage over 6V.

Oh, that's it.

The operating voltage for TM1637 is 3.3v-5.5v.
On my tests with resistor changing, show that display stop working around 3.22v.

In the meantime, I will buy some normal AAA batterys to see voltages and is they exceeded 6.1v.

I see now that I make mistake in post, where we both not noticed it. It is not 6.1 for all batteries, must be 1.6 per battery!! LOL

Anyway, I bought 4xAAA Duracell, which are accessible to everyone, and they have 6.39v! Don't know how long need to voltage drop and how much will drop, but for sure, the 1702 is necessary there.

Don't worry, I will be using rechargeable all time while timer is with me and save planet :wink:

New material comes for this and future projects.


Also waiting Mcp1702 and Digispark.



I got rest of parts.
For Digispark my position will be good like bottom left (or right). Later, idea is cut upper board to half.

Can you tell me is that good way to soldering Digispark, like on picture? (I mean, the 'tip' must be inside board?).

And I found that this way, where are chips on the top, is the best way when you want to connect USB, because if you rotate Digi top/bottom 180°, the blue part in USB (picture) won't come smoothly, that means you must pull Digispark for 1mm UP to insert USB, which will be impossible when will be soldered.

The way like on picture, this type of USB go smoothly.

I assume that Digispark 'USB' must stay open and be accessible for project if someone in future want to do upgrade? Otherwise, I can close it up in enclosure, and problem done.

No, if you want the tip to extend beyond the board, that's your decision. You know how the board will be fitted inside it's case.