Author Topic: My first ARM/LPC design, critic requested.  (Read 20287 times)

0 Members and 1 Guest are viewing this topic.

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
My first ARM/LPC design, critic requested.
« on: October 08, 2014, 04:44:31 am »
I am switching from atmega328p to NPX LPC11u35 as my generic MCU. As a sanity check I am designing a general purpose prototype PCB that will be the base for my application specific PCBs. Attached below are a low resolution image and a PDF with the schematic. Do you any problem? Would you change it in anyway?  Anything I can drop (the design is supposed to be minimal).  BTW, I created manually the MCU symbol so should not be trusted. 

The optional portions in the diagram are for USB connectivity (with and without a debugger), debugger port, and external power.  I will debug it with an LPCXpresson Link 1 board.


https://www.eevblog.com/forum/microcontrollers/my-first-armlpc-design-please-critic/?action=dlattach;attach=112199




Thanks,
zapta

« Last Edit: October 08, 2014, 04:51:37 am by zapta »
Drain the swamp.
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 18331
  • Country: nl
    • NCT Developments
Re: My first ARM/LPC design, critic requested.
« Reply #1 on: October 08, 2014, 09:28:57 am »
I see no real problems. Just be sure you checked the pins twice. BTW I never use an extra FET to pull the 1.5k resistor up. I connect it to a microcontroller pin directly.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 5751
  • Country: nl
Re: My first ARM/LPC design, critic requested.
« Reply #2 on: October 08, 2014, 12:46:33 pm »
no expert on these lpc chips but just a few thoughts:
1) are you sure 100nF decoupling is enough on the Vcc pins of the micro?
I mean even an 8 bit STM8s wants 2u locally on its powersupply pins. In my limited experience, too low local decoupling of a microcontroller can cause stability issues when using it's GPIO's to source current (sinking is usually ok).

2) the reset circuit of a micro usually has some delay in the form of a RC , maybe i missed it but i can see only the pullup resistor?
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 18331
  • Country: nl
    • NCT Developments
Re: My first ARM/LPC design, critic requested.
« Reply #3 on: October 08, 2014, 01:20:18 pm »
This chip has internal POR.

Edit: more capacitance wouldn't hurt. I usually have 1uf 0603 on one VDD pin and 100nf 0603 on the other.
« Last Edit: October 08, 2014, 01:54:27 pm by nctnico »
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #4 on: October 08, 2014, 01:35:41 pm »
Being a fan of minimum configurations I think the FET, reset PU, and additional bypass caps are not required. Playing around with no bypass on LPC812 tells me the internal regulator and silicon bypass are doing a good job but probably foolish to not use at least one 100nf. I have to laugh at some of the complicated and unnecessary reset circuits people attach to modern chips like PIC/AVR. Most of this comes from 1980s mindset when internal reset timers were rare. Of course the other side is it's easy to leave off components that are not required but harder to install them if there's no pads.

From noise immunity lab testing it also seems tying reset high can be a big mistake. Much worse than leaving it open.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #5 on: October 08, 2014, 02:45:42 pm »
I see no real problems. Just be sure you checked the pins twice. BTW I never use an extra FET to pull the 1.5k resistor up. I connect it to a microcontroller pin directly.

The datasheet says that if the MCU is not USB powered, the transistor is required. I plan to experiment with it more. Also considering having connecting the resistor to a PIO output that have the inverted state of the CONNECT output (e.g. a periodic IRQ that reads the CONNECT pin and writes the not/state to the new pin). This may save a transistor and a few resistors.


1) are you sure 100nF decoupling is enough on the Vcc pins of the micro?
I mean even an 8 bit STM8s wants 2u locally on its powersupply pins. In my limited experience, too low local decoupling of a microcontroller can cause stability issues when using it's GPIO's to source current (sinking is usually ok).

I am not sure. Where can I find information? I saw the same combination of 0.01 and 0.1 caps in a Embedded Artists board.  Also, should I look for a specific kind of capacitors?  (I plan to have 0402 size).


2) the reset circuit of a micro usually has some delay in the form of a RC , maybe i missed it but i can see only the pullup resistor?

The pullup resistor is on the upper right corner. Do I need it? The datasheet says that reset can be left unconnected in some conditions.

I saw an example of an Embeded Artists board where they had a MIC6315 between the button and the LPC11U35. Not sure why they need it, maybe debouncing the reset button?  I went with a minimal approach I also used with atmega328p.


Being a fan of minimum configurations I think the FET, reset PU, and additional bypass caps are not required. Playing around with no bypass on LPC812 tells me the internal regulator and silicon bypass are doing a good job but probably foolish to not use at least one 100nf. I have to laugh at some of the complicated and unnecessary reset circuits people attach to modern chips like PIC/AVR. Most of this comes from 1980s mindset when internal reset timers were rare. Of course the other side is it's easy to leave off components that are not required but harder to install them if there's no pads.

My goal is to have minimal but realistic design that I can use for real applications. Not a theoretical minimal in lab conditions.

The FET *may* be required if the board is powered by external power, not sure. If it's powered from USB then it connects upon reset and everything is fine. If it's already running by external power, I guess it's need to connect as soon as it detects VBUS. Also, if you use the reset pin, I think it will not reconnect if the resistor is permanently connected. I need to experiment with it more.

From noise immunity lab testing it also seems tying reset high can be a big mistake. Much worse than leaving it open.

Can you explain?  Is it sufficient, for real world designs, to just have the reset button without the pull-up resistor?
Drain the swamp.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #6 on: October 08, 2014, 02:57:42 pm »
BTW, I am also developing a companion library with basic functionalities  (all required libraries are in a single lpcxpresso project for easy installation). The hello world is here

https://github.com/zapta/arm/blob/master/lpcxpresso/hello_world/src/main.cpp
Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #7 on: October 08, 2014, 03:36:29 pm »
Can you explain?  Is it sufficient, for real world designs, to just have the reset button without the pull-up resistor?

From what I can tell majority of "real world" designs do not have a reset button. In any case if there is one and even if located feet or meters away a 10k pullup will make little difference. However in that situation a cap might help.

But to answer your question maybe 12-15 years ago a client who built welding equipment was having trouble with intermittent resets on an Atmel 90s8515 based product he designed. After spending thousands trying to solve the problem he hired me in desperation (had to be desperate to stoop that low, LOL).

At great expense high end HP microwave pulse and spectrum analysis equipment were rented but really the most effective tool was a homegrown spark chamber. Lots of research on electromagnetic induction vs electrostatic etc.. It was amazing how strange and elusive that reset sensitivity was. Finally after trying many circuit and shielding configurations the best solution turned out to be cutting pin one off the MCU. Resets still occurred but orders of magnitude less than with IC, R, C, or RC add-ons and deemed acceptable for his situation. Tying directly to VCC was about an order of magnitude worse than the RC stuff. Maybe not so much ground loop issues but more like "VCC loop".

Many years later Atmel replaced the part with ATMEGA8515 version and the problem went away almost entirely. Similar issues with 90s1200 back then but almost non-existent with newer MEGA8, MEGA328, and TINY series. So bottom line, I am convinced no circuit is the best circuit for AVR parts and probably PIC too. Maybe not obvious to those from the days of Z80 and 8051 but it looks to me like modern chips benefit greatly from those internal reset timers.

So like I hinted if a circuit is fully exposed (NOT recommended for "real world" designs) and you are worried about careless poking with screwdriver or finger then a cap will help. Not so much the 10k pull up which isn't that different compared to the internal 30k.

BTW in some of my "lab" experiments poking with a finger or tool to reset turns out to be very convenient. Not something I would recommend for commercial designs though. :)
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #8 on: October 08, 2014, 04:21:08 pm »
So like I hinted if a circuit is fully exposed (NOT recommended for "real world" designs) and you are worried about careless poking with screwdriver or finger then a cap will help. Not so much the 10k pull up which isn't that different compared to the internal 30k.

