VOGONS


Project: Full Can Clock Oscillator Replacement

Topic actions

Reply 120 of 124, by wiretap

User metadata
Rank Oldbie
Rank
Oldbie

I'll look into that chip when I get a moment to see what the issue could be. That's definitely odd

My Github
Circuit Board Repair Manuals

Reply 121 of 124, by feipoa

User metadata
Rank l33t++
Rank
l33t++

I have ordered a few more of these SI5351 ebay units with the "5351M" chips to ensure they programme without issue. It feels like the Mouser chips are somehow locked or need to be initialised before they can be used. It's too bad because I have 10 of them.

Plan your life wisely, you'll be dead before you know it.

Reply 122 of 124, by wiretap

User metadata
Rank Oldbie
Rank
Oldbie

It could be the i2c address that needs to be set first. I don't see a difference otherwise. The MS5351M vs Si5351A are shown as a direct substitution for each other, with the M just having some slight improvements in phase noise levels at higher frequencies, however it consumes about 8mA more current.

Edit.. nope they use the same i2c address according to this testing: https://qrp-labs.com/synth/ms5351m.html

My Github
Circuit Board Repair Manuals

Reply 123 of 124, by feipoa

User metadata
Rank l33t++
Rank
l33t++

The facing issue is certainly peculiar. However, I finally received a few more of the "5351M" chips from China and will assemble a few PCBs to ensure that they are working. Then, I will place the SI5351A chips in place of the 5351M chips to re-check that the units stop working. I'll then update this thread after the testing.

Unfortunately, as often is the case, I am already in the middle of another project that I would like to finish up first.

Plan your life wisely, you'll be dead before you know it.

Reply 124 of 124, by feipoa

User metadata
Rank l33t++
Rank
l33t++

I managed to get 5 of these guys assembled but there were some setbacks and challenges, listed in no particular order.

The attachment Lot_of_5_full_can_oscillator_stacked.JPG is no longer available

1) Finding machine pin leads of the correct length and width so that the final module sits flush with the socket.

2) Assembly took a long time.

3) Don't get too casual with hot air on 0.80 mm thick PCBs. It warps the PCBs.

4) I could not programme the Mouser sourced Skyworks SI5351A-B02075-GT clock generator using two different Arduino Uno's, nor using an ATTINY85. I ordered another set of four SI5351 clock gen PCB's from eBay/China which contain a 5351M chip, which I was able to programme beautifully. I have ten SI5351 chips from Mouser I cannot use, along with ten 3.3V VRMs, twenty MOSFETs, etc. It's the price of experimentation. For subsequent builders, if you order SI5351 PCB's from eBay, they come with most parts already, but you still need to get the step-up voltage level translator chip (IC2), and 0603 caps/resistors.

5) As for programming the ATTINY85's from the Arduino, this has always been hit or miss for me. When programming the original ATTINY85, I would get these random synchronisation errors from the Arduino IDE. Sometimes programming would just work, and at other times, the errors appear. At one point, I thought my Arduino Uno just wouldn't work with ISP programming, and my Arduino EtherTen was fine... until a few days ago when I went to programme my second batch of ATTINY85 microcontrollers. Both Arduino's couldn't programme the ATTINY85 this time, spitting out some synchronisation error. I wondered: Is it because I'm using Ubuntu? Should I try my old XP machine? It then occurred to me that I can read the binary code off the one working unit I had (from several weeks ago).

I wire it up as shown:

The attachment External_programmer.JPG is no longer available

and use my TL866II Plus to read the binary. It can read the FLASH and EEPROM fine. As I've already soldered on the ATTINY85's to the PCB, I decided to do the same jumper wire manoeuvre on the remaining 4 units. All programmed fine using the TL866II. Unfortunately, not being able to use the Arduino IDE to programme any future ATTINY85, it means that I cannot easily change the code. As such, we are left with 1 MHz steps for each button press, 300 ms delay in the button loop, 80 MHz reset frequency, an upper limit of 110 MHz, and lower limit of 20 MHz. In fact, I don't recommend going lower than 30 MHz as the waveform starts to develop an extra bump.

I settled on the 300 ms button delay so that it was easier to time the button presses to how much extra MHz you wanted to run at. If you remove the delay, you don't know if your one press would yield 1 MHz up, or 10 MHz up. If you wire the module to a scope and 5 V supply, and hold one button down, you can see how holding the button down changes the waveform. Indeed, you see jumps after about every 300 ms, or 3 MHz per second. I tried the module with 10 MHz and 20 MHz based ATTINY85 chips and both yield about the same step rate, as visible on the scope. I didn't time it - just from eyeballing.

Now that I can no longer use the Arduino IDE for Arduino ISP programming, I could just as well cut off the 4-pin header on the top PCB layer. Does leaving the header in place cause any 'antenna' issues?

Misc. Notes.
1) It would be good to put a mark on the silkscreen to indicate where the top and bottom of the PCB is. These are so easy to get flipped around if you aren't looking at the pinouts on paper when inserting the clock gen module into a motherboard. For the prototypes, I've added some whiteout on the top edge, which is sort of visible in the first images.

2) It would also be of benefit to indicate with silkscreen which button is UP and which is DOWN. The button wiretap marked as 'A' is UP, and 'B' is DOWN.

3) Finally, I found the buttons sourced by wiretap (for CAD layout purposes) to be not so great for pushing. In the right-most module on the above image, you can see the buttons with light red. The darker red taller buttons are the ones I selected. While my buttons seem to work just fine as a substitute, it contains 5 solder pads and has some comment about having one of the pads set to GND in the datasheet.

The attachment Mitsumi_button_R-667079.png is no longer available

On my original build, I cut off the lead for the button marked as 'G', but it was difficult not to get solder onto the cut stub. On the next 4 assemblies, I simpled left the 'G' stub as is and wired it to the 'A' stub. The buttons work fine like this, but would it be better to adjust the layout to fit the button? The taller red buttons are way more ideal than the flat pinky button. Less force is required and they are easier to feel with your finger. With the pinky red buttons, you may need to use your finger nail, depending on how fat your fingers are.

The digikey link for the Mitsumi buttons: https://www.digikey.ca/en/products/detail/mit … 667079/11591259
and the Mouser link for the same button: https://www.mouser.ca/ProductDetail/Mitsumi/S … 0U54xXTVA%3D%3D

I've listed both because the datasheets are different and the Mouser link also contains a PCB footprint.

Plan your life wisely, you'll be dead before you know it.