Loading...
Pages: [1] 2   Go Down
Author Topic: Snooping/Hacking Digital Scale display (RIBBON?)  (Read 1159 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 21
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

This is the first time I've tried to hack a display. I want the output to be sent to my arduino so I can record the weight that the scale is reading.

I'm familiar with controlling a single 7 segment display, but not one of these. How can I hack this ribbon? I'm afraid to pull much more apart because I don't want to damage anything.

Anyone have any thoughts?
Logged

Massachusetts, USA
Offline Offline
Tesla Member
***
Karma: 97
Posts: 6376
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Looks like the LCD segments are being driven directly by the chip under that black blob. Perhaps you can find a useful analog signal going INTO the blob rather than trying to see what the blob is displaying on the LCD.  Check out the small chip to the left of the blob.  Maybe that is a signal conditioning chip.
Logged

Málaga, Spain
Offline Offline
Edison Member
*
Karma: 33
Posts: 2012
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I would start by probing those test points marked with T4, T7 and T8. T5 looks like GND. If that  chip is an LW24C02 its an EEPROM. It is probably used for storing the mode (g and oz) an the zero.

T4 may have an interesting value since it come from the "chip on blob" which is surely the LCD driver.

Where does the white and blue wire go? They also look interesting. Are there any other chips on that board?
Logged

   

Leeds, UK
Offline Offline
God Member
*****
Karma: 35
Posts: 986
Once the magic blue smoke is released, it won't go back in!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

T2 is GND, T5 is connected to pin 6 of the SOIC8 package (if you look closely, you can see the trace).

T8 is SDA, T5 is SCL. This is the I2C bus which connects the eeprom chip to the display driver.
(EEPROM chip: http://www.8051projects.net/e107_files/public/1339238201_38804_FT55741_24c02.pdf)

T4 would be interesting to know what they do.


At any rate, I recon the display itself shouldn't be difficult to integrate with. If you were to connect each of the 16 display pins to an arduino pin, and then cycle through each possible combination of pins, you could probably find out how all the pins relate to the segments of the display. Perhaps do it in a binary sequence.
« Last Edit: August 27, 2012, 06:07:27 pm by Tom Carpenter » Logged

~Tom~

Offline Offline
Newbie
*
Karma: 0
Posts: 21
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Wow, thanks for all of the responses. Extremely helpful. I'm very new at reverse engineering (if that's what you want to call this) and I'm absolutely a blank slate when it comes to recognizing different chips.

Anyway, I'll do my best to respond/answer what you all asked/stated.

John, it seems like others have identified the black chip to the left of the blob as EEPROM. That makes me wonder... where is the conditioning chip at? It has to have one to go from analog to digital, doesn't it?
I'm also trying to avoid messing with the raw analog signal because I'd like to maintain the accuracy of the scale...I feel like if I messed with the analog signal, I would have to convert it "by hand" to get an actual number, which would be prone to inaccuracies... although if I'm wrong, please correct me (seriously, I'm trying to learn. If I say something stupid, call me out).

FM, I realize this is an incredible noob thing to say, but how do I probe them? Do I need a several hundred dollar oscilloscope (seen that mentioned on some blogs)? Regardless, how do I probe something that's so small? I'm very unfamiliar with traces, as the only electrical education I have is with breadboards and larger circuits. If you could send me a link or just some incite on how to get started with that, I'd love to probe everything on there even if I solve my issue before then.
Also, this is the only chip. The red and black wires go to batteries (as expected) and the blue/white wires go to the actual scale. That must be where it gets all of it's raw data from.