Thanks paulie. The reset button is only for development configuration so the reset resistor may be redundant. I will try it with my test board and will make it optional (according to the datasheet it is required for low power applications that use standby mode).

What do you think about the MCU bypass capacitors, would would be a solid 'real world' configuration?
Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #9 on: October 08, 2014, 05:08:43 pm »
I don't have direct experience with LPC11u35 but after recently doing a lot of testing with LPC812 and others a single 100nf looks good to me. In any case 10uf and 22uf chip caps are available in same package. When a new chip arrives the first thing I try is to see if it runs without any bypass at all. I even have a few different lengths of cables to power from my 5v/3v supply (USB/serial dongle). One of the things I liked about LPC was they ran fine with no bypass unlike STM and PSOC. It's silly to run without any cap at all but these experiments do sometimes give an indication of the limits.

Another thing that was nice was having all bits on one port instead of scattered and also the serial bootloader. The virtual drive thing sounds very attractive too so I'm curious how that works out for you. Even though they are not within my original one dollar range these advantages over the cheapies do temp me.

 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #10 on: October 08, 2014, 05:58:40 pm »
I don't have direct experience with LPC11u35 but after recently doing a lot of testing with LPC812 and others a single 100nf looks good to me. In any case 10uf and 22uf chip caps are available in same package. When a new chip arrives the first thing I try is to see if it runs without any bypass at all. I even have a few different lengths of cables to power from my 5v/3v supply (USB/serial dongle). One of the things I liked about LPC was they ran fine with no bypass unlike STM and PSOC. It's silly to run without any cap at all but these experiments do sometimes give an indication of the limits.

Another thing that was nice was having all bits on one port instead of scattered and also the serial bootloader. The virtual drive thing sounds very attractive too so I'm curious how that works out for you. Even though they are not within my original one dollar range these advantages over the cheapies do temp me.

Just checked this appnote and it suggests to start with 0.1uf so I think I will drop the 0.01uf.  That's also what I had with the atmega328p (16Mhz crystal and internal speed).

As for the USB loader, it works very well and useful for firmware upgrade by users. After you create the axf file, you run another utility that creates the (signed?) binary. Then you plug the board to the USB port while pressing the ISP button. This causes a standard drive with one file (the current firmware) to appear on your computer. You copy the binary file to that drive (the file name doesn't matter as far as I can tell) and you are done. No tools, special cables, no software required by the user.  Since you are using command line scripts, you can just automate the entire process.

I can send you a populated board once they will be ready.
Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #11 on: October 08, 2014, 07:12:40 pm »
I can send you a populated board once they will be ready.

I was going to ask about getting a blank PCB but if you have extra chips it would be very exciting to get one pnp. I would insist on compensating for parts and shipping. I suspect it would be a bargain compared to those $50 development boards on Ebay. Are you planning on OSH or Seeed studio or the like?

It didn't occur to me until now that the virtual disk would use binary. Being an ARM s19/hex fanboy so far and not having dealt with true binary yet I'm not sure about that AXF business. Keil wants personal info and registration before download which annoys me. Do you know if GCC can produce AXF or any other type of file that is compatible? It seems to do a good job of compiling for that chip. How about conversion utilities?
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #12 on: October 08, 2014, 07:32:44 pm »
I was going to ask about getting a blank PCB but if you have extra chips it would be very exciting to get one pnp. I would insist on compensating for parts and shipping. I suspect it would be a bargain compared to those $50 development boards on Ebay. Are you planning on OSH or Seeed studio or the like?

It didn't occur to me until now that the virtual disk would use binary. Being an ARM s19/hex fanboy so far and not having dealt with true binary yet I'm not sure about that AXF business. Keil wants personal info and registration before download which annoys me. Do you know if GCC can produce AXF or any other type of file that is compatible? It seems to do a good job of compiling for that chip. How about conversion utilities?

Will let you know when it will be ready (no problem sending a populated one). Everything I am doing is open source but I have no plan on selling it in any way. People can later take the eagle files modify them to do useful stuff.

I suggest to install the LPCXpresso IDE. It installs all the tools you need (compiler, linker, axf to binary, etc). Create a simple project and build it. Then use the makefiles it generated to see what was actually going on and then cut your own optimized minimal scripts. The IDE is very handy in this regard, I can build the entire project using a simple make command.
Drain the swamp.
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 5751
  • Country: nl
Re: My first ARM/LPC design, critic requested.
« Reply #13 on: October 08, 2014, 08:16:48 pm »
I am not sure. Where can I find information? I saw the same combination of 0.01 and 0.1 caps in a Embedded Artists board.  Also, should I look for a specific kind of capacitors?  (I plan to have 0402 size). 
Strange normally this information is in the datasheet or usermanual but I am also unable to find it with a quick scan, a whole chapter on the oscillator capacitor requirements but nothing on the Vdd decoupling, strange.

Personally (but every engineer has its own thoughts) I would stick for capacitors with 0805 or 0603 and keep the voltage much higher then the operating voltage due to the capacitance  degrading over voltage variation.
Dave did a fundamentals friday on this recently and here is also some info:
http://www.maximintegrated.com/en/app-notes/index.mvp/id/5527
So I would use 16V or 25V smd capacitors if you stick with the 100nF value just to be sure. If you go higher with the capacitance you can lower the voltage, check the datasheet of the capacitor.
 

Offline SirNick

  • Frequent Contributor
  • **
  • Posts: 589
Re: My first ARM/LPC design, critic requested.
« Reply #14 on: October 09, 2014, 11:08:18 pm »
No pull-up on ISP En?
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 18331
  • Country: nl
    • NCT Developments
Re: My first ARM/LPC design, critic requested.
« Reply #15 on: October 10, 2014, 01:26:50 am »
I usually put a pull-up on that pin out of habbit from the but the Cortex Mx devices from NXP all seem to have pull-ups enabled on all pins by default. At least I haven't come across one where that was different.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #16 on: October 10, 2014, 05:13:38 am »
No pull-up on ISP En?

I am looking at the EA lpc11u35 board which is a semi official Dev board. It doesn't have a pull up, just a 2k series resistor which I presume to protect pio0_1 if used as an output.
Drain the swamp.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #17 on: October 10, 2014, 05:16:32 am »
I usually put a pull-up on that pin out of habbit from the but the Cortex Mx devices from NXP all seem to have pull-ups enabled on all pins by default. At least I haven't come across one where that was different.

Is it safe to remove the reset pull up resistor?
Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #18 on: October 10, 2014, 05:43:05 am »
Maybe not all pins have default PU. My LPC812 running an endless loop has P0_10 & P0_11 floating. Also might be a good idea to put one on reset if the spec sheet says some sleep modes require it. I tried some sleep modes and it was pulled up internally but maybe not all modes were tried. Even 0603 or 0805 don't take up much space and they cost almost nothing. Like I said before it's easy to leave unpopulated but hard to solder to pads that ain't there.
 

Offline Brutte

  • Frequent Contributor
  • **
  • Posts: 610
Re: My first ARM/LPC design, critic requested.
« Reply #19 on: October 10, 2014, 05:45:38 am »
all required libraries are in a single lpcxpresso project for easy installation). The hello world is here
Ok, so there is another
thing you should be LPC-aware of*
7. LPCXpresso uses project format that is incompatible with Eclipse GNU ARM plugin.
 

Offline Jeroen3

  • Super Contributor
  • ***
  • Posts: 3385
  • Country: nl
  • Embedded Engineer
    • jeroen3.nl
Re: My first ARM/LPC design, critic requested.
« Reply #20 on: October 10, 2014, 05:56:07 am »
Is it safe to remove the reset pull up resistor?
Don't poke the emc devil if you do not have to. For energy saving purposes pullups up to 47k are safe. Above is risky.

