visualapproach/Volvo-melbus

PCB layout

Opened this issue · 43 comments

archi commented

Since I gave up on soldering my CSR8645 into a flying setup, I'm thinking about creating a simple PCB layout. In case more people are interested, I can create a PR once I got around to it.

Also MOQ for most manufacturers is 5 or 10 PCBs; so I'll get some spares I would gladly sent away (without profit; so only my costs/shipping from Germany). Any takers?

//edit:

I just realized the CSR8645 needs an output stage. So I'll get a different bluetooth board. The other parts fit on a normal protoboard - no point in a PCB. I suppose you use a module like this? https://www.aliexpress.com/item/x/32831000187.html

//edit 2:
I'm out of PCBs.

@archi Yes I use a module like that. I think it's still a point in making a PCB though. It would make assembling and soldering everything easier with less risk of letting the smoke out from the components. If you decide to go ahead with this, may I suggest that you make some traces from a couple of free pins on the arduino/Atmel328P so people can connect it to whatever they may come up with. Like a LED driver, or a temp reader or whatever.

I would be interested in a PCB (or a couple), please let me know if you make some.
Also let me know the cost.

archi commented

Hey @johan489, thanks for your interest. Costs are difficult to judge: Sometimes PCB manufacturers have massive discounts for the small boards - sometimes they don't. It might also be worthwhile getting "proper" audio transformers in bulk. The connector (MAWI 80 SNB) seems to be difficult to get (for cheap) here. Other electronics are maybe 2US$ total.

PCB alone: I'd guess 6 Euro shipped to the US.

But this is generally low priority for me: The CSR8645 is still on its way from China, and I have others things that are higher on my TODO. But once I get around to it, I'll publish the design here and order some boards. After that, but before I get my transformers, I'll offer a group buy.

@visualapproach Which ground loop isolator/transformer are you using?
I would have designed the whole thing for use with a normal Arduino and expose some/all pins.

@archi I bought this at the local store. For the only reason that I wanted it quick and that's what they had.

archi commented

Hm, I don't really like what that isolator is doing below 100Hz: https://www.amazon.de/gp/customer-reviews/RTOTR62VRQDAC/ref=cm_cr_arp_d_rvw_ttl?ie=UTF8&ASIN=B003WGQUZ8 (the first image is important).

I only checked mouser, but they have only have one cheap "audio" transformer with an even worse frequency response (https://www.mouser.com/datasheet/2/410/media-346070.pdf, ~4US$), and Hammond studio grade transformers (~100US$, per channel).

I will see if I can eliminate the noise (probably alternator whine) in some other way. In theory the whole thing should be noise free since the CSR board has an "audio ground" which should be floating relative to the car ground. The commercial adapter [yatour] is also noise free, afaik.

edit: also, my CSR is here, and I got those parts you spec'd for the control circuit :)
Maybe I can put something onto the protoboard this weekend.

I'm not qualified to respond to that, other than it suppresses all noise* and the sound quality (including bass) is way better than radio. But wth, try to do it without an isolator and it might be even better.

  • If there was one to begin with. I can't remember now if I ever tried CSR without the isolator. The cheaper BT modules sucked, so it definately needed noise suppression.
archi commented

You should try it without the isolator ;) I connected only the BT module, and no alternator noise, just good sound :)

But I seem to have a broken cable (MELBUS doesn't work) and probably no time this weekend to fix it. This is so annoying, maybe I find a source for ready-to-use cables (e.g. https://www.perakabel.de/din-kabel-lk1-din-stecker-8-polig-270-alle-pins-belegt.html)

archi commented

pcb

I had to put the 4066 on the bottom of the PCB, this allows for a minimal audio path. I also connected the mute button to the unused 4066 port (controlled via D12).

The 2x5 connector goes to the radio (that's what my cable terminates in), I will write up the pinout.

The 12V connector can either be shorted (-> use the 12V run line from the radio) or the marked pin can be connected to the cigarette lighter.

For those who want to use the hands-free mode: The MIC header has Mic- marked.

The bottom row exports the remaining Arduino PINs: 3.3V, AREF, A0 to A6, D5 to D8, D13, RX0, TX1, 5V, GND.

I did not add another NPN for #17 - instead, I think the controller could send pause to the player.

Cool! It will make building it much easier!

archi commented

I uploaded the PCB files to https://github.com/archi/boards/tree/master/car/v1

So, who wants how many (PCB only)?
I suppose I can send them for 2.20 Euro a piece.
Add 4 Euro international shipping as a letter. Maybe I can try to send 2 or 3 for as little as 2 Euro.

If there is a "huge" demand I will order 10, else only 5.

(Edit: As this is the first batch: No warranty that the PCB is good ;-))

If you make a couple of screwholes I can post an STL-file for a case to 3D-print. Would be a nice combo ;-) And I'm interested in a PCB.

archi commented

Good idea. I added some screw holes (diameter: 2mm) and moved the Nano "into" the board.

The BT module is too big to make more space. If I would use a Arduino Pro Micro or SMD parts that should work, but now it's sticking out a fair bit. (oh, I also added 100nF decoupling cap for the IC; I think I have a few to spare).

Regarding height: I did not measure the BT modules voltage regulator, but for C1 I've selected some Panasonic 105degC/8000h/25V type ("Series FR Type A"), which is 15mm tall.

Here are the dimensions for the new layout. Units are mm, and the holes have 2mm diameter.

//Edit: That image is deprecated since I had to move some parts. Wait for the final boards to make measurements!
(Was: https://user-images.githubusercontent.com/152603/45319072-0ff3c080-b53f-11e8-9b7a-aadf300bf832.png)

btw, so we now need 2 PCBs for the two of us. @johan489 How many do you want?

@archi It might be a tight squeeze to fit screwheads. At least in the lower left hole. Maybe I'll do a pin there. Fusion360 was down now and I'm out of town a couple of days, so I'll make a case later this week. Great work!

archi commented

@johan489 I dropped you a mail ;)

