Welcome to Cockpitbuilders.com. Please login or sign up.

March 19, 2024, 03:36:26 AM

Login with username, password and session length

PROUDLY ENDORSING


Fly Elise-ng
59 Guests, 0 Users
Members
Stats
  • Total Posts: 59,638
  • Total Topics: 7,853
  • Online today: 65
  • Online ever: 582
  • (January 22, 2020, 08:44:01 AM)
Users Online
Users: 0
Guests: 59
Total: 59

COUNTDOWN TO WF2022


WORLDFLIGHT TEAM USA

Will Depart in...

Recent

Welcome

Segment displays

Started by Mach7, November 02, 2020, 04:55:31 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Mach7

Hello all,

I want to use 3 thumb wheel switches ( one +/-, and the other two graduated from 0 to 9)to interface with a 3 digit 7 segment led display to give me N1 values. For example, I would like to set a value on the thumb wheel switches to +15 ( denoting temperature) and have the corresponding N1 value to read 93.5. As the temperature is increased, I would like the N1 value to also decrease, showing a final value of 87.8 at +40. I s this feasible and if so how would one go about constructing such an apparatus?

Thank you in advance

Jim

ame

Very feasible, I'd say.

Do you have a link to the kind of switches you'd like to use? You have given an outline for how the system might work, so it comes down to practical choices such as the specific switches, size of display, power supply availability and input/output requirements (i.e. connecting to other systems or subsystems). Since these practical choices dictate how some parts of the device must operate it's best to have a few specifics nailed down as soon as possible.

Depending on how you want to integrate this with other systems I'd start with an Arduino, BCD thumbwheels, and an LED matrix with I2C or similar driver. At first glance the software would be pretty easy, but the devil is in the details and quite often people forget to mention stuff...

Mach7

Thanks Ame

Yes...the details are important.

Basically I am trying to replicate a Bae 146 TMS.

I am using some stock parts off an old tms cdu I have..namely the aforementioned thumb wheel switches.

I will give more details tonight..just running to work

Thanks!


Mach7

So...to complete my story...the system will run off 5 volts, the thumbwheel switches i have are identical to the omron type, and the LED display would be a store bought unit .4 inch or so. I am at the work computer,so I cannot post pics here, but if you go to my youtube page (the bae 146 project) it will show the unit i have installed now...basically I control the rated thrust N1 with the takeoff button and the reduced thrust N1 wit a RDU (reduced) thrust button...but this is not the was the system actually works.,..so I am trying to inject some reality into the project.

In reality, the system always knows the pressure altitude through a static pressure sensor, so pressure altitude input will not be an issue as I am identifying all my thrust setting at 0 to 1000 feet.

In simple terms, The thumbwheel switches are called Tref (temperature reference) inputs...so...if you are doing a full thrust takeoff, you put the actual oatside air temp in the window, press the TOGA button, and you get your N1 ref value, ( in this case 93.5 percent).

If you want to 'flex' the takeoff, that is reduce thrust, then you put a temperature in the Tref window that is above the actual OAT, (like +40) to give you a lower N1 target, hence a reduced thrust takeoff. When you press the same TOGA button, you will see the new N1 value, (which in actuality is 87.6 percent).

So this is where I am attempting to go with this, the reason for the lower N1 value at the higher temperatures is due to the thermodynamics of the engine ALF502-R5. This particular engine is 'flat rated' to standard day conditions...this means you can derive full thrust (6970 lbs) up to 15 degrees C...then above this you hit a temperature limitation, (882), in which case you have to start rolling back the N1, (and thrust output), to maintain the temperature (TGT).

Going the other way...say below +15, you will note that the N1 is also reduced as you are up against the fan gearbox limitation, although you are always in the rated full thrust range as you are moving colder air back with the fan giving you 6970 lbs of thrust at all times below 15 c.

I am not too worried about having my system tabulate N! speeds below the minus range...in fact if I can display values from +15 to +40 I would be happy.