Don't remove the usb pullup transistor. It is required to re-enumerate the USB bus after DFU is complete. And since the chip has startup time it is also used to not enable the usb bus until the chip is ready. To prevent failed enumerations.
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 18331
  • Country: nl
    • NCT Developments
Re: My first ARM/LPC design, critic requested.
« Reply #21 on: October 10, 2014, 11:01:04 am »
I usually put a pull-up on that pin out of habbit from the but the Cortex Mx devices from NXP all seem to have pull-ups enabled on all pins by default. At least I haven't come across one where that was different.
Is it safe to remove the reset pull up resistor?
I wouldn't do that. Like Jeroen3 wrote: you may get problems with EMC susceptibility. You can always choose not to place the resistor.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #22 on: October 10, 2014, 09:08:42 pm »
Don't remove the usb pullup transistor. It is required to re-enumerate the USB bus after DFU is complete. And since the chip has startup time it is also used to not enable the usb bus until the chip is ready. To prevent failed enumerations.

The datasheet suggests not to use the transistor for USB power boards.



By DFU, do you mean the USB ISP functionality (that simulated disk drive with the binary image)? I shouldn't be too much trouble for users reconnecting the board after updating the firmware (for debugging I do plan to have it, along with a SWD debugger).  Does this make sense?
Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #23 on: October 10, 2014, 09:23:53 pm »
I can't be sure but don't think that transistor is required for virtual disk operation. Both my Ebay minimum blue and Discovery type  boards only have a jumper to enable the enumeration resistor. They always come up as a disk when it's installed and don't when it's not. My TFT touch super STM development module has an FET there but looking at the gate on a scope the signal never changes.

I'm not a USB expert but Jeroen3s explanation that it's only needed for exceptions makes sense. Not to sound like a stuck record but since we don't know exactly what's going on inside that bootloader probably safer to include questionable components because they can always be left unpopulated.
 

Offline SirNick

  • Frequent Contributor
  • **
  • Posts: 589
Re: My first ARM/LPC design, critic requested.
« Reply #24 on: October 10, 2014, 09:36:46 pm »
Ultimately, there's no difference between a transistor controlled by a SoftConnect pin, and using the SoftConnect pin as the FET pull-up directly.... when the MCU is in a known state.  But, the reason I advocate for external pull-ups and the SC FET is due to the window where the MCU doesn't yet have its wits, but may be electrically present on the USB bus, or subject to external influence in the case of the ISP / reset pull-ups.  Resistors are just so cheap...  :)

Not at all definitive, of course, just my 2c for what it's worth.

As for the bootloader USB disk mode, it would have to announce its presence on the bus somehow.  Might be interesting to see what the DP and DN pins are doing in those cases, if indeed the SC pin isn't involved.
 

Offline Jeroen3

  • Super Contributor
  • ***
  • Posts: 3385
  • Country: nl
  • Embedded Engineer
    • jeroen3.nl
Re: My first ARM/LPC design, critic requested.
« Reply #25 on: October 10, 2014, 09:49:54 pm »
Read here: http://learnembedded.blogspot.nl/2009/11/embedded-artists-lpc-2148-usb.html

USB powered applications require a FET if the application can use more than one unit load. A unit load is 100 mA.
If your application requires the full 500 mA available on standard ports, the chip must ask for it. And if it's allowed it can safely turn on the heavier loads.
Strictly implemented hosts might even turn off the power to a downstream port when the device is using more than the assigned unit loads.
This is actually very rare since the "sleep" state power usage of USB devices is also limited to a few mA. Overload protection isn't that rare, but often cheaped away.
But with bus-powered USB hubs this is a trap to be aware of, since all nested devices share a single downstream port.
That is also why smartphones don't charge on USB ports where the host does not enumerate. Unless there is a specific voltage on d- and d+ like the chargers do.
 

Online westfw

  • Super Contributor
  • ***
  • Posts: 3111
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #26 on: October 10, 2014, 10:44:15 pm »
Quote
If your application requires the full 500 mA available on standard ports, the chip must ask for it.
That would be a lot more believable if I'd ever seen a USB host actually implement it.
Instead, there are any number of devices (chargers, fans, CUP WARMERS!) that happily draw 100mA without even containing the intelligence needed to "request" full power.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #27 on: October 10, 2014, 10:49:56 pm »
USB ports on my desktop and netbook are a main source of power for nearly all my 5v and 3.3v projects. Many like serial WIFI modules and TFT displays suck 300-400ma or more no problem just using the outside pins. With direct short I will get an XP popup warning. Like with many things there does seem to be quite a gap between theory and practice.
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 18331
  • Country: nl
    • NCT Developments
Re: My first ARM/LPC design, critic requested.
« Reply #28 on: October 10, 2014, 11:54:02 pm »
That depends very much on the implementation of the USB port. Some ports are limited to 100mA unless the device has negiotiated more current. Other ports are just limited to a guaranteed 500mA current.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline SirNick

  • Frequent Contributor
  • **
  • Posts: 589
Re: My first ARM/LPC design, critic requested.
« Reply #29 on: October 10, 2014, 11:56:59 pm »
Like with many things there does seem to be quite a gap between theory and practice.

Yep, because the theory is close to unreasonable.  You basically need a USB controller IC that can selectively disable the PSU to everything else in the product to comply with the sleep current draw requirements.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #30 on: October 12, 2014, 11:14:54 pm »
Just completed the layout. It's a 0.5mm pitch IC with full ground tab below so fanout was a struggle but the Eagle auto router helped.

https://github.com/zapta/arm/blob/master/eagle/ezlpc-proto-board.pdf?raw=true



Parts will arrive from Digikey in a few days. I will verify the footprints and will send the gerbers out.

Drain the swamp.
 

Offline Jeroen3

  • Super Contributor
  • ***
  • Posts: 3385
  • Country: nl
  • Embedded Engineer
    • jeroen3.nl
Re: My first ARM/LPC design, critic requested.
« Reply #31 on: October 13, 2014, 05:11:08 pm »
Your SWD cable will need to go over the buttons since the notch (uneven side) is most often found at the opposite side of the cable at an IDC plug.
The assembler house might reject your pcb if you put untented via's too close to your pads (see U1).
I'm also not seeing any large tantalums of at least 4u7. (they come in 1210) Neither a ferrite, which you will need for clean USB powered analogs.

All other placing and routing looks acceptable. Hope it works first try  ;)
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 18331
  • Country: nl
    • NCT Developments
Re: My first ARM/LPC design, critic requested.
« Reply #32 on: October 13, 2014, 07:11:23 pm »
I would have optimised the schematic more so the bottom could have a solid ground plane. I don't know the via size but I think they can be made smaller. I would have routed this board manually for maximum ground plane coverage.
« Last Edit: October 13, 2014, 07:13:34 pm by nctnico »
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #33 on: October 13, 2014, 07:35:58 pm »
Actually that board is almost exactly the one I would have done if that chip were my target. Pro-mini-ARM! Zapta, do you have an estimate for parts cost yet? Did you use OSH? Not only are they fastest turn around but lowest cost in USA. I think even cheaper if you choose open design on his site which allows others to order direct.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #34 on: October 13, 2014, 09:32:11 pm »
Your SWD cable will need to go over the buttons since the notch (uneven side) is most often found at the opposite side of the cable at an IDC plug.

I will check it again. I am using an NXP Link 1 debugger and I designed this orientation to be natural when using this board on a solderless breadboard.

The assembler house might reject your pcb if you put untented via's too close to your pads (see U1).

These vias are covered with solder mask. Does answer this concern? If not, what should be the clearance for same and for different signal vias?  (BTW, the assembler house is me).

