Enigma › Forums › Generic discussions regarding assembling, troubleshooting and using the kit › Getting #32 up and running › Reply To: Getting #32 up and running
First off I have to say I’m sorry you having problem, I feel your pain (see more below).
Looking at the videos you sent by email was very interesting, especially the start up one.
It shows that at the initial lamp test all LEDs light up except PYX but also the top left alnum digit missing some segments and they are the segments on the same row as PYX. As it moves on it suppose to scroll “ENIGMA” and by slowing down the video I can see that while you can make out the letters several segments are stuck on. Now all segments are not always stuck and I think that indicates that it’s not a pure short but something else.
After that part no key works so you can’t do the rest of the troubleshooting. From experience I would guess that it thinks two or more keys are already pressed down and that is why it’s not working when you pressing a third key.
A few things for you to do:
First off you need to get the serial console so you can get some inside information. The simplest way for that is probably to install the Arduino IDE, that includes a serial console. Instructions on how to do that for windows can be found at https://www.arduino.cc/en/Guide/Windows
For the serial console you just need to pick the right com port under tools->port, start the console tools->Serial monitor, and select the speed of 38400bps. In the top of the serial console you can enter commands. There you enter !LOG:2 and click “send” to enable debug logging.
For programming – the arduino model used for meinEnigma is called “Arduino nano” or just “nano”. I see that in later versions of the Arduino IDE you have a choice of “Atmega328p” and “Atmega328p (Old Bootloader)”, you probably need to go with old bootloader there for now until china starts to sell modules with the new bootloader.
With that working you can see more what’s going on and get some hints as to what might be wrong.
Next, more troubleshooting steps. While I was prototyping the kit I ended up with one board out of 4 that had similar issues and I was banging my head against the wall for some weeks to find the problem (didn’t work constantly on it) and in the end the problem was the LEDs. The china LEDs does light up ok but I discovered that they allowed current to go in reverse also so the diode part of the LED was lost and that caused all the issues. Since then I’m now testing every LED before shipping to make sure the block current in the reverse. (Out of the three 1000 LED batches I got I found between 10-30 bad LEDs in each batch so testing is required).
For you to narrow down the problem, desolder some LEDs starting with PYXQWE and see if it works better then. Please also note if anything changes on the top display while starting up.
Other actions: I assume you already done it but for anyone else reading this later, ring up the board. That means take a multimeter or something to look for shorts. Remove what can be removed from sockets (arduino, sound module, alnum digits, cable connector) and start to cross check everything to make sure that it no short between pins in the cable connector, key is short wrong way and that it’s no short anywhere else. If you find a short, look closely at the soldering and at the schematic and see if it suppose to be a short there or not. Next ring up the other way, make sure it is a short where it should be. That means a bit more work because you need to look at the schematic but the basic is that the LEDs and keys are in a big row/col matrix. That means that you can expect pin 1 on the first alnum digit to be connected to pin 1 on the other 4 digits and so on, only one pin is not connected across. For the LEDs it’s same thing, one pin is connected to every LED on the top row and first four on the middle row. The bottom and right four in the middle same thing. Going by columns (which really are “rows” on the ht16k33 chip) the top left “Q” has one pin connected to the bottom left “P”, and in the case of QP it is also pin 12 (“S” segment) on all the alnum digits.