I have all the values in between the aforementioned temperature ranges (from a thrust chart), so it should not be difficult on that side of the equation.

I will say that I have never used Arduino, if that is the direction I have to go to make this work.

Jim

ame

Thanks for the update. The detail you have added has clarified things, but hasn't suddenly made things impossible.

There is no need to use an Arduino specifically. There are lots of ways to hook up switches and displays to your choice of microcontroller, or even to a PC or a Raspberry Pi. However, Arduino is easy to use, ubiquitous, and cheap, and should be fine for this project.

Where does the pressure altitude come from? Or is it a constant that you won't change in your simulator?

Do you have a part number for the Omron thumbwheel switches? The only thing we need to know is the output configuration, which I am hoping is BCD.

Mach7

Hello ame

Yes, you are correct the pressure altitude is a constant for this application, in fact it nor the temperature will be interfaced th FS as this will be nothing more than a stand alone device to give an n1 value at the aforemention temperature range.

The thumb wheel switches ..as far as I can tell with what I have read online ARE BCD type....

I might have misled you with respect to the omron brand..these particular switches are actual switches from an actual TMS cdu...however they look identical to the omron brand.

I will be home from work on Thursday to give a better perspective...but what I can rememberers from these switches is tat they all have a 'C' connection which I suspect is "common".. then 4 or 5 additional outputs
(inputs.) numbered 2..3..4. Etc.

I have included a rough draft of how I see this coming together.

Jim

ame

#6
Perfect!