I'm also not seeing any large tantalums of at least 4u7. (they come in 1210) Neither a ferrite, which you will need for clean USB powered analogs.

I am going after an example from Embedded Artists (semi official NXP  board).  They use non polarized 2.2u on both sides of the LDO and 0.1u + 0.01u on each of the two VDD pins (I left one capacitor per VDD pin).

As for the  frrite, the sample board had one on the USB +5V but I dropped it for simplicity. This is a hobby project, no need compliance, just working well in practical scenarios.

 Is it good enough?

All other placing and routing looks acceptable. Hope it works first try  ;)

My boards typically do, will see about this one ;-)



Drain the swamp.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #35 on: October 13, 2014, 09:45:56 pm »
Actually that board is almost exactly the one I would have done if that chip were my target. Pro-mini-ARM! Zapta, do you have an estimate for parts cost yet? Did you use OSH? Not only are they fastest turn around but lowest cost in USA. I think even cheaper if you choose open design on his site which allows others to order direct.

Hi Paulie, Haven't decide yet if to send the prototypes to elecrow (1mm, HASL, with metal stencil) or oshpark (1.6mm, ENIG, plastic stencil from oshstencils.com).  In any case, I am working against a public repository so all the files are available https://github.com/zapta/arm

I ordered parts for three boards. Will be able to send you one assembled or just the PCB, as you prefer. Hopefully you will find it useful and will be able to improve on it (hardware and software).  The main component is the 568-9586-ND,  $4.54 single, $2.27 at 1k.  I didn't try to optimize cost too much.  This is a non commercial project for me and people are free to do with it whatever they want.

BTW, one goal of this project is to make the entire process of developing a custom app simple. It include a single LPCXpresso project with all the necessary libraries so installation should be a breeze (and OS agnostic).    This is the current hello world + blinky https://github.com/zapta/arm/blob/master/lpcxpresso/hello_world/src/main.cpp  , it is outlined after the Arduino setup/loop model and include a non blocking delay using the passive_timer class.

Drain the swamp.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #36 on: October 14, 2014, 03:26:10 am »
Actually that board is almost exactly the one I would have done if that chip were my target. Pro-mini-ARM! Zapta, do you have an estimate for parts cost yet?

I may adopt that name, ARM Pro Mini  ;-)  Currently I call it ezLPC.

Just uploaded the BOM here

https://github.com/zapta/arm/blob/master/eagle/ezlpc-proto-bom.pdf?raw=true

I harmonized resistor values as much as possible. Some parts can have less expensive versions, for example the LDO.
Drain the swamp.
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 18331
  • Country: nl
    • NCT Developments
Re: My first ARM/LPC design, critic requested.
« Reply #37 on: October 14, 2014, 10:14:48 am »
I'm also not seeing any large tantalums of at least 4u7.
Please no tantalums. Just use X5R or X7R MLCC for such capacitances.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #38 on: October 14, 2014, 10:34:49 am »
Will be able to send you one assembled or just the PCB, as you prefer.

Actually I'm inclined toward something in between. Board with chip only would allow me to experiment with minimum parts count by progressively installing components. I.E. the regulator and associated components not required because virtually all my supplies are 3.3v these days. I'd also like to experiment to see what parts of the USB circuit are really needed along with many of the caps including crystal and bypass.

BTW there don't seem to be any Gerbers in your repository. Many who don't run Eagle including Kicad users like me are left out in the cold. Another reason OSHs open file deal might be a good choice. That and your board would only cost about a buck or two.

Solder template? Real Men use toothpick and hair dryer. :)
 

Offline Jeroen3

  • Super Contributor
  • ***
  • Posts: 3385
  • Country: nl
  • Embedded Engineer
    • jeroen3.nl
Re: My first ARM/LPC design, critic requested.
« Reply #39 on: October 14, 2014, 11:46:28 am »
Please no tantalums. Just use X5R or X7R MLCC for such capacitances.
Do you have any motivation with that? Since tantalums are a nice compromise between size of electrolytic and the price of ceramic.
And since you must consider USB the most dirty (noise!) source with a voltage between 4.5 and 5.5 a 2.2 uF cap might be a bit low-ish.
But hey, it's a devboard...
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #40 on: October 14, 2014, 11:58:36 am »
From what I can tell tantalums are a holdover from the days of aluminum cans, half watt resistors, and ceramic disk. Back when monolithics were through hole and SMD strange and fearful territory. I've noticed that for small circuits like modern RC speed controllers and Adruino modules the tantalums are disappearing in favor of cheaper, smaller, and lower ESR "chip" capacitors. Again hit counts on Ebay are a hint for component popularity and availability.

Not to mention a major cause of infant mortality is polarized caps installed backwards. Not a problem with monolithics.
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 5751
  • Country: nl
Re: My first ARM/LPC design, critic requested.
« Reply #41 on: October 14, 2014, 12:16:56 pm »
AFAIK tantalums have their bad reputation from their old predecessors that had a tendency to explode and have limited life.
The present generation tantalums are pretty good AFAIK and I see them often in quality A brand products, so wonder why they would do that?
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #42 on: October 14, 2014, 12:20:56 pm »
So your theory is the new tantalums work OK when installed backwards? This conflicts with my own recent personal experience.

I'm not sure about "A brand" products because gullible is not my middle name but the other 99% out there are switching over.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #43 on: October 14, 2014, 03:55:34 pm »
Will be able to send you one assembled or just the PCB, as you prefer.

Actually I'm inclined toward something in between. Board with chip only would allow me to experiment with minimum parts count by progressively installing components. I.E. the regulator and associated components not required because virtually all my supplies are 3.3v these days. I'd also like to experiment to see what parts of the USB circuit are really needed along with many of the caps including crystal and bypass.

BTW there don't seem to be any Gerbers in your repository. Many who don't run Eagle including Kicad users like me are left out in the cold. Another reason OSHs open file deal might be a good choice. That and your board would only cost about a buck or two.

Solder template? Real Men use toothpick and hair dryer. :)

I renamed the board to arm-mini-pro, thanks for the suggestion.  Also rotated the SWD connector (thanks  jeroen3).   Files are here

https://github.com/zapta/arm/tree/master/mini-pro/eagle

Will generate gerbers once I verify the footprints with actual components (ordered from Digikey).  BTW, OSHpark accepts eagle files directly and I often use it to view the file during layout.

Once it works I can send you a board with any combination of populated and populated components you like. It may be easier to remove components that adding them.  Also, since I ordered spares just in case, there is no real cost for me.
Drain the swamp.
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 5751
  • Country: nl
Re: My first ARM/LPC design, critic requested.
« Reply #44 on: October 14, 2014, 04:29:58 pm »
So your theory is the new tantalums work OK when installed backwards?
Duh, Ofcourse not that is not what I wrote. Neither do any other polarized capacitors like elco,s by the way  |O .
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #45 on: October 14, 2014, 04:45:02 pm »
Ooops... Sorry.I thought you were replying to my comment about backwards:

tantalums have their bad reputation from their old predecessors that had a tendency to explode and have limited life.

Now I see you just meant they used to do that on their own which is true. The technology did get much better with time and there was much less tendency to do that. Now they only explode and have limited life when reversed. Actually they just tend to get hot, crack, and sometimes glow. But I would personally avoid them in favor of the ceramic chips just for cost and better noise suppression anyway.

Also worth mentioning that you can get more capacitance in smaller space with chip caps. I just purchased several reels of 22uf chips in 0603 for a client. That's TWENTY TWO MICROFARADS, not 2.2! What tiny little buggers and less than 2 cents per.

 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 5751
  • Country: nl