@visualapproach no hurry ;-) Regarding your PCB: Can you drop me a mail to volvo.pcb. The domain part is mailhell.seb7.de (take that, spammers!). I will then send you my PayPal.

I'll order the PCBs some time this week.

archi commented

The top right will also need a pin, because it's covered by the BT module.

Maybe I'll rotate T1 90deg ccw to make more space for the top left screw. I think if top left and bottom right are screwed in place with the other two sitting on pins, that should be enough.

(Also, visualapproach, I just sent you an email with my PayPal.me link)

archi commented

PCBs are ordered, I hope to get them next week. T1 is now rotated, and I moved the bottom right screw hole up by 1.27mm (I think). Best if you wait for your PCB so you can make proper measurements before printing a case ;-)

I forgot to add the revision I sent of for printing to my local git tree, but I'll push a slightly modified variant today/tomorrow.

Excellent. I've made a simple clicksnap box design but I wait for PCB before printing or uploading it.

archi commented

The PCBs arrived this morning; and well... snap... the hole diameter of the custom parts is too narrow. So unless you feel like sanding down 60 pins by 30%, these boards are pretty much unusable :(

I fixed the mistake and am preparing to fab a second batch. (I'll be biting the bullet and take the extra cost since I really should have checked that). But other than that, the PCBs look good.

archi commented

Good news, second batch arrived yesterday. I built mine yesterday/this morning and it worked well in my car (at least for my 10 minute morning commute). And that was using the MELBUS 12V run line (the whole module draws about 50mA).

Packages are prepared and contain one PCB for Visualapproach, three for Johan and 2 for J from Australia. I think I should be able to send them by tomorrow morning.

I'll prepare pinout documentation and assembly instruction some time this week.
Only thing I already noticed: Current trunk uses different pins for next/previous than the schematic. Since I sticked to the schematic, the source needs some patching.

I got the PCB in the mail today. Thanks archi. Looks nice. I'll finish a box for it soon.

archi commented

Great! I hope to get around making a visual part list, but for now you can use my notes: https://gist.github.com/archi/d7581d54f2fa9efc86021854bb2a0637

Opened a new issue with a 3d printable case design.

archi commented

I created an image with the part values: https://github.com/archi/boards/blob/master/car/v2/parts.png

This should make it a bit clearer where to put what, and how MELBUS is connected.

@archi I can confirm that the PCB is working.
However the BT module didn't fit. Perhaps you have another version. I am updating the firmware to reflect the new pin numbers and some more.
img_1251

archi commented

Hey, I used the one I linked above - which is this: https://www.aliexpress.com/item/x/32831000187.html
It is a bit wider than yours :( You should check the pin out and see if you can use a simple protoboard as extension. If that's M- and M+, those should fit, as well as Vol+.

untitled

Ok, I soldered pins on one side and jumper cables on the other, just wanted you to know, if you hadn’t tried yet. I see you have a socker on the 4066. The box is not designed for that but i have to amend it anyway so I’ll fix that.

archi commented

At some point I decided that prototypes will have sockets on everything, so I can measure power/signal prior to frying the IC ;-)

aww please upload pbc with correct hole diameter, I didint know that is not fixed and Im now need re drill that holes :/

@archi Is it still possible to get PCB's from you?

archi commented

@Maxima666, sorry, but I'm out of PCBs.

@archi Perhaps we should post the zipped gerber files so people can order new ones.

archi commented

I think I have them somewhere and can upload them if I don't forget it over the workday. The problem is that those gerber files were prepared for AllPCB (I think ^^") and they might or might not be suited for other manufacturers.

@Maxima666 i would also be interested in getting a PCB, maybe we can order them together
@archi did you have any luck finding the gerber files?

I did an order at AISLER with archi's v2 .brd file from his repo. Due to the fact i must order 3 pcs at minimum, i will have 2 pcs in reserve. As soon as they are delivered i will equip them (not soldered) and are willing to give em away for cost price (calc is following) + p&p (depends on dest). If someone is interested please let me know.

I have build 3 boards. Works flawless with the BT module (CSR8645 APTx with 12V DC isolation)! Due to the fact i only bought 1 BT module for me, i assembled the other to boards to be ready-to-use except the BT module so it is the only thing that has to be added. All boards are tested. I someone is interested please let me know

I would only calculate the materials and that would be 16 EUR + p&p depending on destination. The board is ready soldered and equipped with an ELEGOO Arduino Nano V3 except the bluetooth module which you have to buy on your own. I used this bt module: https://www.amazon.de/gp/product/B07MQSWCV6. If you wish i would preset the Arduino with the v2 software. So after adding the bt module the board would be functional instantly. Furthermore you have to solder your own 8pin cable if you like to connect the board that way. To keep wires short i decided to implement the board without the cable directly into the radio.

@archie @visualapproach the BOM (https://github.com/archi/boards/blob/master/car/v2/partlist.txt) states 12V regulator on BT, but the schematics (https://github.com/archi/boards/blob/master/car/v2/v1.sch) looks like BT module gets the same VCC as Arduino Nano - which is 5V. Am I missing something, or should I buy 5V regulated BT module instead?

thanks in advance

@archie @visualapproach the BOM (https://github.com/archi/boards/blob/master/car/v2/partlist.txt) states 12V regulator on BT, but the schematics (https://github.com/archi/boards/blob/master/car/v2/v1.sch) looks like BT module gets the same VCC as Arduino Nano - which is 5V. Am I missing something, or should I buy 5V regulated BT module instead?

thanks in advance

Arduino VIN is 12V tolerant.