Since this is a standalone device we can afford to be wasteful with the Arduino pins, and not worry too much about how we talk to the device from the simulator (we don't!).

If we assume the thumbwheels are BCD then we will have 4 inputs for each digit wheel, and one input for the +/- wheel. There will be one further input for the TO pushbutton, and probably two, maybe three, outputs for the LED display module. That will fit comfortably within the Arduino I/O pin limits. The C pin is 'common' and the other pins (there should be four) are the bits for the BCD-encoded digits. Decoding them is simple. For the +/- switch there will still be four 'bits', but only the least-significant bit will be used.

In terms of display, there are several driver chips to choose from. A popular one is the TM1637. It is available on a board with LEDs, and generally has a group of four digits. Perhaps you can mask off the unused digit? You will find them in clock format (with a colon in the middle) or with decimal points, so you have to watch out precisely what you are ordering. They are available in a range of common LED colours, red, green, yellow, blue, white.

Here's an example:
https://www.aliexpress.com/item/32995775969.html

It has 4 digits with decimal points. The digit height is 0.36", which is a little shorter than your original specification.

Here's another option, using the 74HC595 as a driver. This one has 3 digits, but it's 0.5" high, and it needs three control lines:
https://www.aliexpress.com/item/32707015238.html

Or you can make your own by finding a 7-segment display you like, then couple it with a driver of some kind. I've only trawled AliExpress briefly- you can take your time.

Regarding Arduino. The 'classic' Arduino is the Uno, which is great for experimenting, but it might be a little bit big to hide behind a control panel. The next "smaller, but essentially identical" is the Arduino Nano. There is a physically smaller one called the Pro Micro, but you need a USB->serial board to go with it for programming. Not really a problem if you really need the smaller size.

In terms of software, Arduino runs a program loop perpetually. So in this case I imagine the software would be:

read BCD low digit
read BCD high digit
read +/- switch
store thumbwheel reading into Tref variable in memory
fetch pressure altitude P (it's a constant, but it would be worthwhile to remember it might come from elsewhere in the future)
Given Tref and P calculate N1 (is Tref and P sufficient for this?)
(The calculation could be real, or could be a lookup table)
If TO is pressed, send N1 to be displayed on 7-segment display

For testing and development this can be split up into three simple tasks that can be worked on independently. If you have never used Arduino before then these are quite straightforward tasks that would make for a challenging-but-achievable learning experience:


* Read and parse the thumbwheel switches

* Given Tref and P return N1 - Even though N1 is a percentage with one decimal place I'd recommend handling N1 as an integer representing percent x10, and placing the decimal point in the right place later.

* Given any integer number N1 between 0 and 999, copy the digits to the 7-segment display and turn on the decimal point before the last digit. Do you want to display leading zeros or not?


Again, if you have never used Arduino before it's a lot of fun, and pretty easy to get started. You could order everything off AliExpress and wait, but I have found that a lot of places these days have local entrepreneurs who are stocking up on 'useful' parts from China and reselling them locally. The prices are usually only a little higher, but delivery time is much reduced, so shop around.

If you decide that you despise Arduino and everything to do with it then you can easily transfer the knowledge you gained from working on this to another microcontroller or system.

ame

Just curious, will it look something like this?


ame

Also, the software loop in the Arduino could be altered to:

Do nothing until TO is pressed
Read BCD switches
Calculate N1
Display N1

The effect is the same, and there are probably a number of other variations you could choose from. Usually the structure is dictated by whatever else is going on, but in this case there's not much to it.

Mach7

Hello ame

Yes! That's is exactly the CDU..

Also, in addition to the N1 setup with the takeoff button, would it be possible to have a separate function to display 857 on the led display when the MCT button is pressed?

 Note the takeoff and mct buttons would never be operated at the same time.

Jim

ame

Yes, of course. You can display any pattern on the LEDs any time.

What happens when the device is powered up? What should be displayed then? And is there an indicator to show whether TO or MCT was recently pressed?

Once something is displayed on the LEDs does it remain there indefinitely?

I'm sure more details will be revealed later, but the code for what you have described so far could be written now. It could be written in a modular style so that the LED driver code, for example, can be added later when the hardware is chosen. That code deals with how to display something, but is independent of what to display.


ame

Very briefly, I put your numbers for N1 into a spreadsheet and came up with a formula N1 = Tref * 0.173 + 93.433

I think you missed the value for +10, so I moved everything down by 5.

I wrote a simple Python function to use integer calculations to produce N1, starting with multiplying by 173 so that the first term was 1000 times too large, then dividing by 10 so that it was 100 times too large and adding 9343, which is also 100 times too large. Then divide by 10 to give a result that is 10 times too large, or N1x10. Integer maths is faster and more efficient on an Arduino, but as you can see, it has its limits and introduces some rounding errors. Anyway, here's what you get:

def N1(Tref):
   i = int(Tref * -173)
   i = int(i/10)
   i = int(i + 9343)
   i = int(i/10)
   return i

for Tref in range(0,41,5):
   print(Tref,N1(Tref))

0 934
5 925
10 917
15 908
20 899
25 891
30 882
35 873
40 865

It's possible that N1 is not linear with respect to Tref, so let me know. Otherwise, it's a reasonable approximation. It will also go negative, because it is just a linear graph:

for Tref in range(-40,1,5):
   print(Tref,N1(Tref))

-40 1003
-35 994
-30 986
-25 977
-20 968
-15 960
-10 951
-5 942
0 934

The Python function is representative of what's in the Arduino code, so the numbers should be the same.

Mach7

Hello ame,

To answer some of the questions...when the system is powered up the led readout would remain blank. The takeoff mode is selected just before take off and deselected after takeoff...( in reality the system is armed and displays the take off n1 once takeoff is selected, then activates automatically once the thrust levers are advanced to above  flight idle, driving all the actuators 5o full extend...once 75 knots is reached the system goes into a fail safe mode). To simplify my application, the system will be deactivated after takeoff by deselecting the Takeoff switch to off, extinguishing the n1 led value.

I am going to send some pictures of the thumbwheel switches when I get home tomorrow nite...

Apparently the internet has been down at home for two days, so I will have to sort that problem before I send you more info.

With respect to the N1 settings, I have an actual thrust setting chart based on pressure altitude and temperature from minus 40 to plus 50  degrees c.

I'll try and dig that up as well

Jim

ame

Sounds great. All do-able. I wrote some code that might actually work, which you're welcome to have when you are ready.

It sounds like your TO button is latching, i.e. it is push on/push off. Is that correct? Or is it a momentary button that you'd like to operate in a latching manner, i.e. push once to display N1, push again to blank the display?

The same goes for MCT.

But first, fix the Internet! :)

Mach7

Hello ame,

Internet fixed!, just a loose cable.

I have included some pictures of one of the thumbwheel switches, as you can see they all connect together to form one +/- input, and the other two are graduated from 0 to 9.

I don't think we have to worry about interfacing the +/- thumbwheel, as the N1 values will look somewhat identical at +40 as they would at -40.

Just to recap my application, the TMS CDU that will be installed in my sim will not be "identical" to the CDU you and I are both familiar with.

Due to my LCD monitors that are used for the flight instrument information, the monitor itself protrudes slightly into the slot where the TMS unit slides in, therefore I have have to make some physical adjustments in order to "fit" the unit, (most notably not including any push button switches on the far right hand side).

I have been able to accomplish this by constructing a somewhat identical replica using my 3D printer.

So basically what my unit will look like is included as a rough draft below...

Onto your question regarding the switches...the Takeoff button will be a latch on and off type of switch with the MCT and TEST buttons being a momentary on type pushbutton.

Depending on how far we get with the aforementioned functions, if enough room allows me to move the Tref thumbwheels up to the top right of the CDU, I would like to include the TGT button (function) as well.

I might be able to 'make' extra room by downsizing my LED display.

If we were to include the TGT button, this button would be a latch on off type of switch as well.

I will now discuss each button in detail for this application;

Takeoff button.....

Just before takeoff this button will be selected to display the required takeoff N1 in the LED window. if the (actual) oatside air temperature is +15 degrees, and we set +15 in the Tref thumbwheel(s) then it will show the max N1 setting for takeoff. Since we normally never use full power for takeoff, I would dial in a higher temperature into the thumbwheels, (say +40 or +50) to give me a lower N1 value.

To amend my earlier calculation, I have found my thrust setting charts and have derived the N1 values as follows;

+00 = 89.9
+05 = 91.2
+10 = 92.4
+15 = 93.7
+20 = 92.4
+25 = 91.2
+30 = 89.9
+35 = 88.7
+40 = 87.5
+45 = 86.2
+50 = 85.0

Note that I have extended the temperature range from +0 degrees to +50 degrees using a constant factor of 1.25 between temperature ranges.

Also note that since these engines are flat rated to +15 degrees C, any temperature below this value is considered a flat rated range as you are getting the maximum thrust out of the engine at the specific N1 setting, and any temperature above +15 puts the engine into the 'full' rated range, which means you cannot take full thrust with the associated N1 setting as you hit a temperature limit in the engine, (most notably TGT).

For this reason, you will notice that the N1 values below +15 also decrease so as to maintain a constant thrust output of 6970lbs. Exceeding the n1 value in this range would exceed the fan gearbox limitations. but as the temperature increases to +15 my N1 value increases as well in order to maintain that constant thrust output up until it hits +15, then begins to decrease again all the way to +50.

In brief any N1 setting above +15 will be somewhat less than 6970 lbs of thrust.

After takeoff, once I deselect the Takeoff button, the LED readout will go blank.

MCT button,

The MCT button (max continuous thrust) function would be to display 857 in the LED window for short time, followed by a value of 96.7 indefinitely until the MCT button is selected OFF. (857 corresponds to the maximum TGT value, and 96.7 is the max obtainable N1 value for the engine). The time period for the 857 indication should be approximately 6 seconds.

TEST button,

The actual TMS CDU,(in the real aircraft), communicates on a bi-directional ASCAB bus to a computer. The CDU and TMS Computer make the same calculation with respect to N1 settings etc, and if there is a disagreement will display a fault code on the LED display beginning with the letter "F", followed by a numerical value with which maintenance can interrogate through a list of fault codes.

In this application, when the test button is momentarily pressed, the code of "F14 should display for as long as I hold the switch in, then extinguish once the switch is released.

TGT button,

This may be a long shot, but I have an identical set of thumbwheels exactly like the Tref wheels that are (all) graduated from 0 to 9. therefore if I can fit these wheels back into the CDU I could utilize this function as well.

With respect to the TGT switch, it is a latch on off type, and when pressed would display whatever you have set in the thumbwheel switches.

For example, if I dial in "7" "9" "3", then the LED display should read 793 when the TGT button is pressed in.

The TGT value will show as long as the switch is closed, so if I decide to change the thumbwheel values to a different setting, (say...830), then the LED should display the changes I am making as I cycle through the digits without having to cycle the switch off and then back on.

Once the TGT switch is selected OFF, the LED display will go blank.

Note that at no time will I be making simultaneous switch selection, in other words I will never be selecting the Takeoff button at the same time as the TGT or MCT buttons.

Again ame, I cannot thank you enough for helping me with this, hopefully we can make this work!

-Jim

Mach7

Almost forgot to include my 'rough draft' of CDU setup...20201106_082907.jpg

ame

Hello again.

I can confirm that the Internet is working again. Thanks!

Ok, none of the behaviour you have described will be hard to implement in software. If Arduino is new to you then let me tell you you are entering a world of tedium and wonder.

Your message was full of dull details and minutiae, which is precisely what we need. You could develop the idea slowly and think about each aspect of the design as it comes to mind, but having such a detailed overview in advance is extremely helpful.

I am happy to assist with writing the code, but also happy to reassure you that all the parts you need are simple to use and widely available if you want to go it alone.

Let's look at the hardware you have and the hardware you need.

Microcontroller:
It's an Arduino. It's always an Arduino. For space reasons I recommend you use Arduino Nano. It will cost about $3 or $4. It hooks up to a PC through a USB port for power and programming. Once programmed it can operate standalone with a 5V power supply.

Thumbwheel switches:
Looks like BCD to me. We can be wasteful with our I/O pins and use four for each digit and one for the +/- switch. I would connect C to ground then 1248 to pins on the Arduino. I would keep the Arduino close to the front panel to keep all wires to the switches and display short to reduce the susceptibility to electrical noise. Software to read the thumbwheel switches is easy.

Latching buttons:
One side of the switch goes to an I/O pin, the other to ground.

Momentary buttons:
Same wiring as latching buttons.

LED display:
You need to choose one. It will need power and ground connections and two or three I/O pins for data. Note that the assembled modules you can buy have a PCB that is slightly larger than the display itself. If space is limited you can desolder the display from the PCB and run wires between them.

TGT:
Again, sounds straightforward, however I would pass on that initially. If a unit that deals with Tref only is immediately useful then stick with that. You will learn a lot while building it, which you can use to add TGT later.

Where to from here?

My recommendation would be to buy an Arduino (Nano or Uno) and hook up the thumbwheel switches. We can use the Arduino serial interface to print out the state of the thumbwheels. Since you haven't used Arduino before this would be an ideal starting point.

Mach7

Hello ame,

Yes, thank you I will definitely need your help, and like you said, once we program the Tref function, then I might be able to figure out some of this stuff out on my own.

Good idea to wait on the TGT function as well

I am going to most likely go with the nano, as you said it is a lot smaller and it would most likely fit better within the CDU.

I will have to do some measurements before I decide on the size of the LED display, but I am leaning towards a .4 inch, yellow illumination.

I will order parts tomorrow and when they arrive I will let you now then we can begin...

I will most likely be asking a lot of simple questions, but once I understand it I'm like a dog with a bone...so please bear with me.

Thanks again!

jim

Mach7

So...here is the first of my simple questions...as I have never worked with a complicated LED layout before...or Arduino...

With respect to the LED, am I looking for just the 3 digit display itself, or does it need to be coupled to a driver of some type I think you mentioned something in one of your posts with respect to this, but I am not exactly sure what an led driver does.

Also, with respect to the Arduino unit. is there any other hardware I need for connection...programming...etc?

Thanks ame!

ame

Hello again,

It's good that you have specific questions. I'll try and focus on specific answers, but I'll just point out that there are a myriad ways of solving any particular problem. If you keep the hardware and (to some degree) the software modular then you should see if you change one thing here it is completely independent of (and will not affect) that thing over there.

Ok, so, getting started with Arduino. Very simple- you need an Arduino, a USB cable for it, and the Arduino programming environment.

The Arduino you buy will often come with a USB cable, but if not, they are easy to come by. In general Arduino Nano has a mini-USB socket, so that's the cable you need. You'll also need a USB port on your PC to plug the Arduino into.

The Arduino programming environment is free and available from arduino.cc (which seems to be down at this very moment).

https://www.arduino.cc/en/guide/windows

You might also need to download drivers for the USB to serial chip on the Arduino, which should happen automatically when you plug the Arduino in.

Since it's such a popular device there are tons of tutorials on the web, so pick one and have a play. You might have some problems getting it going, but for most people it's plain sailing and Just Works. The first thing that most people do is open the "Blink" example program (or "sketch"), which turns the built-in LED on and off, alter the timing a little, upload the altered code, and get excited that the LED flashes at the rate they specified. If you can get to that stage then everything is set up and working.

ame

Now to the LED display.

Firstly, a 7-segment display is just 8 LEDs (don't forget the decimal point) arranged in a pattern. For convenience, one leg of all the LEDs is commoned to a single pin. The other 8 legs are individually connected to their own pin. But, which pin is common? The anodes? Or the cathodes? Well, you can choose! Generally you don't have to because you will be using a module which includes a driver, which I'll get onto shortly.

Once you have more than one digit the number of pins starts to go up quite quickly, so in the multi-digit displays the segments and digits are wired up in a matrix. Then you can turn a particular segment on by driving the segment line and the digit line in the matrix. If you rapidly scan through the digits and change the segments you are driving then you can make any pattern on the LEDs. Persistence-of-vision means that the viewer thinks the display is constant, but in reality only one digit at a time is lit.

Driving the matrix can be done by the microcontroller- 8 lines for the segments, and one more line for each digit. But, generally we don't do that and instead use a driver chip. The micro talks to the driver and the driver scans the matrix, turning the segments on and off.

Obviously, knowing that an LED module comprises a 7-segment display and a driver you could build your own. If you do, you have to choose the display you want, then wire up the matrix to the driver. Don't forget to choose common anode or common cathode to match the driver.

In your software there will be a point where you have the number you want to display in a variable somewhere, then you will call a software function which knows how to send data to the driver chip, then magic happens* and your number appears on the display. If you change your driver hardware you need to replace the software function with a new one, but it doesn't affect anything else.

Now you are narrowing down what you need, so it becomes easier to pick out specific components.

I already mentioned the TM1637 driver chip. Here it is on a board with a 0.36" yellow 7-segment display with decimal points:
https://www.aliexpress.com/item/32962489291.html

You could mask off one digit with black insulation tape or something.

Here's a 3-digit 0.4" yellow display:
https://www.aliexpress.com/item/32717990061.html

But you'd need to choose a driver and hook it up yourself. Not impossible, but tedious. Or you could do it later if you decided you really wanted.

* there is no magic, but you knew that.

Mach7

Hello ame,

I did some review and understand that the segment display must have a driver.

I looked at the 4 digit TM1637 LED plus attached driver chip, and although this is good setup, it is just a bit too big for my application.

the other suggestion, (4031BG) is actually a perfect fit for the CDU.

If I went with this model, I am assuming that I would need to connect each individual pin (12)to a driver of some sort...I scoured the internet to find a 3 segment display with an attached driver, but no such luck.

Attaching wires to the pins then connecting them to a driver may be a better fit for my anyway as it frees up a lot of space at the back of the CDU.

So next question, is there a specific type of driver I should be looking for with respect to this model of LED? or will any segment display driver do the trick?

Jim

ame

Hello again,

Yes.

There are two things to draw to your attention with that specific linked display.

1 I picked it at random. It might be suitable for you, but there are others. Maybe.
2 It's yellow/green, so the colour might not be exactly what you are looking for. However, it might be good to get you under way.

In terms of drivers, yes, pick one and hook up 11 wires from the display to the driver. Make sure that the display type (common anode, CA, or common cathode, CC) matches the driver. The driver chip itself also needs some components to make it work, so in this case what you are looking for is driver-chip-plus-components-on-a-pcb and the display. I'll post a couple of examples if I can find some.

Designing something like this is a fairly long process, and can be frustrating. If you have a well-supplied junk box you can get a head-start, but even if you can find local suppliers there is a research-buy-evaluate loop that has an intrinsic delay and no guarantee of success. Having said that, it's fun, and rewarding when everything works. Plus, if you designed it yourself you know exactly what to do if you ever want to change something.

ame

#23
LED drivers
Popular ones
TM1637
MAX6219
HT16K33
74HC595 (generally one chip per digit)

I don't think you will find a 0.4" yellow 3-digit display attached to the driver of your choice, but once you know how this stuff works you can bend it to your will.

For example, the TM1637 boards typically look like this:
https://m.aliexpress.com/item/4000093386794.html

Scroll through the pictures and it looks like a 12-pin display soldered to the board. I haven't traced the pins, but if the 4-digit display has pins in the same order and spacing as the 3-digit display then a straight swap might be possible.

Here's an example of a MAX7219:
https://m.aliexpress.com/item/32830440792.html

The board is very long, but look at the green one: the display is socketed. Easy to remove and connect your own wires.

Here's another one. Option 1 is "solder it yourself". Would give you a square board be with the chip on it and access to the LED output matrix.
https://m.aliexpress.com/item/32580532205.html

HT16K33:
https://m.aliexpress.com/item/1005001713347520.html

74HC595:
Probably a lot of work, and no good for a matrix, just individual digit displays.

https://m.aliexpress.com/item/32707015238.html

Would be ok if you found single digit 0.4" yellow displays.

I didn't check which are common cathode or common anode.

ame

#24
Ok. In my junk box I have one of these:
https://www.aliexpress.com/item/1005001525520773.html

0.36" 4 digit, red, with clock colon

And one of these:
https://www.aliexpress.com/item/4001283388143.html

0.36" 6 digit, yellow, with decimal points

Both have the TM1637, which I have found to be common anode (CA). 0.36" is a little smaller than you want, but the 6-digit display is made of two 3 digit displays. The 3-digit display is CL3631BY. The pinout is here:
https://www.aliexpress.com/item/32737097670.html

As you can see, the pinout for both modules matches! And, really, the pinout for the 3-digit display is the same as the 4-digit display, but pin 6 is missing. Pin 6 is the common anode for digit 4, which is not present in a 3-digit display.

But...

The longitudinal spacing of the pins is standard at 0.1" (2.54mm), but the spacing across the width of the 0.36" module is 10.16 mm, and across the 0.4" module is 12.7 mm.

So, although the pins are in the right order, they are on a wider track. However, they have a reasonable length so it might be possible to jam the widely spaced leads of the 0.4" display into the holes vacated by the 0.36" display.

I would be very tempted to buy this:
tm1637.jpg

Desolder the installed 0.36" 4-digit display that looks like this:
3641_CA_display.jpg

And jam in a new 0.4" 3-digit display that looks like this:
4031_CA_display.jpg

What do you think? Don't just take my word for it.

It means the display itself is no bigger than it needs to be, but the driver PCB is a little bit bigger all around, and set back a little behind the back of the display. You mentioned that you haven't used Arduino before. How are your soldering skills?

One caveat- datasheets pulled off AliExpress products often, er, don't match reality. But I'm confident with my conclusions.

Like the Website ?
Support Cockpitbuilders.com and Click Below to Donate