Re: My first ARM/LPC design, critic requested.
« Reply #46 on: October 14, 2014, 05:49:18 pm »
Also worth mentioning that you can get more capacitance in smaller space with chip caps. I just purchased several reels of 22uf chips in 0603 for a client. That's TWENTY TWO MICROFARADS, not 2.2! What tiny little buggers and less than 2 cents per.
True just remember that mcc have that nasty voltage derating, so that a 2u2/6V3 mcc can have only 30% of that capacitance left at 5V, so you have to use a 2u2/16V or even 25V for it.
But I agree that mcc are the way to go esp. low capacitance (<=10uF).
Where I still sometimes use a tantalum is if I have very little room and still need high value capacitor for instance I have here 470uF/6V3 which have a 6x4mm SMD enclosure, I find that a very good uF/volume deal.
« Last Edit: October 14, 2014, 08:40:12 pm by Kjelt »
 

Offline SirNick

  • Frequent Contributor
  • **
  • Posts: 589
Re: My first ARM/LPC design, critic requested.
« Reply #47 on: October 14, 2014, 08:38:17 pm »
I'm finding it hard to justify tantalums.  I looked at prices for input-side filter caps on a quickie design I did last weekend.  ~$1.20 in single quantity for a 22uF 35v MLCC in a 1210 package.  Somewhere in the $4 range for a bigger tantalum-polymer at the same capacity, and equivalent working voltage.  Of course they both get much cheaper at lower voltages, but this is pre-regulator, where I want to be as lenient as possible.  (I ended up settling for 22uF 25v MLCC, which was half the cost.)

When it gets too pricey to fit a MLCC, I just go directly to electrolytic.  I'm a little put off by tantalum temper tantrums WRT reflow solder damage and applied voltage thereafter.  At least when a 'lytic fails, it pops and makes confetti, rather than bursting into flame.  IIRC, the polymer variety aren't supposed to be quite as violent though.
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 18331
  • Country: nl
    • NCT Developments
Re: My first ARM/LPC design, critic requested.
« Reply #48 on: October 14, 2014, 09:58:50 pm »
AFAIK tantalums have their bad reputation from their old predecessors that had a tendency to explode and have limited life.
The present generation tantalums are pretty good AFAIK and I see them often in quality A brand products, so wonder why they would do that?
Tantalums will still explode when mounted in reverse. And yes that happens even in an automated process. Another problem with tantalums is that you need to control the current slew rate into them. If the slew rate is too high they might go off. A tantalum is basically a thermite lance/bomb because they consist of a fuel and an oxidizer. If they go off they can burn right through a PCB making it necessary to replace the entire PCB.

Besides that MLCC is cheaper nowadays and has a much lower ESR. So why bother with tantalums. The only reason to use a tantalum is when you need a relatively large capacitance for which there is no MLCC alternative. Another reason could be that you need a slightly higher ESR due to a regulator not being stable with MLCC capacitors. Still the strong influence of voltage on capacitance makes it tricky to select the proper MLCC. The capacitance is usually highly overrated.

Bottom line: I never use tantalums in my designs unless there is no alternative.
« Last Edit: October 14, 2014, 10:04:00 pm by nctnico »
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #49 on: October 14, 2014, 10:28:26 pm »
Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #50 on: October 14, 2014, 10:52:25 pm »
Quote
Coltan is used to make pinhead capacitors

I wonder if that is a reference to their size or to the engineers who choose to incorporate them into designs. :)
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 18331
  • Country: nl
    • NCT Developments
Re: My first ARM/LPC design, critic requested.
« Reply #51 on: October 14, 2014, 11:36:50 pm »
Tantalum are blood capacitors
http://news.bbc.co.uk/2/hi/africa/1468772.stm
Not only that but in order to mine Coltan the people cut forrests which provide shelter for many endangered species.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 5751
  • Country: nl
Re: My first ARM/LPC design, critic requested.
« Reply #52 on: October 15, 2014, 08:06:36 am »
AFAIK tantalums have their bad reputation from their old predecessors that had a tendency to explode and have limited life.
The present generation tantalums are pretty good AFAIK and I see them often in quality A brand products, so wonder why they would do that?
Tantalums will still explode when mounted in reverse. And yes that happens even in an automated process. Another problem with tantalums is that you need to control the current slew rate into them. If the slew rate is too high they might go off. A tantalum is basically a thermite lance/bomb because they consist of a fuel and an oxidizer. If they go off they can burn right through a PCB making it necessary to replace the entire PCB.

Besides that MLCC is cheaper nowadays and has a much lower ESR. So why bother with tantalums. The only reason to use a tantalum is when you need a relatively large capacitance for which there is no MLCC alternative. Another reason could be that you need a slightly higher ESR due to a regulator not being stable with MLCC capacitors. Still the strong influence of voltage on capacitance makes it tricky to select the proper MLCC. The capacitance is usually highly overrated.

Bottom line: I never use tantalums in my designs unless there is no alternative.
you repeated almost my entire posting.
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 18331
  • Country: nl
    • NCT Developments
Re: My first ARM/LPC design, critic requested.
« Reply #53 on: October 15, 2014, 11:00:01 am »
But added good reasons why they should be obsoleted.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 5751
  • Country: nl
Re: My first ARM/LPC design, critic requested.
« Reply #54 on: October 15, 2014, 12:02:34 pm »
So to say it all in one post and concerning the solid smd tantalums:
http://www.act-source.com/news/tantalum-capacitors

Tantalum capacitor advantages and disadvantages
 
Advantages:
 » Volumetric efficiency: offering a much high level of volumetric efficiency than many other types and being superior to common electrolytic capacitors.
 » Good frequency characteristics: they are more suitable for use in a number of applications where electrolytics could not be used.
 » High reliability: Tantalum capacitors are able to provide an almost unlimited life being operated within their ranges. Therefore their use is not time limited as in the case of the electrolytic capacitor.
 » Wide operating temperature range: often specified for operating over the range -55C to +125C. This makes them an ideal choice for use in equipment for use in harsh environmental conditions.
 » Compatibility with modern production methods: Tantalum capacitors are able to withstand the temperatures of SMT production and are there fore ideal for use in many new electronics designs.
 
Disadvantages
 » Low ripple current ratings: tantalum capacitors do not have high ripple current ratings and should not be used in areas that require any levels of current to be passed.
 » Not tolerant to reverse or excess voltage: Tantalum capacitors don’t like excess voltage or reverse, even spikes can destroy them. If they are exposed to excess or reverse voltages then they easily can explode.
 » Higher costs: more expensive than many other capacitors.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #55 on: October 16, 2014, 09:21:47 pm »
If you replace the aluminum electrolytic in that comparison with monolithic chip then nearly all the advantages become disadvantages. Monolithic are better than tantalum in the same way those had it over electrolytic. At least electrolytics as mentioned are still king of the mountain when it comes to large capacitance. Not many 1,000uf or 10,000uf chip caps.
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 18331
  • Country: nl
    • NCT Developments
Re: My first ARM/LPC design, critic requested.
« Reply #56 on: October 16, 2014, 09:38:10 pm »
And with proper selection and carefull placement you can design long lasting equipment with electrolytic capacitors in them.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #57 on: October 17, 2014, 06:58:27 am »
True. True. And of course the same can be said of thermionic valves.

One of the nice things about SMD if that for a board like this you don't have to decide what type of cap to use until you actually build it. With a little care pads can be placed that will accept ceramic or tantalum chip caps or even SMD electrolytics. Just make sure the minimum spacing is small enough to handle the tiny ones.
 

Offline neslekkim

  • Super Contributor
  • ***
  • Posts: 1303
  • Country: no