Tom, FM had suggested that perhaps T5 is GND. After looking at the chip datasheet that you found (clearly the correct chip, I didn't think to look up the serial number thing), it's obvious that T5 is SCL and T* is SDA, however, how did you know that T2 is GND when the EEPROM chip doesn't actual have a trace to it? I noticed that there's a faint trace going around the entire chip that touches T2. Is that how you knew?
Here's the most obvious question that will absolutely solve my problem, but how do I connect those 16 display pins to an arduino pin? I assume I have to solder things at this point, which I'm excited about (just bought a kit) but how do I actually go about doing that? Do I intercept the signal before it hits the ribbon (To the right of the black blob)? After that I'm very familiar with testing for the sequence, and I should be able to handle that.

Thank you all so much for the responses, you were incredibly helpful. I feel 100x more confident now, and if any of you have book recommendations/websites for the extreme amateurs that can help get me started with this hobby, please feel free to post them.
Logged

Leeds, UK
Offline Offline
God Member
*****
Karma: 35
Posts: 986
Once the magic blue smoke is released, it won't go back in!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

The conditioning chip as you put it is that big black blob. It is basically a microcontroller. In order to save money and space, the silicon itself is soldered directly to the board (rather than a seperate IC). It is then covered with a blob of epoxy to protect it.

I can tell T2 is GND because it is part of the ground plane (the large filled region). If you look at the second photo, you can see there is no gap around the edge of it, meaning that it must be connected to GND.
I can also tell that T5 is Not GND because if you look to the 'south-west' of the test point (assuming 'north' is up), you can see a trace coming from it and joining the trace to pin 6 of the EEPROM.

You have two options for joining it up. The first is to look under the screen and underneath you should find a series of solder joints - these could be desoldered and then have wires attached which go to the Arduino (i would suggest a 100Ohm resistor in series with each of the 16 wires until more is known about the display - just a precaution).
If it is not soldered on, but rather attached by a rubbery looking pink and black strip, then things get a little more interesting. You would in that case likely have to cut the traces going to the blob and scrape of the solder mask (using the back of a knife) and solder your wires to the cleaned PCB traces.


As for probing stuff, an oscilloscope is handy if you have access to one, but is not a requirement by any means. You can do some probing work with just an ordinary digital multimeter (even a cheap £5 one is a handy tool to have).
For digital signals, you can use an Arduino as a digital probe - I found a great site which has an arduino sketch and computer software which works well - I will have to find the link.
Logged

~Tom~

Offline Offline
Newbie
*
Karma: 0
Posts: 21
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

It is the pink/black strip... I've been referring to it as a ribbon, sorry about that. Why do I need to cut the traces going to the blob though? I'm imagining [signals --> blob --> display]. When you say cut traces going to the blob, do you mean between the display and the blob? (That's what I assume, I just want to make sure I'm not doing something stupid). And in this case, are you referring to the white plastic-y piece that the ribbon/pink and black strip is connected to as the solder mask, or are you referring to the black blob as the solder mask?
Sorry for 100 questions, the way that I'm looking at it either way should work though, assuming that regardless of the technique, the original display will never work again.

EDIT: The white plastic-y piece that I'm talking about is an LED sitting behind the display. Wasn't sure if it was working as a solder mask as well or something though.

One more EDIT: There isn't any soldering on the bottom of this chip... is that going to be problematic? I'm not entirely sure how to connect to the PCB when there's nothing on it that has been previously soldered.
« Last Edit: August 27, 2012, 07:31:56 pm by pezz » Logged

Phoenix, Arizona USA
Offline Offline
Faraday Member
**
Karma: 27
Posts: 5082
Where's the beer?
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Be aware that if you are directly interfacing with the LCD itself, it likely requires an AC signal - DC signals will ruin "bare" LCD displays; likely the blob chip either has an integrated LCD driver, or was generating the AC signal in some other manner. If you do want to go down this route, you would be best to stick a scope on those lines to the LCD to determine the frequency and voltage levels for the signals...
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 21
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

cr0sh, I appreciate the warning... for this project I think I'm just going to remove the LCD altogether. I don't need it for my project, I just need the scale's precise measurements. I'll keep in mind that the signals are probably AC though. My only tool is a cheap multimeter though and there aren't any test points for the traces from the blob to the LCD. Can I just stick a multimeter probe on the traces and one on T2 (GND)?

My plan right now is to cut off the LCD altogether and wire the 16 traces that had originally been going to the LCD to my arduino instead. My biggest issue right now is that I don't know how to solder something to those 1/2 millimeter thin traces that are so close to each other. If anyone can shed any light on that I think that's the route I'd like to take.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 21
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Also, just took another look at the "blob". Tare (zeroes the scale), Mode (switches from grams to oz's or something) and on/off all trace into the blob. There are 16 traces into the blob, and 16 traces out of the blob. Is it possible that not all of those 16 traces are relevant for me to get my data? For instance, I plan on "zero-ing" the scale manually with the arduino. Because you won't actually see the display, I'm just going to subtract an initial measurement from a final measurement to get the same result as if you had "zeroed". If there were actually only 4 inputs or something that I had to worry about that'd be nice, haha. The scale goes up to 500g so maybe there's only 8 or 9 inputs that actually matter to me...
Logged

Málaga, Spain
Offline Offline
Edison Member
*
Karma: 33
Posts: 2012
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Before to tear the LCD appart, measure the voltages on T4 and see if they change when applying a weight, also measure the voltage across the blue and white wires. It is probably easier to get the weight from an analog voltage than from the LCD control lines.
Logged

   

Leeds, UK
Offline Offline
God Member
*****
Karma: 35
Posts: 986
Once the magic blue smoke is released, it won't go back in!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Based on that picture the pink foam is just there to rest the display on to stop it bouncing around and scraping against the board. If you remove that, you will probably find solder joints underneath it - that would make life easier.

Soldermask is what makes the board green. It is essentially a layer of high temperature paint under which are the copper traces. If you scrape off the paint, you reveal bare copper that you can solder too - but that is a last resort if you can't find solder joints under that pink block of foam.

As for setting to 0, you could probably wire an arduino pin directly to the tare button and then use that to trigger the scale to reset.


It is possible that the display could be DC. It looks a similar design (clear transistors sandwhiched between two layers of glass) as the one in my alarm clock. That one is connected directly to the outputs of a what appears to be a PIC microcontroller.
If you can find solder joints, I would suggest turning the scale on, setting it to 0, and then using the multimeter between each pin of the display and ground to see what it looks like. (You can use T2 testpoint as the GND terminal of the multimeter).
Logged

~Tom~

Offline Offline
Full Member
***
Karma: 3
Posts: 179
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I just tore apart my scale for the heck of it and it's very similar to yours inside. It has the same black, red, green, and white wires coming from the sensor itself. After some messing around I came up with this schematic (see image) where the two potentiometers are the flex sensors used to measure the weight (one is compressed and the other is stretched). If you measure the voltage between the green or white wire and ground you will see that it changes a little bit when you weigh down the scale. You can hook up these wire to analog pins on the arduino and with a bit of software and calibration you should be able to get the weight.
Logged

Málaga, Spain
Offline Offline
Edison Member
*
Karma: 33
Posts: 2012
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Are the values proportional? How big are those variations? Is it calling for a differential amp or instrumentation amp?
Logged

   

Offline Offline
Full Member
***
Karma: 3
Posts: 179
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I get about 25mV of change from unloaded to fully loaded, so 0 - 50mV between green and white. On second thought that would only be 10 values using the arduinos ADC, so you would indeed have to amplify it. I don't know what the difference between a differential and an instrumentation amp is, but I don't see why a simple differential amp between the green and white wires wouldn't work. I didn't test how the voltages correspond to weight applied but I'm guessing it's non-linear.
Logged

Pages: [1] 2   Go Up
Print
 
Jump to: