Tapping Weighing Scale Data

So, I have a weighing scale that displays data to a 6 digit 7 segment display. Ive decided to intercept data going into the 7 segment display by tapping the wires. So ive got 14 output pins of 6 digit 7 segment display which i attached to the arduino like this -
// Define segment pins (A-G and DP)
#define SEG_A 2
#define SEG_B 3
#define SEG_C 4
#define SEG_D 5
#define SEG_E 6
#define SEG_F 7
#define SEG_G 8
#define SEG_DP 9

// Define digit control pins (D1-D6)
#define DIGIT_1 10
#define DIGIT_2 11
#define DIGIT_3 12
#define DIGIT_4 13
#define DIGIT_5 A0
#define DIGIT_6 A1

Now i cant figure out the program that intercepts this data and prints it to the serial monitor.

Before you destroy your arduino you need to check to make sure that all the voltages are less than 5V.

Your idea may or may not work. To see if it does, read all the segment signals when the digit 1 signal changes from high to low and from low to high. See if one of the readings (low-high or high-low) corresponds to the displayed digit.

Printing to the Serial monitor will have a hard time keeping up with the refresh rate of the 7 segment display

Yes, you're absolutely right.
It is.

checked the voltages. its working fine

It is what?

i meant ive checked for the voltages and everything its below 5V

Then just try some code to do as I suggested.
The problem is the the state of the signals may not always be a high or low, they may be left floating by the controller IC. If they do float you may get erratic and unreliable readings.

The display is likely to be multiplexed.

If you just take a 'snapshot' of the data that you are receiving on the 14 pins that you are monitoring, I think that you might just get the information about one particular digit or segment.

You would need to take multiple readings at exactly the right timing to build up the full picture.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.