|
Post by wonderfly1 on Dec 27, 2018 6:55:46 GMT 2
After soldering all the components and installing all the Max7219 chips and displays, I went to power up the unit and not all displays will light up. Removing the power and turning it back on will cause some to turn off and others to turn on. Also, tapping with my finger on the exposed connections on the 40 pin header going to the Arduino will cause some displays to come on and others to go off. I have been able to get all or most of them to light at one point. Connected to Mobiflight, I cannot get any action to occur. Note, the 14 segment displays light up right away and stay lit for the most part.
Here are a few probable causes I'm investigating, but I could use some help trying to narrow them down. 1. Insufficient power supply? What is the recommendation? (Have a 2.5 A, 5V power supply connected) Did verify getting 5V at input. 2. Bad connections on communication circuit or power circuits (have reviewed pcb extensively for solder bridges or poor connections) Need to get schematic and pin out each one.
What should be the expected behavior if the Arduino is not connected? I read the data sheet and saw mention of a shutdown mode the displays go into.
Also, what is the R32 - C35 connection issue? I saw mention of that on the website, but could not find additional details.
Thanks!
|
|
|
Post by username on Dec 27, 2018 19:17:10 GMT 2
1: are the arduinos programmed? 2: is the right arduino programmed? 3: are you sure its programmed connection? 4: are the max chips in the right direction, and all the way in if using sockets? 5: are all the components connected that are required for the displays? 6: are all components in working order? 7: are you powering the arduinos, or the board directly. For me, plugging into the board does not work correctly. 8: did you ask it nicely to work? My displays light up when I plug in the arduinos and 5v. when the arduinos are not connected, nothing happens for me. Good luck!
|
|
|
Post by wonderfly1 on Dec 28, 2018 1:32:37 GMT 2
I was able to resolve the flickering displays by connecting the arduino ground and the 5V GND on the radiostack PCB, but now the displays do not change at all.
I programmed the Arduino connected to ENC CONN connector with a basic file and configured just the Com1Display with DIN on 22 CS on 23 and CLK on 24. Assigned to COM1 Active and set all parameters per the webpage and still nothing. When selecting test, I also get no updates.
next step is to breadboard up a separate display and driver and try to remove the pcb from the equation and at least verify arduino and mobiflight are working.
1: are the arduinos programmed? I think so, how can I be sure?
2: is the right arduino programmed? Using ENC CONN
3: are you sure its programmed connection?
4: are the max chips in the right direction, and all the way in if using sockets? Per the PCB art, yes.
5: are all the components connected that are required for the displays? Max7219, resistors, caps, displays, anything else?
6: are all components in working order? Not sure how to check this.
7: are you powering the arduinos, or the board directly. For me, plugging into the board does not work correctly.
Powering board with 5V via jack on pcb, powering arduino via 5V on computer, grounds connected electrically.
8: did you ask it nicely to work? Well I have been yelling at it a lot, maybe I should try a nicer approach!
|
|
|
Post by username on Dec 28, 2018 2:29:34 GMT 2
To check, all I can think of is program it again strictly per mobiflight approved tutorial. And just triple check the pins your using making sure to have a copy of the pin outs on hand. It really helps to print them out. And look up “how to test a BLANK”. Good luck!
|
|
|
Post by wonderfly1 on Dec 28, 2018 15:35:26 GMT 2
Just found out that I was shipped 33uF instead of 10 uF capacitors for the 7 segment LEDs. Could this be a factor?
Edit: Breadboarded up the a 4 digit display with same resistor and capacitor setup and re-installed mobiflight. Now I can get the digits to display when testing via MobiFlight! (although they're backwards and count 4321 instead of 1234, baby steps!)
|
|
|
Post by wonderfly1 on Dec 28, 2018 23:12:25 GMT 2
Ok, figured out the issue, but not sure how to fix it. I think the 40 pin connectors are on the opposite side of the arduino board, although I installed per the pictures, so I'm not sure why it is off.
On the radiostack, I have the 40 pin connectors installed on the side with the MAX7219 chips, notch facing down. On the arduino pcb, I have the 40 pin connectors installed on the side with the Arduinos installed, notch facing down.
To make the top 8 displays work, you need DIN1, CS (Load), and CLK from the ENCODERS 40 pin. (Pins 22,23,24 on Arduino Mega)
On the Arduino PCB, this is the bottom leftmost pin on the 40 pin connector. On the Radio PCB, this is the bottom rightmost pin on the 40 pin connector.
Cutting the key swaps right to left, but also swaps top to bottom.
Looking for ideas to resolve this. I know putting the connector on the back side of the arduino board would resolve it, but I'm wondering how the others out there are assembled.
|
|
|
Post by username on Dec 29, 2018 18:42:39 GMT 2
Ok, figured out the issue, but not sure how to fix it. I think the 40 pin connectors are on the opposite side of the arduino board, although I installed per the pictures, so I'm not sure why it is off. On the radiostack, I have the 40 pin connectors installed on the side with the MAX7219 chips, notch facing down. On the arduino pcb, I have the 40 pin connectors installed on the side with the Arduinos installed, notch facing down. To make the top 8 displays work, you need DIN1, CS (Load), and CLK from the ENCODERS 40 pin. (Pins 22,23,24 on Arduino Mega) On the Arduino PCB, this is the bottom leftmost pin on the 40 pin connector. On the Radio PCB, this is the bottom rightmost pin on the 40 pin connector. Cutting the key swaps right to left, but also swaps top to bottom. Looking for ideas to resolve this. I know putting the connector on the back side of the arduino board would resolve it, but I'm wondering how the others out there are assembled. Do you have the new revision of the board? If so AlbEagle needs to re-revise it... here's my revision 1.1 board(the real 1.1, mine has wires fixing the bad connections): imgur.com/a/5GpTk1Y
|
|
|
Post by wonderfly1 on Dec 29, 2018 23:57:22 GMT 2
I believe I have the old version, it says v1.1 on it, but it was definitely made before October 2018. I knew I would need to fix the bad connection errors, but I can't understand why the pinouts aren't lining up. After desoldering all three 40 pin headers on the Arduino board and resoldering them on the back side (that was fun), I now have to twist the 40-pin connector to get the correct continuity. Thanks for posting your picture, are your ribbon cables twisted 180 between boards?
I was able to get all the displays on the radiostack pcb to show up and can control them with mobiflight, so I'm slowly making progress.
|
|
|
Post by username on Dec 30, 2018 1:34:09 GMT 2
Yes, my cables are twisted 180. It seems we both made the same mistake, I had to re solder mine too. It seems your making more programming progress than me, so if you are just don’t forget to upload them 😉!
|
|
|
Post by wonderfly1 on Dec 30, 2018 6:18:19 GMT 2
I'll post more info on the programming once I get it farther along. I just have the displays working now (except the NM and KT) and had to manually wire around the Arduino PCB to test it. I damaged some of the vias for the connectors when desoldering, so have to run some wires on the board to bypass these traces and do the pinout modification. Hope to finish this up tomorrow and then need to get some longer ribbon cables. For the programming of the displays at least, there are three separate circuits for displays, so under the settings part of the first Arduino, you add three 7 segment LED hardware modules. The first one (DIN1) has 8 MAX7219 modules, the second one (DIN2) has 5 modules, the third one (DIN3) has 5 modules. I named each one Com1Display, MidDisplay, APDisplay. This should be enough to configure the settings part and upload the software to the Arduino. From there, in the main configuration screen, navigate to COM1 Active, click edit and open up the third tab from the left. Select Com1Display, select module 1 from the dropdown in the box on the right, and configure it for 5 digits with the decimal point on 3. Click test. It should read 123.45. Change the module number and click test again to identify which displays are assigned to which modules. Then set COM1 Active back to 1 and repeat the setup for the COM1 Standby, NAV2, etc with just changing the module number. Once you figure out the system, it goes quickly. I'm working on a diagram that I'll post. I started with the mobiflight file on the website, can anyone explain why there is an (ON) and (OFF) for each parameter? COM1 Display: 8 modules 1: COM1 Active 123.45 2. COM1 Standby 123.45 3. NAV1 Active 123.45 4. Nav1 Standby 123.45 5. COM2 Active 123.45 6. COM2 Standby 123.45 7. NAV2 Active 123.45 8. NAV2 Standby 123.45 MidDisplay: 5 modules 1: DME 1234 678 2. NM 1.2 (NOT WORKING) 3. KT 1.2 (NOT WORKING) 4. ADF 2345.6 5. Transponder 1 3 5 7 APDisplay 1. VS 123456 2. ALT 12345 3. HDG 123 4. SPD 123 5. CRS 123 Sorry for the long post, hope this helps. Sidebar: If anyone else has to do this, I did pick up a decent desoldering trick if you don't have a desoldering gun. The wicking braid wasn't working for me at all, so I cut the black plastic of connector housing away and that left the individual pins. Heated and removed each individual pin by holding the board in a vise and using a pair of pliers to pull the pin out once heated. Make sure the solder is molten or you will also damage the via by pulling it out with the pin. There should be no resistance when pulling on the pin. Rinse and repeat for the next 119 pins Next is clearing out the holes of solder, lay the board flat on the table with the holes overhanging the edge. While heating each individual hole (avoid overheating), use a compressed air nozzle to blow the solder out of the hole while it is liquid. Ensure all body parts are clear of the path of molten solder! This should leave a pretty clean hole on the board and leaves a mess on the floor. Luckily I had extra connectors and could ruin the originals.
|
|
|
Post by username on Dec 30, 2018 7:04:54 GMT 2
IM stumped, none of my displays turn on. They used to go into test mode when I turned them on... But even then not all of them turned on? Il take my own advice and try to fix it tomorrow. Edit: P.S. if im just doing the software horribly wrong, can you uploae the mcc config file to here fdor me to test with? when you go file>save in mobiflight just see where its being saved. Thanks!
|
|
|
Post by wonderfly1 on Dec 30, 2018 19:05:19 GMT 2
Files attached below. 7SEGENC goes on Arduino 1. Note, this only has the displays working and I'm not sure if all the digits are mapped correctly. But this was enough to get the displays to light up. Before installing software, I'd also recommend doing a continuity check from the Arduino pins all the way to the DIN1, DIN2, and DIN3 pins for the first Max7219 in each circuit. The will then daisy chain from DOUT to the next DIN per the attached diagram. Verify continuity of all these circuits. Then also check that you are getting continuity to LOAD (CS) and CLK from the arduino for each Max chip on each circuit. The LOAD(CS) and CLK should all be connected together and are not daisy chained. For example, DIN1 (top right pin of top right Max7210 chip) should have continuity with pin 22 of the 1st arduino. LOAD(CS) should have continuity with pin 23 on Arduino 1 and CLK should have continuity with pin 24 on Arduino 1. Diagram with daisy chain mapping. Note, I've used this format (Chip number in circuit or address, number of digits). UPDATE: All displays (haven't tried NM/KT) are working now. See updated MobiFlight config files below. I also came across a post on the MobiFlight forum that suggested clearing the Arduino EEPROM if you run into weird behavior. I was getting this yesterday. After I had verified everything electrically, the displays would sometimes work in test mode and sometimes not. I could flash the software and it would work for a bit and then stop. I was able to fix this by clearing the Arduino EEPROM by using the EEPROM_clear example sketch in the Arduino IDE. Then reflashed the firmware with MobiFlight and config and all was good. Also, don't have the Arduino IDE and MobiFlight open at the same time, and have the Arduino connected before opening MobiFlight.
|
|
|
Post by davbow on Jan 6, 2019 22:18:19 GMT 2
Looking at all the pics - they show the arduino connectors on both sides of the board. Which side is correct? Do we have a definitive answer? Is this correct? David Attachments:
|
|
|
Post by wonderfly1 on Jan 12, 2019 5:20:43 GMT 2
I think how you have it installed now is the way I ended up with it. However, I would do a continuity check per above from Arduino pin to the display driver chips before soldering the header on. This will ensure you have the correct pinout and the headers installed correctly.
|
|
|
Post by buckbuck on Feb 13, 2019 18:25:00 GMT 2
What did I do wrong there? Somehow, the two Displyes get no power. That's how it looked to me.
|
|