How to fix a PCB design mistake after manufacturing?
$begingroup$
Newbie 16 years old here.
My project is a mini robot with the pcb as the chassis, lipo battery with charger circuit, and infrared sensors. I used LSM6DS33TR for my I2C accelerometer and gyroscope with 10K "pull-up resistor" according to datasheet, and ATMEGA328P as microcontroller.
It is my first time to design my own industrial PCB board and manufacture it. I manufactured the PCB's with JLCPCB. After sending the files and waiting for delivery, when i spot a mistake from my design. I noticed that I haven't wired the pull-up resistors for my I2C bus correctly because they should be pulled-up to 3V3.
My Questions are:
- How can I redirect connections or make modifications to make the SDA and SCL pull-up to supply voltage with PCB being manufactured already?
- Should I change the design and manufacture another PCB? (Broke ):)
Here is the entire schematic diagram for the project I made:
(the i2c lines are encircled)
TOP LAYER: (GND Copper Plane)
BOTTOM LAYER: (3V3 Copper Plane)
pcb pcb-design circuit-design i2c
$endgroup$
|
show 5 more comments
$begingroup$
Newbie 16 years old here.
My project is a mini robot with the pcb as the chassis, lipo battery with charger circuit, and infrared sensors. I used LSM6DS33TR for my I2C accelerometer and gyroscope with 10K "pull-up resistor" according to datasheet, and ATMEGA328P as microcontroller.
It is my first time to design my own industrial PCB board and manufacture it. I manufactured the PCB's with JLCPCB. After sending the files and waiting for delivery, when i spot a mistake from my design. I noticed that I haven't wired the pull-up resistors for my I2C bus correctly because they should be pulled-up to 3V3.
My Questions are:
- How can I redirect connections or make modifications to make the SDA and SCL pull-up to supply voltage with PCB being manufactured already?
- Should I change the design and manufacture another PCB? (Broke ):)
Here is the entire schematic diagram for the project I made:
(the i2c lines are encircled)
TOP LAYER: (GND Copper Plane)
BOTTOM LAYER: (3V3 Copper Plane)
pcb pcb-design circuit-design i2c
$endgroup$
3
$begingroup$
Nice work! Fortunately for you we have all done things like this and been through the process of fixing them. I was going to suggest the same thing as @Oldfart. Best of luck to you.
$endgroup$
– Elliot Alderson
Jan 26 at 15:17
10
$begingroup$
Congratulations! Welcome to the land of the bodge! :) (you aren't a real PCB designer until you've broken out the spool of blue wire? XD)
$endgroup$
– ThreePhaseEel
Jan 26 at 15:18
4
$begingroup$
For future projects, I recommend you add extra pads on some of the more important traces, even if they don't get populated, so you can attach wires to them if necessary, and you don't have to worry about soldering a wire onto a pin of a tiny IC package.
$endgroup$
– Hearth
Jan 26 at 15:23
6
$begingroup$
What @Hearth said can be accomplished in most EDA/EDM software by making a test-point component that has one "pin", and then making a footprint for that test point that's just a little surface mount pad. You'll have all these dots all over your board, labeled, that you can use for mods or for connecting scope probes. Chances are high that your tool already has something similar in the libraries.
$endgroup$
– TimWescott
Jan 26 at 16:10
8
$begingroup$
I suggest you get the boards you bought working, even if they don't look all that attractive. Then, if you decide to re-make it you'll be more likely to have found 100% of the problems.
$endgroup$
– Spehro Pefhany
Jan 26 at 17:22
|
show 5 more comments
$begingroup$
Newbie 16 years old here.
My project is a mini robot with the pcb as the chassis, lipo battery with charger circuit, and infrared sensors. I used LSM6DS33TR for my I2C accelerometer and gyroscope with 10K "pull-up resistor" according to datasheet, and ATMEGA328P as microcontroller.
It is my first time to design my own industrial PCB board and manufacture it. I manufactured the PCB's with JLCPCB. After sending the files and waiting for delivery, when i spot a mistake from my design. I noticed that I haven't wired the pull-up resistors for my I2C bus correctly because they should be pulled-up to 3V3.
My Questions are:
- How can I redirect connections or make modifications to make the SDA and SCL pull-up to supply voltage with PCB being manufactured already?
- Should I change the design and manufacture another PCB? (Broke ):)
Here is the entire schematic diagram for the project I made:
(the i2c lines are encircled)
TOP LAYER: (GND Copper Plane)
BOTTOM LAYER: (3V3 Copper Plane)
pcb pcb-design circuit-design i2c
$endgroup$
Newbie 16 years old here.
My project is a mini robot with the pcb as the chassis, lipo battery with charger circuit, and infrared sensors. I used LSM6DS33TR for my I2C accelerometer and gyroscope with 10K "pull-up resistor" according to datasheet, and ATMEGA328P as microcontroller.
It is my first time to design my own industrial PCB board and manufacture it. I manufactured the PCB's with JLCPCB. After sending the files and waiting for delivery, when i spot a mistake from my design. I noticed that I haven't wired the pull-up resistors for my I2C bus correctly because they should be pulled-up to 3V3.
My Questions are:
- How can I redirect connections or make modifications to make the SDA and SCL pull-up to supply voltage with PCB being manufactured already?
- Should I change the design and manufacture another PCB? (Broke ):)
Here is the entire schematic diagram for the project I made:
(the i2c lines are encircled)
TOP LAYER: (GND Copper Plane)
BOTTOM LAYER: (3V3 Copper Plane)
pcb pcb-design circuit-design i2c
pcb pcb-design circuit-design i2c
edited Jan 27 at 17:48
NieDzejkob
1053
1053
asked Jan 26 at 14:55
Dave BenemeritoDave Benemerito
1037
1037
3
$begingroup$
Nice work! Fortunately for you we have all done things like this and been through the process of fixing them. I was going to suggest the same thing as @Oldfart. Best of luck to you.
$endgroup$
– Elliot Alderson
Jan 26 at 15:17
10
$begingroup$
Congratulations! Welcome to the land of the bodge! :) (you aren't a real PCB designer until you've broken out the spool of blue wire? XD)
$endgroup$
– ThreePhaseEel
Jan 26 at 15:18
4
$begingroup$
For future projects, I recommend you add extra pads on some of the more important traces, even if they don't get populated, so you can attach wires to them if necessary, and you don't have to worry about soldering a wire onto a pin of a tiny IC package.
$endgroup$
– Hearth
Jan 26 at 15:23
6
$begingroup$
What @Hearth said can be accomplished in most EDA/EDM software by making a test-point component that has one "pin", and then making a footprint for that test point that's just a little surface mount pad. You'll have all these dots all over your board, labeled, that you can use for mods or for connecting scope probes. Chances are high that your tool already has something similar in the libraries.
$endgroup$
– TimWescott
Jan 26 at 16:10
8
$begingroup$
I suggest you get the boards you bought working, even if they don't look all that attractive. Then, if you decide to re-make it you'll be more likely to have found 100% of the problems.
$endgroup$
– Spehro Pefhany
Jan 26 at 17:22
|
show 5 more comments
3
$begingroup$
Nice work! Fortunately for you we have all done things like this and been through the process of fixing them. I was going to suggest the same thing as @Oldfart. Best of luck to you.
$endgroup$
– Elliot Alderson
Jan 26 at 15:17
10
$begingroup$
Congratulations! Welcome to the land of the bodge! :) (you aren't a real PCB designer until you've broken out the spool of blue wire? XD)
$endgroup$
– ThreePhaseEel
Jan 26 at 15:18
4
$begingroup$
For future projects, I recommend you add extra pads on some of the more important traces, even if they don't get populated, so you can attach wires to them if necessary, and you don't have to worry about soldering a wire onto a pin of a tiny IC package.
$endgroup$
– Hearth
Jan 26 at 15:23
6
$begingroup$
What @Hearth said can be accomplished in most EDA/EDM software by making a test-point component that has one "pin", and then making a footprint for that test point that's just a little surface mount pad. You'll have all these dots all over your board, labeled, that you can use for mods or for connecting scope probes. Chances are high that your tool already has something similar in the libraries.
$endgroup$
– TimWescott
Jan 26 at 16:10
8
$begingroup$
I suggest you get the boards you bought working, even if they don't look all that attractive. Then, if you decide to re-make it you'll be more likely to have found 100% of the problems.
$endgroup$
– Spehro Pefhany
Jan 26 at 17:22
3
3
$begingroup$
Nice work! Fortunately for you we have all done things like this and been through the process of fixing them. I was going to suggest the same thing as @Oldfart. Best of luck to you.
$endgroup$
– Elliot Alderson
Jan 26 at 15:17
$begingroup$
Nice work! Fortunately for you we have all done things like this and been through the process of fixing them. I was going to suggest the same thing as @Oldfart. Best of luck to you.
$endgroup$
– Elliot Alderson
Jan 26 at 15:17
10
10
$begingroup$
Congratulations! Welcome to the land of the bodge! :) (you aren't a real PCB designer until you've broken out the spool of blue wire? XD)
$endgroup$
– ThreePhaseEel
Jan 26 at 15:18
$begingroup$
Congratulations! Welcome to the land of the bodge! :) (you aren't a real PCB designer until you've broken out the spool of blue wire? XD)
$endgroup$
– ThreePhaseEel
Jan 26 at 15:18
4
4
$begingroup$
For future projects, I recommend you add extra pads on some of the more important traces, even if they don't get populated, so you can attach wires to them if necessary, and you don't have to worry about soldering a wire onto a pin of a tiny IC package.
$endgroup$
– Hearth
Jan 26 at 15:23
$begingroup$
For future projects, I recommend you add extra pads on some of the more important traces, even if they don't get populated, so you can attach wires to them if necessary, and you don't have to worry about soldering a wire onto a pin of a tiny IC package.
$endgroup$
– Hearth
Jan 26 at 15:23
6
6
$begingroup$
What @Hearth said can be accomplished in most EDA/EDM software by making a test-point component that has one "pin", and then making a footprint for that test point that's just a little surface mount pad. You'll have all these dots all over your board, labeled, that you can use for mods or for connecting scope probes. Chances are high that your tool already has something similar in the libraries.
$endgroup$
– TimWescott
Jan 26 at 16:10
$begingroup$
What @Hearth said can be accomplished in most EDA/EDM software by making a test-point component that has one "pin", and then making a footprint for that test point that's just a little surface mount pad. You'll have all these dots all over your board, labeled, that you can use for mods or for connecting scope probes. Chances are high that your tool already has something similar in the libraries.
$endgroup$
– TimWescott
Jan 26 at 16:10
8
8
$begingroup$
I suggest you get the boards you bought working, even if they don't look all that attractive. Then, if you decide to re-make it you'll be more likely to have found 100% of the problems.
$endgroup$
– Spehro Pefhany
Jan 26 at 17:22
$begingroup$
I suggest you get the boards you bought working, even if they don't look all that attractive. Then, if you decide to re-make it you'll be more likely to have found 100% of the problems.
$endgroup$
– Spehro Pefhany
Jan 26 at 17:22
|
show 5 more comments
3 Answers
3
active
oldest
votes
$begingroup$
You have to 'patch' your PCB.
I would do as I have tried to draw below: place two pull up resistors (10K) on the existing pads shorting them out. Then a wire from the other ends to the nearest 3V3 connection.
I have drawn SMD resistor but you can use the "old fashioned" axial ones too.
$endgroup$
5
$begingroup$
Just wanted to add that I like to use wire-wrap wire for these fixes, but any fine solid wire should do. I also would be inclined to put a tiny drop of glue under the resistors to hold them in place.
$endgroup$
– Elliot Alderson
Jan 26 at 15:19
3
$begingroup$
An axial THT resistor may be more appropriate since there is no second pad for the SMD one. Adding some glue may help but not sure if it's the best solution. With some luck the leads of the THT resistor will be long enough to reach the desired location, avoiding extra wiring.
$endgroup$
– Fredled
Jan 26 at 20:07
$begingroup$
I did used 0603 resistors.. yeah tht resistors might be good to reach pads. Thanks!
$endgroup$
– Dave Benemerito
Jan 26 at 23:39
add a comment |
$begingroup$
Your board has more problems. For example, the power supply pins for U5 have a capacitor in series with them which I guess was supposed to be the decoupling caps between VCC and GND.
I also don't see any decoupling caps for the AVR.
In the end it might be better to redo the board correctly.
$endgroup$
1
$begingroup$
That particular problem isn't hard to fix, though. This should probably be a comment, not an answer.
$endgroup$
– Hearth
Jan 26 at 15:24
2
$begingroup$
The VCC problem with U5 can be fixed in more or less the same way as the I2C resistor problem -- particularly because the other end needs to go to ground, and in that case the OP can just scratch some solder mask off of the ground plane in the right spot, lay the cap crossways, and solder both ends down.
$endgroup$
– TimWescott
Jan 26 at 16:07
2
$begingroup$
Worth noting that replacing these two caps with 0 ohm resistors is probably good enough. Also that jumper wire should not be used to hook up decoupling capacitors because their inductance will cancel the capacitance -- Tim's approach of directly attaching to a ground plane will work.
$endgroup$
– Ben Voigt
Jan 26 at 17:15
3
$begingroup$
Some people don't care about a lot of bodge work on a board and some might see multiple errors as good enough a reason to redo the board. So I think pointing out the fact that there are more errors on the board, which might sway the OP's decision, is a valid answer.
$endgroup$
– Unimportant
Jan 26 at 17:31
$begingroup$
Thanks for that! I haven't realy noticed the cap mistake until this answer. I don't k ow what I have been thinking that time XD. There's really a lot to do for my pcb mistake. Thanks!
$endgroup$
– Dave Benemerito
Jan 26 at 23:52
add a comment |
$begingroup$
The I2C bus can be fixed with no PCB changes (the other problems @Unimportant found will still require attention).
Simply:
- Replace the series resistors (which weirdly have no designators?) with a low value suitable for series resistors, e.g. 22 ohms.
- Enable the programmable internal pull-up resistors on the corresponding I2C pins of the ATMEGA.
Note that the programmable pullups will not be exactly the recommended values for I2C usage, so you ought to recalculate the maximum speed based on the new pullup strength.
$endgroup$
$begingroup$
Worth noting, but probably won't work with the data rates an IMU will need.
$endgroup$
– Matt Young
Jan 26 at 17:14
4
$begingroup$
@MattYoung: That "IMU" has a max rate of 1.6ksps, it doesn't need any fancy data rates (and sensors that do need high speeds won't be using I2C in the first place)
$endgroup$
– Ben Voigt
Jan 26 at 17:19
$begingroup$
I did consider the internal pullup resistors of the atmega, and after quite of research, I found out that it is not suitable for I2C. Atleast for this chip, it doesnt need any fancy rates. Thanks for that info :)
$endgroup$
– Dave Benemerito
Jan 27 at 0:09
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["\$", "\$"]]);
});
});
}, "mathjax-editing");
StackExchange.ifUsing("editor", function () {
return StackExchange.using("schematics", function () {
StackExchange.schematics.init();
});
}, "cicuitlab");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "135"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2felectronics.stackexchange.com%2fquestions%2f419043%2fhow-to-fix-a-pcb-design-mistake-after-manufacturing%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
You have to 'patch' your PCB.
I would do as I have tried to draw below: place two pull up resistors (10K) on the existing pads shorting them out. Then a wire from the other ends to the nearest 3V3 connection.
I have drawn SMD resistor but you can use the "old fashioned" axial ones too.
$endgroup$
5
$begingroup$
Just wanted to add that I like to use wire-wrap wire for these fixes, but any fine solid wire should do. I also would be inclined to put a tiny drop of glue under the resistors to hold them in place.
$endgroup$
– Elliot Alderson
Jan 26 at 15:19
3
$begingroup$
An axial THT resistor may be more appropriate since there is no second pad for the SMD one. Adding some glue may help but not sure if it's the best solution. With some luck the leads of the THT resistor will be long enough to reach the desired location, avoiding extra wiring.
$endgroup$
– Fredled
Jan 26 at 20:07
$begingroup$
I did used 0603 resistors.. yeah tht resistors might be good to reach pads. Thanks!
$endgroup$
– Dave Benemerito
Jan 26 at 23:39
add a comment |
$begingroup$
You have to 'patch' your PCB.
I would do as I have tried to draw below: place two pull up resistors (10K) on the existing pads shorting them out. Then a wire from the other ends to the nearest 3V3 connection.
I have drawn SMD resistor but you can use the "old fashioned" axial ones too.
$endgroup$
5
$begingroup$
Just wanted to add that I like to use wire-wrap wire for these fixes, but any fine solid wire should do. I also would be inclined to put a tiny drop of glue under the resistors to hold them in place.
$endgroup$
– Elliot Alderson
Jan 26 at 15:19
3
$begingroup$
An axial THT resistor may be more appropriate since there is no second pad for the SMD one. Adding some glue may help but not sure if it's the best solution. With some luck the leads of the THT resistor will be long enough to reach the desired location, avoiding extra wiring.
$endgroup$
– Fredled
Jan 26 at 20:07
$begingroup$
I did used 0603 resistors.. yeah tht resistors might be good to reach pads. Thanks!
$endgroup$
– Dave Benemerito
Jan 26 at 23:39
add a comment |
$begingroup$
You have to 'patch' your PCB.
I would do as I have tried to draw below: place two pull up resistors (10K) on the existing pads shorting them out. Then a wire from the other ends to the nearest 3V3 connection.
I have drawn SMD resistor but you can use the "old fashioned" axial ones too.
$endgroup$
You have to 'patch' your PCB.
I would do as I have tried to draw below: place two pull up resistors (10K) on the existing pads shorting them out. Then a wire from the other ends to the nearest 3V3 connection.
I have drawn SMD resistor but you can use the "old fashioned" axial ones too.
answered Jan 26 at 15:11
OldfartOldfart
8,5862927
8,5862927
5
$begingroup$
Just wanted to add that I like to use wire-wrap wire for these fixes, but any fine solid wire should do. I also would be inclined to put a tiny drop of glue under the resistors to hold them in place.
$endgroup$
– Elliot Alderson
Jan 26 at 15:19
3
$begingroup$
An axial THT resistor may be more appropriate since there is no second pad for the SMD one. Adding some glue may help but not sure if it's the best solution. With some luck the leads of the THT resistor will be long enough to reach the desired location, avoiding extra wiring.
$endgroup$
– Fredled
Jan 26 at 20:07
$begingroup$
I did used 0603 resistors.. yeah tht resistors might be good to reach pads. Thanks!
$endgroup$
– Dave Benemerito
Jan 26 at 23:39
add a comment |
5
$begingroup$
Just wanted to add that I like to use wire-wrap wire for these fixes, but any fine solid wire should do. I also would be inclined to put a tiny drop of glue under the resistors to hold them in place.
$endgroup$
– Elliot Alderson
Jan 26 at 15:19
3
$begingroup$
An axial THT resistor may be more appropriate since there is no second pad for the SMD one. Adding some glue may help but not sure if it's the best solution. With some luck the leads of the THT resistor will be long enough to reach the desired location, avoiding extra wiring.
$endgroup$
– Fredled
Jan 26 at 20:07
$begingroup$
I did used 0603 resistors.. yeah tht resistors might be good to reach pads. Thanks!
$endgroup$
– Dave Benemerito
Jan 26 at 23:39
5
5
$begingroup$
Just wanted to add that I like to use wire-wrap wire for these fixes, but any fine solid wire should do. I also would be inclined to put a tiny drop of glue under the resistors to hold them in place.
$endgroup$
– Elliot Alderson
Jan 26 at 15:19
$begingroup$
Just wanted to add that I like to use wire-wrap wire for these fixes, but any fine solid wire should do. I also would be inclined to put a tiny drop of glue under the resistors to hold them in place.
$endgroup$
– Elliot Alderson
Jan 26 at 15:19
3
3
$begingroup$
An axial THT resistor may be more appropriate since there is no second pad for the SMD one. Adding some glue may help but not sure if it's the best solution. With some luck the leads of the THT resistor will be long enough to reach the desired location, avoiding extra wiring.
$endgroup$
– Fredled
Jan 26 at 20:07
$begingroup$
An axial THT resistor may be more appropriate since there is no second pad for the SMD one. Adding some glue may help but not sure if it's the best solution. With some luck the leads of the THT resistor will be long enough to reach the desired location, avoiding extra wiring.
$endgroup$
– Fredled
Jan 26 at 20:07
$begingroup$
I did used 0603 resistors.. yeah tht resistors might be good to reach pads. Thanks!
$endgroup$
– Dave Benemerito
Jan 26 at 23:39
$begingroup$
I did used 0603 resistors.. yeah tht resistors might be good to reach pads. Thanks!
$endgroup$
– Dave Benemerito
Jan 26 at 23:39
add a comment |
$begingroup$
Your board has more problems. For example, the power supply pins for U5 have a capacitor in series with them which I guess was supposed to be the decoupling caps between VCC and GND.
I also don't see any decoupling caps for the AVR.
In the end it might be better to redo the board correctly.
$endgroup$
1
$begingroup$
That particular problem isn't hard to fix, though. This should probably be a comment, not an answer.
$endgroup$
– Hearth
Jan 26 at 15:24
2
$begingroup$
The VCC problem with U5 can be fixed in more or less the same way as the I2C resistor problem -- particularly because the other end needs to go to ground, and in that case the OP can just scratch some solder mask off of the ground plane in the right spot, lay the cap crossways, and solder both ends down.
$endgroup$
– TimWescott
Jan 26 at 16:07
2
$begingroup$
Worth noting that replacing these two caps with 0 ohm resistors is probably good enough. Also that jumper wire should not be used to hook up decoupling capacitors because their inductance will cancel the capacitance -- Tim's approach of directly attaching to a ground plane will work.
$endgroup$
– Ben Voigt
Jan 26 at 17:15
3
$begingroup$
Some people don't care about a lot of bodge work on a board and some might see multiple errors as good enough a reason to redo the board. So I think pointing out the fact that there are more errors on the board, which might sway the OP's decision, is a valid answer.
$endgroup$
– Unimportant
Jan 26 at 17:31
$begingroup$
Thanks for that! I haven't realy noticed the cap mistake until this answer. I don't k ow what I have been thinking that time XD. There's really a lot to do for my pcb mistake. Thanks!
$endgroup$
– Dave Benemerito
Jan 26 at 23:52
add a comment |
$begingroup$
Your board has more problems. For example, the power supply pins for U5 have a capacitor in series with them which I guess was supposed to be the decoupling caps between VCC and GND.
I also don't see any decoupling caps for the AVR.
In the end it might be better to redo the board correctly.
$endgroup$
1
$begingroup$
That particular problem isn't hard to fix, though. This should probably be a comment, not an answer.
$endgroup$
– Hearth
Jan 26 at 15:24
2
$begingroup$
The VCC problem with U5 can be fixed in more or less the same way as the I2C resistor problem -- particularly because the other end needs to go to ground, and in that case the OP can just scratch some solder mask off of the ground plane in the right spot, lay the cap crossways, and solder both ends down.
$endgroup$
– TimWescott
Jan 26 at 16:07
2
$begingroup$
Worth noting that replacing these two caps with 0 ohm resistors is probably good enough. Also that jumper wire should not be used to hook up decoupling capacitors because their inductance will cancel the capacitance -- Tim's approach of directly attaching to a ground plane will work.
$endgroup$
– Ben Voigt
Jan 26 at 17:15
3
$begingroup$
Some people don't care about a lot of bodge work on a board and some might see multiple errors as good enough a reason to redo the board. So I think pointing out the fact that there are more errors on the board, which might sway the OP's decision, is a valid answer.
$endgroup$
– Unimportant
Jan 26 at 17:31
$begingroup$
Thanks for that! I haven't realy noticed the cap mistake until this answer. I don't k ow what I have been thinking that time XD. There's really a lot to do for my pcb mistake. Thanks!
$endgroup$
– Dave Benemerito
Jan 26 at 23:52
add a comment |
$begingroup$
Your board has more problems. For example, the power supply pins for U5 have a capacitor in series with them which I guess was supposed to be the decoupling caps between VCC and GND.
I also don't see any decoupling caps for the AVR.
In the end it might be better to redo the board correctly.
$endgroup$
Your board has more problems. For example, the power supply pins for U5 have a capacitor in series with them which I guess was supposed to be the decoupling caps between VCC and GND.
I also don't see any decoupling caps for the AVR.
In the end it might be better to redo the board correctly.
edited Jan 26 at 15:40
winny
4,82541833
4,82541833
answered Jan 26 at 15:22
UnimportantUnimportant
42938
42938
1
$begingroup$
That particular problem isn't hard to fix, though. This should probably be a comment, not an answer.
$endgroup$
– Hearth
Jan 26 at 15:24
2
$begingroup$
The VCC problem with U5 can be fixed in more or less the same way as the I2C resistor problem -- particularly because the other end needs to go to ground, and in that case the OP can just scratch some solder mask off of the ground plane in the right spot, lay the cap crossways, and solder both ends down.
$endgroup$
– TimWescott
Jan 26 at 16:07
2
$begingroup$
Worth noting that replacing these two caps with 0 ohm resistors is probably good enough. Also that jumper wire should not be used to hook up decoupling capacitors because their inductance will cancel the capacitance -- Tim's approach of directly attaching to a ground plane will work.
$endgroup$
– Ben Voigt
Jan 26 at 17:15
3
$begingroup$
Some people don't care about a lot of bodge work on a board and some might see multiple errors as good enough a reason to redo the board. So I think pointing out the fact that there are more errors on the board, which might sway the OP's decision, is a valid answer.
$endgroup$
– Unimportant
Jan 26 at 17:31
$begingroup$
Thanks for that! I haven't realy noticed the cap mistake until this answer. I don't k ow what I have been thinking that time XD. There's really a lot to do for my pcb mistake. Thanks!
$endgroup$
– Dave Benemerito
Jan 26 at 23:52
add a comment |
1
$begingroup$
That particular problem isn't hard to fix, though. This should probably be a comment, not an answer.
$endgroup$
– Hearth
Jan 26 at 15:24
2
$begingroup$
The VCC problem with U5 can be fixed in more or less the same way as the I2C resistor problem -- particularly because the other end needs to go to ground, and in that case the OP can just scratch some solder mask off of the ground plane in the right spot, lay the cap crossways, and solder both ends down.
$endgroup$
– TimWescott
Jan 26 at 16:07
2
$begingroup$
Worth noting that replacing these two caps with 0 ohm resistors is probably good enough. Also that jumper wire should not be used to hook up decoupling capacitors because their inductance will cancel the capacitance -- Tim's approach of directly attaching to a ground plane will work.
$endgroup$
– Ben Voigt
Jan 26 at 17:15
3
$begingroup$
Some people don't care about a lot of bodge work on a board and some might see multiple errors as good enough a reason to redo the board. So I think pointing out the fact that there are more errors on the board, which might sway the OP's decision, is a valid answer.
$endgroup$
– Unimportant
Jan 26 at 17:31
$begingroup$
Thanks for that! I haven't realy noticed the cap mistake until this answer. I don't k ow what I have been thinking that time XD. There's really a lot to do for my pcb mistake. Thanks!
$endgroup$
– Dave Benemerito
Jan 26 at 23:52
1
1
$begingroup$
That particular problem isn't hard to fix, though. This should probably be a comment, not an answer.
$endgroup$
– Hearth
Jan 26 at 15:24
$begingroup$
That particular problem isn't hard to fix, though. This should probably be a comment, not an answer.
$endgroup$
– Hearth
Jan 26 at 15:24
2
2
$begingroup$
The VCC problem with U5 can be fixed in more or less the same way as the I2C resistor problem -- particularly because the other end needs to go to ground, and in that case the OP can just scratch some solder mask off of the ground plane in the right spot, lay the cap crossways, and solder both ends down.
$endgroup$
– TimWescott
Jan 26 at 16:07
$begingroup$
The VCC problem with U5 can be fixed in more or less the same way as the I2C resistor problem -- particularly because the other end needs to go to ground, and in that case the OP can just scratch some solder mask off of the ground plane in the right spot, lay the cap crossways, and solder both ends down.
$endgroup$
– TimWescott
Jan 26 at 16:07
2
2
$begingroup$
Worth noting that replacing these two caps with 0 ohm resistors is probably good enough. Also that jumper wire should not be used to hook up decoupling capacitors because their inductance will cancel the capacitance -- Tim's approach of directly attaching to a ground plane will work.
$endgroup$
– Ben Voigt
Jan 26 at 17:15
$begingroup$
Worth noting that replacing these two caps with 0 ohm resistors is probably good enough. Also that jumper wire should not be used to hook up decoupling capacitors because their inductance will cancel the capacitance -- Tim's approach of directly attaching to a ground plane will work.
$endgroup$
– Ben Voigt
Jan 26 at 17:15
3
3
$begingroup$
Some people don't care about a lot of bodge work on a board and some might see multiple errors as good enough a reason to redo the board. So I think pointing out the fact that there are more errors on the board, which might sway the OP's decision, is a valid answer.
$endgroup$
– Unimportant
Jan 26 at 17:31
$begingroup$
Some people don't care about a lot of bodge work on a board and some might see multiple errors as good enough a reason to redo the board. So I think pointing out the fact that there are more errors on the board, which might sway the OP's decision, is a valid answer.
$endgroup$
– Unimportant
Jan 26 at 17:31
$begingroup$
Thanks for that! I haven't realy noticed the cap mistake until this answer. I don't k ow what I have been thinking that time XD. There's really a lot to do for my pcb mistake. Thanks!
$endgroup$
– Dave Benemerito
Jan 26 at 23:52
$begingroup$
Thanks for that! I haven't realy noticed the cap mistake until this answer. I don't k ow what I have been thinking that time XD. There's really a lot to do for my pcb mistake. Thanks!
$endgroup$
– Dave Benemerito
Jan 26 at 23:52
add a comment |
$begingroup$
The I2C bus can be fixed with no PCB changes (the other problems @Unimportant found will still require attention).
Simply:
- Replace the series resistors (which weirdly have no designators?) with a low value suitable for series resistors, e.g. 22 ohms.
- Enable the programmable internal pull-up resistors on the corresponding I2C pins of the ATMEGA.
Note that the programmable pullups will not be exactly the recommended values for I2C usage, so you ought to recalculate the maximum speed based on the new pullup strength.
$endgroup$
$begingroup$
Worth noting, but probably won't work with the data rates an IMU will need.
$endgroup$
– Matt Young
Jan 26 at 17:14
4
$begingroup$
@MattYoung: That "IMU" has a max rate of 1.6ksps, it doesn't need any fancy data rates (and sensors that do need high speeds won't be using I2C in the first place)
$endgroup$
– Ben Voigt
Jan 26 at 17:19
$begingroup$
I did consider the internal pullup resistors of the atmega, and after quite of research, I found out that it is not suitable for I2C. Atleast for this chip, it doesnt need any fancy rates. Thanks for that info :)
$endgroup$
– Dave Benemerito
Jan 27 at 0:09
add a comment |
$begingroup$
The I2C bus can be fixed with no PCB changes (the other problems @Unimportant found will still require attention).
Simply:
- Replace the series resistors (which weirdly have no designators?) with a low value suitable for series resistors, e.g. 22 ohms.
- Enable the programmable internal pull-up resistors on the corresponding I2C pins of the ATMEGA.
Note that the programmable pullups will not be exactly the recommended values for I2C usage, so you ought to recalculate the maximum speed based on the new pullup strength.
$endgroup$
$begingroup$
Worth noting, but probably won't work with the data rates an IMU will need.
$endgroup$
– Matt Young
Jan 26 at 17:14
4
$begingroup$
@MattYoung: That "IMU" has a max rate of 1.6ksps, it doesn't need any fancy data rates (and sensors that do need high speeds won't be using I2C in the first place)
$endgroup$
– Ben Voigt
Jan 26 at 17:19
$begingroup$
I did consider the internal pullup resistors of the atmega, and after quite of research, I found out that it is not suitable for I2C. Atleast for this chip, it doesnt need any fancy rates. Thanks for that info :)
$endgroup$
– Dave Benemerito
Jan 27 at 0:09
add a comment |
$begingroup$
The I2C bus can be fixed with no PCB changes (the other problems @Unimportant found will still require attention).
Simply:
- Replace the series resistors (which weirdly have no designators?) with a low value suitable for series resistors, e.g. 22 ohms.
- Enable the programmable internal pull-up resistors on the corresponding I2C pins of the ATMEGA.
Note that the programmable pullups will not be exactly the recommended values for I2C usage, so you ought to recalculate the maximum speed based on the new pullup strength.
$endgroup$
The I2C bus can be fixed with no PCB changes (the other problems @Unimportant found will still require attention).
Simply:
- Replace the series resistors (which weirdly have no designators?) with a low value suitable for series resistors, e.g. 22 ohms.
- Enable the programmable internal pull-up resistors on the corresponding I2C pins of the ATMEGA.
Note that the programmable pullups will not be exactly the recommended values for I2C usage, so you ought to recalculate the maximum speed based on the new pullup strength.
edited Jan 26 at 17:11
answered Jan 26 at 16:27
Ben VoigtBen Voigt
1,76611526
1,76611526
$begingroup$
Worth noting, but probably won't work with the data rates an IMU will need.
$endgroup$
– Matt Young
Jan 26 at 17:14
4
$begingroup$
@MattYoung: That "IMU" has a max rate of 1.6ksps, it doesn't need any fancy data rates (and sensors that do need high speeds won't be using I2C in the first place)
$endgroup$
– Ben Voigt
Jan 26 at 17:19
$begingroup$
I did consider the internal pullup resistors of the atmega, and after quite of research, I found out that it is not suitable for I2C. Atleast for this chip, it doesnt need any fancy rates. Thanks for that info :)
$endgroup$
– Dave Benemerito
Jan 27 at 0:09
add a comment |
$begingroup$
Worth noting, but probably won't work with the data rates an IMU will need.
$endgroup$
– Matt Young
Jan 26 at 17:14
4
$begingroup$
@MattYoung: That "IMU" has a max rate of 1.6ksps, it doesn't need any fancy data rates (and sensors that do need high speeds won't be using I2C in the first place)
$endgroup$
– Ben Voigt
Jan 26 at 17:19
$begingroup$
I did consider the internal pullup resistors of the atmega, and after quite of research, I found out that it is not suitable for I2C. Atleast for this chip, it doesnt need any fancy rates. Thanks for that info :)
$endgroup$
– Dave Benemerito
Jan 27 at 0:09
$begingroup$
Worth noting, but probably won't work with the data rates an IMU will need.
$endgroup$
– Matt Young
Jan 26 at 17:14
$begingroup$
Worth noting, but probably won't work with the data rates an IMU will need.
$endgroup$
– Matt Young
Jan 26 at 17:14
4
4
$begingroup$
@MattYoung: That "IMU" has a max rate of 1.6ksps, it doesn't need any fancy data rates (and sensors that do need high speeds won't be using I2C in the first place)
$endgroup$
– Ben Voigt
Jan 26 at 17:19
$begingroup$
@MattYoung: That "IMU" has a max rate of 1.6ksps, it doesn't need any fancy data rates (and sensors that do need high speeds won't be using I2C in the first place)
$endgroup$
– Ben Voigt
Jan 26 at 17:19
$begingroup$
I did consider the internal pullup resistors of the atmega, and after quite of research, I found out that it is not suitable for I2C. Atleast for this chip, it doesnt need any fancy rates. Thanks for that info :)
$endgroup$
– Dave Benemerito
Jan 27 at 0:09
$begingroup$
I did consider the internal pullup resistors of the atmega, and after quite of research, I found out that it is not suitable for I2C. Atleast for this chip, it doesnt need any fancy rates. Thanks for that info :)
$endgroup$
– Dave Benemerito
Jan 27 at 0:09
add a comment |
Thanks for contributing an answer to Electrical Engineering Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2felectronics.stackexchange.com%2fquestions%2f419043%2fhow-to-fix-a-pcb-design-mistake-after-manufacturing%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
3
$begingroup$
Nice work! Fortunately for you we have all done things like this and been through the process of fixing them. I was going to suggest the same thing as @Oldfart. Best of luck to you.
$endgroup$
– Elliot Alderson
Jan 26 at 15:17
10
$begingroup$
Congratulations! Welcome to the land of the bodge! :) (you aren't a real PCB designer until you've broken out the spool of blue wire? XD)
$endgroup$
– ThreePhaseEel
Jan 26 at 15:18
4
$begingroup$
For future projects, I recommend you add extra pads on some of the more important traces, even if they don't get populated, so you can attach wires to them if necessary, and you don't have to worry about soldering a wire onto a pin of a tiny IC package.
$endgroup$
– Hearth
Jan 26 at 15:23
6
$begingroup$
What @Hearth said can be accomplished in most EDA/EDM software by making a test-point component that has one "pin", and then making a footprint for that test point that's just a little surface mount pad. You'll have all these dots all over your board, labeled, that you can use for mods or for connecting scope probes. Chances are high that your tool already has something similar in the libraries.
$endgroup$
– TimWescott
Jan 26 at 16:10
8
$begingroup$
I suggest you get the boards you bought working, even if they don't look all that attractive. Then, if you decide to re-make it you'll be more likely to have found 100% of the problems.
$endgroup$
– Spehro Pefhany
Jan 26 at 17:22