Re: My first ARM/LPC design, critic requested.
« Reply #58 on: October 17, 2014, 07:51:08 am »
So what should one do in hobbyist design?, or small designs?, use smd electrolytic?, those are in those can design right?, quite bit bigger than the tantalums?, or are there others one should use instead?
(Mainly thinking about when you try to reuse other designs, and you don't have enough knowledge/education to redesign it.)
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #59 on: October 17, 2014, 07:59:54 am »
If you read this thread you should know electrolytic is the worst choice. Tantalum is almost as bad. Not only are these dangerous because they are polarized but they are ten times bigger and cost 10 times more than ceramic chips.

Not to beat a dead horse (aka to beat a dead horse) who's bright idea was it to use a cathode bar to indicate positive on tantalums? IMO just asking for trouble and another reason to avoid them.
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 18331
  • Country: nl
    • NCT Developments
Re: My first ARM/LPC design, critic requested.
« Reply #60 on: October 17, 2014, 10:49:08 am »
Not to beat a dead horse (aka to beat a dead horse) who's bright idea was it to use a cathode bar to indicate positive on tantalums? IMO just asking for trouble and another reason to avoid them.
Over a decade ago I worked at a company where the production department put tantalums the wrong way around. They didn't explode right away but instead they worked as time bombs. After the first boards went up in smoke (taking traces on a very expensive PCB with it) we had to visit all the sites these boards where installed and correct the problem. For some silly reason the PCB design guy didn't find it necessary to put a silk screen on the PCBs so it was hard to see how the capacitors need to be mounted.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 5751
  • Country: nl
Re: My first ARM/LPC design, critic requested.
« Reply #61 on: October 17, 2014, 01:19:34 pm »
Tantalum is almost as bad. Not only are these dangerous because they are polarized but they are ten times bigger and cost 10 times more than ceramic chips.
Not true, they are <three times bigger and +/- cost <two times more BUT they do have their full capacitance over their rated voltage.
And ESR is also not very bad, at 100Hz the tantalum is better than the mlcc but at 10kHz the mlcc is better than the tantalum. Just did some tests with what I had laying around:
note that you can only use the MLCC till around 9V to have some capacitance left and the tantalum is 25V so three times higher.

                                                      MLCC                  Tantalum
Voltage:                                            16V                      25V
Manuf. prov. Capacitance:                   4u7                      4u7
Measured Capacitance:                       3u4                       4u6
Measured ESR @100Hz:                      27                         11
Measured ESR @10kHz:                      0,1                     0,37
Metric Volume in mm3                         3,57                       9,7
Lowest Price (Farnell @2000 pcs)        0,04  (X7R)           0,067
Lowest Price (Farnell @20000 pcs)      0,036 (X7R)          0,046

Still I prefer the MLCC just keep in mind that you overdesign them, only use X7R or better and casing 0805 or bigger otherwise the voltage derating is shocking.
« Last Edit: October 17, 2014, 01:25:12 pm by Kjelt »
 

Offline dannyf

  • Super Contributor
  • ***
  • Posts: 8229
  • Country: 00
Re: My first ARM/LPC design, critic requested.
« Reply #62 on: October 17, 2014, 03:16:41 pm »
Quote
So what should one do in hobbyist design?

I wouldn't worry about it - the issues here are so marginal that it has very limited impact unless you design for NASA's deep space projects, :)
================================
https://dannyelectronics.wordpress.com/
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #63 on: October 19, 2014, 02:41:51 am »
For once (maybe twice :) ) I have to agree with dannyf.  It seems like many hobbyists like to pretend they are building critical care medical equipment or Boeing 777 black box when really just trying to get an LED to blink,

A quick update, I uploaded gerber files (2 layers, using Elecrow cam file) and ordered 10 1mm boards from elecrow. Will see how it goes. https://github.com/zapta/arm/tree/master/mini-pro/eagle

Are those for your "arm-mini-pro"? Why there?

If so I am quite interested because this looks like a perfect board for that chip. A couple friends might also like to build one and Gerbers would be helpful. Unfortunately I can't get into that page. Would it be possible to zip them up here?
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #64 on: October 19, 2014, 04:45:38 am »

A quick update, I uploaded gerber files (2 layers, using Elecrow cam file) and ordered 10 1mm boards from elecrow. Will see how it goes. https://github.com/zapta/arm/tree/master/mini-pro/eagle

Are those for your "arm-mini-pro"? Why there?

If so I am quite interested because this looks like a perfect board for that chip. A couple friends might also like to build one and Gerbers would be helpful. Unfortunately I can't get into that page. Would it be possible to zip them up here?

Yes, you are right, wrong thread.  Attache here are the gerbers' I sent to Elecrow  (they are are also available at https://github.com/zapta/arm/tree/master/mini-pro/eagle  ). They were generated using Elecrow Eagle CAM script.

You may want to wait until I build and test at least one board to see that the design is good. Elecrow order is with DHL shipping (~48 hours door to door) so  should be here in 10 days or so. I used the 10 PCBs deal but need only 2 so will have spares to give away, they are 1mm blue HASL boards.

BTW, the Elecrow deal is for 5cm x 5cm boards so I considering adding free 0.1" pitch prototyping area but decided to focus on small size that fits in solderless breadboards.
« Last Edit: October 19, 2014, 04:47:27 am by zapta »
Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #65 on: October 19, 2014, 04:58:16 am »
Thanks. For some reason I'm locked out of the site for "failed security".

I will definitely wait for your report then try one myself before dragging others into it. Everybody is fascinated by the prospect of drag-n-drop flash programming. This would indeed make it by far easiest and no hassle method. If the files required are true binary then that should be easy to solve by simple file renaming. I look forward to your results on that.
 

Offline gmb42

  • Regular Contributor
  • *
  • Posts: 179
  • Country: gb
Re: My first ARM/LPC design, critic requested.
« Reply #66 on: October 19, 2014, 08:35:29 am »
Thanks. For some reason I'm locked out of the site for "failed security".

Click on the zip file link in the middle of the list, then on the resulting page click on the raw button and your browser will download the zip file.  No need to be logged into Github.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #67 on: October 19, 2014, 05:28:41 pm »
Thanks. For some reason I'm locked out of the site for "failed security".

Click on the zip file link in the middle of the list, then on the resulting page click on the raw button and your browser will download the zip file.  No need to be logged into Github.

If this does not work, you can download the entire repo  https://github.com/zapta/arm/archive/master.zip . It includes the two lpcxpresso projects (libraries and hello world) and a few resources (e.g. an appnote regarding USB ISP).
Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #68 on: October 19, 2014, 05:43:16 pm »
Thanks for the suggestions guys but maybe there is some system corruption or virus here because at github.com I get:

Secure Connection Failed
          An error occurred during a connection to github.com.
Cannot communicate securely with peer: no common encryption algorithm(s).
(Error code: ssl_error_no_cypher_overlap)
  The page you are trying to view cannot be shown because the authenticity of the received data could not be verified.
  Please contact the website owners to inform them of this problem. Alternatively, use the command found in the help menu to report this broken site.

I thought it was ok last week so I'll restore a drive image from then and see what happens. Or maybe they are playing git games again. I hate those sites. For now attaching here did the trick. Thanks again for the gerber files. If your board works they will come in handy if not I'll wait for fixes.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #69 on: October 19, 2014, 05:49:03 pm »
Thanks for the suggestions guys but maybe there is some system corruption or virus here because at github.com I get:

Secure Connection Failed
          An error occurred during a connection to github.com.

Interesting, are you using a recent version of a mainstream browser?

I tried to attached here a zip with the full repository but it was too big (6.5M) and got rejected.
Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #70 on: October 19, 2014, 06:11:35 pm »
I'm using firefox 19.0.2 which worked fine on github.com last week. So unless something changed there then maybe something in my system is corrupted. I've been screwing with my router DMZ and firewalls lately to control things in my house from remote locations with the new esp8266 wifi modules. That may be involved.
 
Please don't worry repository contents. I can't take advantage of those anyway because the SSD in my netbook only handles one bloatware IDE at a time and LPC or PSOC are not a high priority for that. I have a half dozen of the no-nonsense toolsets like in the $1 thread and they satisfy all current needs.
 

