Ajax
Posts: 18
Joined: Thu Oct 31, 2013 5:46 pm

Reading a 7-segment display from controller

Fri Nov 15, 2013 11:04 pm

I have a controller with a 3-digit 7 segment display that displays temperature. I would like to have my RPi read the display, which I can access over the internet. This would allow me to make keep an eye on temperature while I am not home. What would the best way be of achieving this? Thanks.

User avatar
Douglas6
Posts: 4779
Joined: Sat Mar 16, 2013 5:34 am
Location: Chicago, IL

Re: Reading a 7-segment display from controller

Sat Nov 16, 2013 12:34 am

The 'easy' way would be a streaming webcam or the Pi camera trained on the read-out. Is it ambient temperature? A cheaper, and more Pi-like way would be to interface a temperature sensor to the pi, like this:
http://learn.adafruit.com/adafruits-ras ... re-sensing
More specialized temp sensors can be found as well. Lot's of experts in this area here who will chime in if you can provide more details.

Ajax
Posts: 18
Joined: Thu Oct 31, 2013 5:46 pm

Re: Reading a 7-segment display from controller

Sat Nov 16, 2013 1:29 am

Yes I have thought about a camera but that would just be to easy :D I have no idea what I am getting myself into but I want to learn. This is related to another post I had but did not receive any answers so I figured I would see if there is another way of doing this.

http://www.raspberrypi.org/phpBB3/viewt ... 76#p446876

I already have the heater meter and I can see the temps of the meat probes online but I also want a way of controlling my grill. But I have to see the set points and actual temps from the grill controller so I make sure I adjust it correctly. The best would be if I can mimic the original remote of the grill which uses a nrf905 radio chip, but that is above my head so this is my second theory of controlling my grill. Again appreciate the help! If all else fails the camera will have to do...might have to figure out how to waterproof it first!

grahamed
Posts: 277
Joined: Mon Jan 30, 2012 7:01 pm

Re: Reading a 7-segment display from controller

Sun Nov 17, 2013 8:04 pm

Hi

Do you actually want to read a 7-segment display or are you saying you want to read the output of a device which has a 7-segment display as its primary output?

The former is possible but needs a lot more information about the display.

The latter requires information about the device - like does it have any output signals, and if so what?

Ajax
Posts: 18
Joined: Thu Oct 31, 2013 5:46 pm

Re: Reading a 7-segment display from controller

Mon Nov 18, 2013 3:49 am

That is a good question... I also realized I can just tap into the thermometer and get the temp reading that way I would have to figure out the curve to map the probe since I do not know that name of the probe. But doing it this way I would lose some info I would like to see. The display shows 1,2,3(starting sequence) and then the current temp. It does show you the set temp if you adjust the set points using the green buttons. It also shows you the shutdown sequence and error codes.

So as I see it this is my options from the most desired to least:
1. Have the RPi function as the original rf remote the grill comes with.
-I have no idea how to do that.
2. Somehow be able to read the output to the 3 digit 7segment display. Uses HC164 shift registers
-Will give me the feedback I need.
-Can also control the grill by tying into stock buttons on controller
3. Hack the original remote buttons.
-Should be pretty easy.
-My original controller stays intact.
-But I lose all feedback like set temps, actual temps etc.
4. Use a camera.
-Should be the easiest for feedback
-Would be open to the elements.
-Would still have to tie into the remote or controller buttons for control.
5. Tie into the original temp probe.
-Will give me limited feedback-Could use one of the heatermeter probes to achieve the same result.
-Still no control

So what do you guys think? I am willing to try anything and is up for the challenge but I would need my hand held most of the way since the RPI and code is very new to me... I do have a spare controller laying around that I could test on.
Attachments
20131117_163346_resized.jpg
Temp probe
20131117_163346_resized.jpg (58.96 KiB) Viewed 4618 times
20131115_160624_resized.jpg
name of the display
20131115_160624_resized.jpg (49.26 KiB) Viewed 4618 times
20131117_163333_resized.jpg
Original controller
20131117_163333_resized.jpg (53.26 KiB) Viewed 4618 times

grahamed
Posts: 277
Joined: Mon Jan 30, 2012 7:01 pm

Re: Reading a 7-segment display from controller

Mon Nov 18, 2013 4:49 pm

Hi

LB10501BA xx is a common cathode display as per http://www.lightbo.cn/pdf/19LB10501EB.pdf. Presumably a pack of 3.

If you wished to read his through a Pi you would need to solder 1 + 7 + 1 + 3 (GND + 7 segments + dp + 3 cathodes ) = 12 wires to the board. It is likely that the voltages exceed the 3V3 of the Pi pins so most would need some form of level shifter. These wires would be read by the Pi pins.

So can you get to all the pins? Can you determine the voltages - warning a multimeter will not work here, you need to either measure using a scope or determine the voltage from examination of the circuit - starting with the value of the power supply rails.

To actually decode the display you need to understand the way these displays are driven - almost certainly it will be multiplexed.

All this sounds a bit much unless its more of a learning exercise than a practical one. There is every chance of killing either the Pi or the display along the way.....

karlkiste
Posts: 184
Joined: Tue Jan 22, 2013 8:50 am
Location: berlin, germany

Re: Reading a 7-segment display from controller

Mon Nov 18, 2013 5:11 pm

A little appendix to the previous post which I agree with in general:

Depending on the multiplexing frequency of the display, it might even be impossible to read it from the pi using tapped signals. Often, displays are multiplexed at 100Hz or so, that would be ok. It could however be much higher.

Ajax
Posts: 18
Joined: Thu Oct 31, 2013 5:46 pm

Re: Reading a 7-segment display from controller

Mon Nov 18, 2013 7:39 pm

OK great I was trying to find them online..unsuccesfully thanks for the link! One question, Which pin is which? Example- if I am looking at the pins from the back is 1 top left 2 second top left etc? I have access to the to all the pins to check voltages. I cannot find any other diagrams giving me that information. How do I find how the displays are driven, and how would I decode that? Do I use a DEMUX or IMUX? I will get back to you guys once I have check the voltages with a scope might take a couple days. This is a learning excercise and if I fry the controller(a spare) or a pi I am sure I will survive :) Thanks again for everyone's time.

Ajax
Posts: 18
Joined: Thu Oct 31, 2013 5:46 pm

Re: Reading a 7-segment display from controller

Mon Nov 18, 2013 7:56 pm

Another thought, would it be possible to just tap into the input for each display's shift register and somehow make sense of that data?

grahamed
Posts: 277
Joined: Mon Jan 30, 2012 7:01 pm

Re: Reading a 7-segment display from controller

Wed Nov 20, 2013 9:34 pm

Hi

BEFORE YOU START BE VERY SURE THAT THE DEVICE IS NOT DIRECTLY CONNECTED TO LINE VOLTAGE - IF YOU ARE NOT SURE DO NOT PROCEED

All the displays I have look like this http://datasheet.octopart.com/HSMF-C167 ... 307667.pdf though I guess there are others.

You need to understand the multiplexing thing before you start, if only to be sure that the displays are in fact multiplexed! You mention shift-registers - can you see shift registers?

As a starter I would try to figure out the multiplexing frequency/time periods. Connect a wire to your (in order of preference) logic analyser/DSO/soundcard. I guess you may looking at using the sound card option. Solder a wire to display device 0V and one to the common pin on the display - more than likely the middle one of the 5 at top or bottom - a meter should show these pins to be connected together. Make a potential divider of 100k and 100R. This should reduce the signal from 5V to 5mV. Feed the signal into the sound card. Run Audacity software. Set sampling to 96kHz, With luck you will see something like ___|---|______|----|______|----|_____ Tell us what you see.

Ajax
Posts: 18
Joined: Thu Oct 31, 2013 5:46 pm

Re: Reading a 7-segment display from controller

Thu Nov 21, 2013 9:22 pm

Thanks for the warning, I will keep that in mind. I will have access to an occiloscope this weekend. You asked about the shift registers. I believe that is what they are called. Each display has a HC164 (8-bit Serial-input/parallel-output8-bit Serial-input/parallel-output Shift Register) and I can get to the pretty easy. Will keep you updated, thanks again!

karlkiste
Posts: 184
Joined: Tue Jan 22, 2013 8:50 am
Location: berlin, germany

Re: Reading a 7-segment display from controller

Fri Nov 22, 2013 7:10 am

If each of the digits has its own 74HC164, chances are good that the display in fact is *not* multiplexed, and you can just read the status of all of the 21 (3x7) segment lines without any timing problems.

Then there's the question of how you want to read that many bits. Serializing or demultiplexing comes to my mind...

User avatar
aTao
Posts: 1087
Joined: Wed Dec 12, 2012 10:41 am
Location: Howlin Eigg

Re: Reading a 7-segment display from controller

Fri Nov 22, 2013 8:07 am

Could you post the make and model number of the controller please.
>)))'><'(((<

Ajax
Posts: 18
Joined: Thu Oct 31, 2013 5:46 pm

Re: Reading a 7-segment display from controller

Fri Nov 22, 2013 2:09 pm

Now that is were you smart guys come in! I am already above my head but I can follow orders pretty well. The controller is not a standard off the shelf product . It is part of my Greenmountain "Daniel Boone" so not dure those numbers would work.

grahamed
Posts: 277
Joined: Mon Jan 30, 2012 7:01 pm

Re: Reading a 7-segment display from controller

Fri Nov 22, 2013 7:27 pm

Hi again

If the display is not multiplexed then reading the display directly becomes much easier in concept (no timing issues) but much less easy in practice - sounds like 25 wires, 24 of which probably need some kind of voltage conditioning - there are nothing like enough GPIO pins available.

The data is already available in a serial format at the input to the SR's. Problem may be that the data clocks quite quickly. Obviously the display does not change often but when it does it might do so very quickly. You can read GPIO pins at MHz rates but it is not as easy as slow stuff. Use the scope to find the clock frequency. WiringPi includes a SR library which is exactly what you need.

tenochtitlanuk
Posts: 156
Joined: Fri Jul 06, 2012 8:51 pm
Location: Taunton, Somerset, UK
Contact: Website

Re: Reading a 7-segment display from controller

Fri Nov 22, 2013 8:57 pm

You might be interested in the optical-character-recognition method. I've had some success with this- but you need specialised 7-seg OCR or write your own.. See http://www.raspberrypi.org/phpBB3/viewt ... 7&p=434958
The Pi looking at the 7-seg display could easily ftp the result to a webpage for you, and the resulting file could be re-dispalyed as a temperature graph etc at your convenience

Return to “Automation, sensing and robotics”