Offline gmb42

  • Regular Contributor
  • *
  • Posts: 179
  • Country: gb
Re: My first ARM/LPC design, critic requested.
« Reply #71 on: October 20, 2014, 10:22:25 am »
I'm using firefox 19.0.2 which worked fine on github.com last week. So unless something changed there then maybe something in my system is corrupted. I've been screwing with my router DMZ and firewalls lately to control things in my house from remote locations with the new esp8266 wifi modules. That may be involved.

Nothing to do with anything other than your ancient (in internet lifetimes) browser. 19.0.2 is over 18 months old, and the the world of TLS\SSL certs and ciphers has moved on a little and left you behind.

The error message indicates that your browser and the server can't agree on the cipher to use to safely encrypt your session, probably because your browser, being so old, doesn't support any protocols or ciphers that are currently considered safe to use.

Another possibility is that your browser isn't offering to use TLS, and due to the latest TLS\SSL vulnerability, github is responsibly refusing to support anything less than a TLS connection.

Hopefully you don't use that browser for anything where safe TLS\SSL use might be important to you.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #72 on: October 20, 2014, 11:37:09 pm »
Thanks for bringing that up. I won't pretend to know exactly what's going on but following your advice improved things big time. Funny that everything was great a week ago. Then next few days it got so bad I had intermittent trouble with this site and finally couldn't check out at Cypress without similar warnings.

I hate updating. Seems like every time it does NOT get better. Less on the screen and funny shapes and colors with the new Firefox but maybe I'll get used to it. I remember when it was called Netscape and went years without updating. Same for IE. 4-5 years with the original XP version then things started acting funny again. Updating IE was a disaster so along came 'Zilla who chased the evil monsters away. Anyway now I can navigate better and buy stuff everywhere. Thanks again.

 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #73 on: November 06, 2014, 12:39:17 am »
The Arm Pro Mini PCB arrived from elecrow and worked straight out of the reflow oven. Reflowing the 5mm MCU was easier than I though, it has plenty of spacing between the pads. One nice trick is that a virgin LPC11U35 starts in USB/ISP mode without having to press the ISP button which makes the initial programming very easy (just drag the binary file to the disk drive).

Elecrow sent me 10 PCBs so I have spares. If anybody wants want to play with it pm me.

Schematic and board files are here https://github.com/zapta/arm/tree/master/mini-pro/eagle

Thanks everybody for the feedback.

Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #74 on: November 06, 2014, 01:10:31 pm »
This is exciting. Very good sign that it worked straight out. Usually takes me at least 2 or 3 tries and a few hours debugging.

The ability to drag and drop strikes me as a major advantage. 90% of the problems people run into getting these things going deal with flashing and related issues. Drivers, utilities, OS, whatever.

I sent address info and if you can spare it would love to get one with just a chip on it for minimum component experiments. Based on your success and one of those Aliexpress deals I ordered 5 chips for just over 2 bucks each shipped. In fact went back to get another lot but sales is over now so maybe Mouser if these catch on at the next ham club meeting.  Maybe this particular variant not technically a member of the $1 club but worth a few extra cents if the virtual drive thing works as well as it seems. Thanks again for all the hard work.
 

Offline SirNick

  • Frequent Contributor
  • **
  • Posts: 589
Re: My first ARM/LPC design, critic requested.
« Reply #75 on: November 06, 2014, 07:58:49 pm »
You happen to know how the virtual drive thing maps the file to flash?  Is it just a binary image starting at 0x00000000?

The 812s have been giving me fits with accessibility via the UART.  My (one and only) 4078 seems stable though.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #76 on: November 06, 2014, 09:22:49 pm »
You happen to know how the virtual drive thing maps the file to flash?  Is it just a binary image starting at 0x00000000?

The 812s have been giving me fits with accessibility via the UART.  My (one and only) 4078 seems stable though.

I don't know what's going on under the hood, I just followed the instructions to generate the binary file and dragged it to the virtual drive. Did it only a few times, typically I am using a debugger with SWD cable.

Here are two pointers that may help

http://bikealive.nl/creating-a-hex-file.html     // how to generate the binary file (the default of lpcxpresso is to generate only the axf)

http://www.lpcware.com/content/nxpfile/an11305-usb-system-programming-lpc11u3xlpc11u2x    // app note regarding the USB/ISP
Drain the swamp.
 

Offline SirNick

  • Frequent Contributor
  • **
  • Posts: 589
Re: My first ARM/LPC design, critic requested.
« Reply #77 on: November 07, 2014, 12:40:25 am »
Ah, that explained it.  Short answer:  Yup, that's what it does.  Writing to the "disk" in consecutive block order will flash 0x00000000 on up.  Writing blocks out of order will result in random firmware. :)  Good to know.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #78 on: November 08, 2014, 06:36:23 am »
I tried again the firmware update using the virtual disk. Drag and drop using the folder explorer (OSX Finder) does not work well but copying it with a command line works every time (App note AN11305 says something about additional disk activity done by the explorer). It shouldn't be too difficult to automate it.

cp hello_world.bin /Volumes/CRP\ DISABLD/firmware.bin

And here is a small 3D print case I added to the repository. Next I will clean up the libraries.



Edit:
1. I added the above command as an external tool in lpcxpresso that also does automatic build. It works like a charm.
2. The RST and ISP button labels on the board are swapped. Will fix it in next revision.
« Last Edit: November 08, 2014, 06:55:50 am by zapta »
Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #79 on: November 08, 2014, 12:43:49 pm »
I just realized that the labels of the ISP and RST switches are swapped.  Also, when you copy a firmware binary to the virtual USB disk, do it with a command line, not drag and drop, it's more reliable this way

This may not be great news. Personally I hope it's just a Mac or Linux thing. Using the command line means there is less advantage over regular serial bootloaders and several disadvantages.

I will report back with XP results on this issue as soon as it arrives. One of my interested buddies runs Linux so it will be curious to see how that goes. I won't be sending this first unit out to him because of the bulk but when my chips arrive the first thing is to throw a minimum version together and give him a go.

In any case thanks for sending that out so quickly and I really appreciate the favor.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #80 on: November 08, 2014, 05:34:26 pm »
I just experimented with a simple circuit to make the ISP mode easier. With an addition of a diode and a capacitor, the ISP button now works independently. That is, a single press also resets the MCU and enters it into ISP mode. It's handy in debug cycles using the USB/ISP mode. I may add it in rev 2 as an optional circuit.

The diode is required because sometime after reset the MCU asserts the ISP pin low for a few micro seconds. There is no discharge resistor for the capacitor but it works anyway, probably because of the diode or capacitor leakage.

Edit: the circuit was not as reliable as I thought. After removing the scope probes it sometimes didn't reset well. I ended removing that circuit and implementing a software solution that jumps to ISP mode when the button is pressed. This works much better. See ReinvokeIsp() here https://github.com/zapta/arm/blob/master/pro-mini/lpcxpresso/arm_pro_mini_lib/src/arm_pro_mini.cpp#L34



« Last Edit: November 09, 2014, 03:26:45 pm by zapta »
Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #81 on: November 11, 2014, 03:45:19 pm »
Zapta, would it be possible to post here files for a simple led program? The simpler the better. Just putting a pin low would be best. It would be very helpful for testing the board you sent.
« Last Edit: November 11, 2014, 06:15:29 pm by paulie »
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #82 on: November 11, 2014, 03:58:19 pm »
zapta, would it be possible to post here files for a simple led program? the simpler the better. just putting a pin low would be best. it would be very helpful for testing the board you sent.

What is the base line? Is using NXP libraries and lpxpresso generated files ok?  In this case the led blinking program is very simple.

Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #83 on: November 11, 2014, 06:00:45 pm »
Whatever is most convenient for you. If there's a LST file that would be nice too but binary is all that's needed to get me going AFAIK.

To answer your PM question I was suggesting you post for others to see instead of message that stuff about the labels and drag-n-drop but apparently you did that anyway. Also for me the threads are quickest way for me to comunicate because most of the time I don't use my own PC or even a real PC.

 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #84 on: November 11, 2014, 06:53:22 pm »
Whatever is most convenient for you. If there's a LST file that would be nice too but binary is all that's needed to get me going AFAIK.

To answer your PM question I was suggesting you post for others to see instead of message that stuff about the labels and drag-n-drop but apparently you did that anyway. Also for me the threads are quickest way for me to comunicate because most of the time I don't use my own PC or even a real PC.

Attached is a zip with two binaries of hello world, with fast and slow blink respectively. These programs also print peridically via USB/CDC and monitor the ISP button (so you don't need to do the reset/isp maneuver).   I highly recommend installing the lpcxpresso, it's a single package that installs the entire tool chain and will allow you to experiment (it also generates make files so you can build from command line).

Let me know how it works for you.
Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #85 on: November 12, 2014, 05:28:02 am »
Thanks. I'll get back with results as soon as I get a chance to try it. I'm particularly interested in how the drag-n-drop works under Windows.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #86 on: November 12, 2014, 04:39:01 pm »
Thanks. I'll get back with results as soon as I get a chance to try it. I'm particularly interested in how the drag-n-drop works under Windows.

mbed has on github source code of a USB/ISP bootloader with hal for LPC11U35.

https://github.com/mbedmicro/CMSIS-DAP/tree/master/bootloader
Drain the swamp.
 

Offline Jeroen3

  • Super Contributor
  • ***
  • Posts: 3385
  • Country: nl
  • Embedded Engineer
    • jeroen3.nl
Re: My first ARM/LPC design, critic requested.
« Reply #87 on: November 12, 2014, 05:54:42 pm »
Haven't they published their LPC2xxx mbed chipset code yet?
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #88 on: November 12, 2014, 08:26:46 pm »
So your boards arrived today and I must say very impressive. Thinking that ISP connector was .1" it was quite a surprise to see how compact this really is. "Good things come in small packages" is an understatement. Out of dozens of demo boards this is definitely my favorite. Thanks for including me in this great project.

It was wonderful to find the drag-n-drop 100% reliable under Windows. What an improvement over all that flash utility/driver baloney. Out of maybe 100 downloads (~50 each alternating slow&fast) not a single failure. The reset button was initially a little flaky but a few forceful "break in hits" fixed that. Removing the JTAG connector also helped make it easier to push. Not useful to me anyway because there are no dual 1.5mm females to mate with here. JTAG itself of no use to me either and the SWD pins are available on the edge.

BTW that one button auto bootload feature of yours makes it super fast and easy to reload programs.

I was going to strip it down to minimum components but can't possibly now seeing what a work of art this is. Both design and construction are exceptional. Also with no standup pins the board is so thin it will be no problem slipping it out the day job door in a letter envelope for my buddy to test under Linux.

Thanks for the extra PC boards too. They will make the minimum hardware experiments easy. When the chips arrive I know exactly where they will go.

As soon as my PSOC4 chips arrive and that project is finished I will follow your advice and replace it with the LPCexpresso. I can't wait to try out some of those debug tools.
« Last Edit: November 12, 2014, 08:47:48 pm by paulie »
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #89 on: November 13, 2014, 08:25:25 am »
Paulie, I am glad that you likeed it. If you have suggestions for improving or minimizing it please let me know. I am keeping a todo list here https://github.com/zapta/arm/blob/master/pro-mini/TODO.md

It's good that drag and drop works on Windows. The Mac OS file explorer adds files named .DS_Store that mess up with the ISP/USB (though a simple command line copy works just fine).

Initially I used only the SWD connector and a debugger but now I set in eclipse/lpcxpresso a build button that also copies to the ISP drive so I don't need to mess with the debugger (still useful to have it as an option for hard to debug cases). It is very handy.
Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #90 on: November 15, 2014, 01:37:43 pm »
No chance to install LPCexpresso yet but I did try several programs using the minimum tools in my other thread and this drag-n-drop is still working like a charm. What a breath of fresh air after dealing with all those software and hardware issues from the other methods.

ps Thought it might be nice to show a photo of the board zapta sent me. Just one cable. A lot simpler than those other multi wire setups.
« Last Edit: November 15, 2014, 01:39:34 pm by paulie »
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #91 on: November 15, 2014, 05:57:33 pm »
Interesting arrangement with the horizontal pins, never seen it before. 

I sent Dave a unit for mailbag. Will see what will happen with it. It's a long way to Australia.
Drain the swamp.
 

Offline paulie

  • Frequent Contributor
  • **
  • Banned!
  • Posts: 849
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #92 on: November 16, 2014, 01:09:05 am »
Yes, mounting pins flat like that has several advantages. My Pro-Minis are that way too. For one thing it's easier to hold the board while plugging and unplugging jumpers. Makes it possible to unsolder them later in case you want to switch with wires or whatever too. Another thing is it will fit in smaller spaces. Also being thin like that allows shipping in a regular letter envelope instead of paying ten times more for package rates. In my case ZERO cost because I slip it in the day job postal bin.

And yes, I have stolen a pen and several pencils since employment began there. To my credit no paper clips... yet. :)
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #93 on: December 17, 2014, 05:04:49 pm »
A quick update. Published here https://github.com/zapta/arm/tree/master/pro-mini a partial draft of the documentation. Hope to complete it in the next few days. Please let me know of any comments you may have.:wq
Drain the swamp.
 

Offline magetoo

  • Frequent Contributor
  • **
  • Posts: 284
  • Country: se
Re: My first ARM/LPC design, critic requested.
« Reply #94 on: December 18, 2014, 09:46:27 pm »
Cute board!  And it's encouraging to see that using an 11U part was relatively straightforward.

I have a r0ket board that was given away to attendees at the Chaos Communication Camp in 2011, based on an LPC1343 (Cortex-M3).  Might have to dig that one up again now.

I think the 1343 was the first part to have the USB drive-with-firmware-binary thing.  As I understand it, it's designed with Windows and drag-and-drop in mind; Windows will (re-)write the whole file from start to end, which is not necessarily the case elsewhere.  For all other platforms they recommend using "dd" for writing the firmware binary.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #95 on: December 18, 2014, 10:02:12 pm »
Cute board!  And it's encouraging to see that using an 11U part was relatively straightforward.

I have a r0ket board that was given away to attendees at the Chaos Communication Camp in 2011, based on an LPC1343 (Cortex-M3).  Might have to dig that one up again now.

I think the 1343 was the first part to have the USB drive-with-firmware-binary thing.  As I understand it, it's designed with Windows and drag-and-drop in mind; Windows will (re-)write the whole file from start to end, which is not necessarily the case elsewhere.  For all other platforms they recommend using "dd" for writing the firmware binary.

Drag and drop doesn't work on Mac OSX because it adds the hidden .DS_Store file with directory metadta.  For development (under Mac OSX) and I using this script which is configured as a LPCXpresso external tool. When I click the icon it builds the project and copies the file.

https://github.com/zapta/arm/blob/master/pro-mini/lpcxpresso/hello_world/copy_to_usb_isp.sh
Drain the swamp.
 

Offline zapta

  • Super Contributor
  • ***
  • Posts: 6004
  • Country: us
Re: My first ARM/LPC design, critic requested.
« Reply #96 on: December 18, 2014, 10:04:15 pm »
Thanks everybody for your help with the design. The board and the documentation are now ready and I created for it a fresh thread here

https://www.eevblog.com/forum/microcontrollers/introducing-the-arm-pro-mini-board-arm-made-eazy/msg570973/#msg570973
Drain the swamp.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf