Author Topic: OSHW 3 Axis acceleration logger  (Read 8240 times)

0 Members and 1 Guest are viewing this topic.

Offline ConnorGames

  • Regular Contributor
  • *
  • Posts: 94
OSHW 3 Axis acceleration logger
« on: March 29, 2013, 06:23:18 pm »
     Just finished laid out the first revision of a board for a personal project to design a 3-axis acceleration logger powered by a supercap with wireless charging and optical comms. I would love to know if anyone has any suggestions for my design or pcb layout, it is my first time laying out a DC-DC converter. It will use the arduino bootloader (I want it up and running soon, even if I need to sacrifice some power and performance). If I can't find any more design flaws, I intend to get PCB from OSH park soon, and I'll let you know how it goes. Kicad files, Gerbers, Pdf's, etc are in the attached zip file.

     Also, if you know of a place that will assemble it cheaply, that would be great! I've never soldered no-lead parts before, and while playing with reflow soldering would be fun, the parts on this board aren't cheap.

     I have yet to design the charger and firmware.

Thanks for any feedback!

Edit 3/30/2013: Added images
« Last Edit: May 08, 2013, 04:37:02 pm by ConnorGames »
 

abhishek7xavier

  • Guest
Re: OSHW 3 Axis acceleration logger
« Reply #1 on: March 29, 2013, 07:02:41 pm »
Hey,pretty good job dear!
 

Offline Pack34

  • Frequent Contributor
  • **
  • Posts: 667
Re: OSHW 3 Axis acceleration logger
« Reply #2 on: April 28, 2013, 03:45:04 pm »
How are you planning on mounting this? Plastic retention clips that grab the edge of the PCB?
 

Offline firewalker

  • Super Contributor
  • ***
  • Posts: 2347
  • Country: gr
Re: OSHW 3 Axis acceleration logger
« Reply #3 on: April 28, 2013, 05:18:24 pm »
Why did you selected the particular mcu? I can see lot of unused I/O pins.

Alexander.
Become a realist, stay a dreamer.

 

Offline ConnorGames

  • Regular Contributor
  • *
  • Posts: 94
Re: OSHW 3 Axis acceleration logger
« Reply #4 on: April 28, 2013, 10:41:02 pm »
Why did I use this chip?

Lots of ram for buffering data (to keep the flash asleep as long as possible) and easy to use (w/arduino IDE). In addition, there is already an arduino library for DataFlash devices. I will probably only make one board, so I used this device because it was convenient and fast to develop for, not because it was the cheapest device that would do the job.

If there is a lot of interest in this design and I make more than one, I might switch to a energy micro chip or (more likely) a small MSP430(for low power).

Quite frankly, I thought after I had started the layout about changing to another MCU, but because of the fact I am only making one, I figured the time spent switching MCU'S would not be justified by the cost difference.

I also plan to upload a new rev of the board soon, with better grounding and overall layout on the charging DC/DC, and a split ground plane. It will also include non-mirrored footprints for the LT1618 and LIS3DSH (Rerouting these was a pain!
-- I won't make that mistake again!)
« Last Edit: May 08, 2013, 03:50:18 am by ConnorGames »
 

Offline ConnorGames

  • Regular Contributor
  • *
  • Posts: 94
Re: OSHW 3 Axis acceleration logger
« Reply #5 on: May 08, 2013, 03:54:40 am »
How are you planning on mounting this? Plastic retention clips that grab the edge of the PCB?
Eventually it will be a sealed/potted module made mostly for "drop tests". That is why I have the optical data interface and wireless charging. If needed, metal braces could be used to attach this to something.
Still need to design the charger, though. That probably won't be easy -- for prototyping I broke out the RX/TX lines and a power input.
 

Offline DavidDLC

  • Frequent Contributor
  • **
  • Posts: 740
  • Country: us
Re: OSHW 3 Axis acceleration logger
« Reply #6 on: May 08, 2013, 04:07:36 am »
If you still have pending things to design, why do you say :

"Just finished a personal project ....."
 

Offline andyturk

  • Frequent Contributor
  • **
  • Posts: 892
  • Country: us
Re: OSHW 3 Axis acceleration logger
« Reply #7 on: May 08, 2013, 06:35:13 am »
I just noticed you're using a LIS3DSH.

Me too! It's the small square chip in the middle of the board:



Let me tell you, soldering that puppy (at home) was an ordeal and a half. Those LGA pads are really tiny and I had to re-work the damn thing half a dozen times. I was about ready to chuck it through a window until it finally started talking to me about an hour ago.

The garden variety LIS3 devices seem pretty straightforward. The DSH version, however, has all sorts of bells and whistles that don't appear in the datasheet. The only information I've found so far on setting up the state machines is here: https://fosdem.org/2013/schedule/event/interaction_with_accelerometers/attachments/slides/295/export/events/attachments/interaction_with_accelerometers/slides/295/fosdem13_sensors.pdf

Do you have any other programming references for that chip?

I've done a few SMPS layouts. Some of them event worked (despite being a complete amateur). I've never tried SEPIC though, which I think is the topology you're working with. If you haven't done so already, I recommend doing a board just for the power supply (i.e., without all the other stuff) so you can load test it more easily and put a scope on the output to see how noisy it is. Locating the switcher right underneath your crystal might be something to avoid.  :-//

With the exception of the LIS3 and whatever U8 is, your board looks eminently solderable at home. I use a cheap tub of solder paste from DealExtreme and a $3 Ikea skillet for my projects. A nice hot air station comes in handy though (lots of solder wick too).
 

Offline ConnorGames

  • Regular Contributor
  • *
  • Posts: 94
Re: OSHW 3 Axis acceleration logger
« Reply #8 on: May 08, 2013, 04:17:11 pm »
Thanks for the suggestions!

I've switched to a surface mount xtal for higher shock resistance, so I will try to move it away from the switcher now that I've got extra space. I will also lay out a stand-alone power supply board for testing -- good idea (or possibly just add test points so I use one of my 3 copies from OSH park instead of paying for another board). I think the switcher near (but no longer under!) the xtal wont be TOO bad though -- I've got a nice solid ground plane under it. It is also low power, supplying ~2mA, but it IS burst mode, so that complicates things. As for noise/ripple, simulated it and found noise unacceptable, so that's why I added the ultra-low dropout linear post regulator. It was selected for good PSRR, and I might add a PI filter if absolutely necessary. In addition, I chose the LIS3DSH for performance (low noise, high resolution), not the embedded state machine. I may play with it, but I really just need to read out raw data for this project. It appears to have an arduino library, so that should not be a problem.

I realize now I'm not done designing it, sorry i said that in my first post :-DD Sometimes once you've laid out the PCB it is such a relief you forget you've got other stuff to do!

I am NOT looking forward to soldering those accelerometers, either!
Anyone have experience with that?
 

Offline Kremmen

  • Super Contributor
  • ***
  • Posts: 1283
  • Country: fi
Re: OSHW 3 Axis acceleration logger
« Reply #9 on: July 14, 2013, 08:57:03 am »
[...]
I am NOT looking forward to soldering those accelerometers, either!
Anyone have experience with that?
Similar but not identical; an Atmel radio processor in a .5 mm pitch VQFN-32 package.
Doable at home with pneumatic paste doser, thin needle and IR oven. And a steady hand  ;D
Nothing sings like a kilovolt.
Dr W. Bishop
 

Offline Berni

  • Super Contributor
  • ***
  • Posts: 2619
  • Country: si
Re: OSHW 3 Axis acceleration logger
« Reply #10 on: July 28, 2013, 12:09:28 pm »
I have used varius 0,5mm pitch QFNs before and they are completely doable at home without special gear, just annoying.

Just make sure the pads are much longer than they need to be and get a big blob of solder to tack the placed chip down in one corner and keep adjusting it until the pins line up with the pads(I used one of those Chinese USB microscopes to look at the chip from the side).Once it's lined up tack the opposite corner down too and then just hold a huge blob of solder against the edge of the chip and feed even more solder to it, hold it there for quite a few seconds to make sure the pins get heated up enough. If the chip has a thermal pad I use a dot of solder paste under it that I melt with a hot air gun, but you can do it also be placing a large hole under the chip and feeding molten solder in to the hole(careful you don't desolder the chip while doing that)

If any solder bridges appear just swipe them away with a clean dry tip.

This method is manly for the regular QFNs that have the pins slightly exposed on the side
 

Offline ConnorGames

  • Regular Contributor
  • *
  • Posts: 94
Re: OSHW 3 Axis acceleration logger
« Reply #11 on: August 05, 2013, 02:35:07 am »
Been busy this summer, but the updated board is at https://github.com/faceEater/accelerationLogger

I am preparing to get a 2-layer board made from the back two layers, to test the power supply circuits and get (reflow) soldering practice on cheaper 2-layer boards. If all goes well, I will get the full 4-layer board as soon as the power supply checks out.

You may notice I had to reroute traces around 2 chips. Getting footprints backwards is painful! :palm:
 

Offline Rerouter

  • Super Contributor
  • ***
  • Posts: 4430
  • Country: au
  • Question Everything... Except This Statement
Re: OSHW 3 Axis acceleration logger
« Reply #12 on: September 26, 2013, 10:52:06 am »
not too involved with the hardware, but i feel this can help you

the wire library can run faster than the default 100Khz, allowing you to sleep the micro longer,
currently for both a 328 and a due I've had no issues running it at 800Khz,

this is the relevant guide http://forum.arduino.cc/index.php/topic,16793.0.html



 

Offline ConnorGames

  • Regular Contributor
  • *
  • Posts: 94
Re: OSHW 3 Axis acceleration logger
« Reply #13 on: September 30, 2013, 12:49:17 pm »
First of all, thanks for the tip, rerouter. Looks really useful.

An update on the project: I have been busy lately, but I finally got all the parts from Digikey and am checking footprints (I printed the PCB artwork on some paper). I switched from dataFlash to a microchip 64mbit SST25 flash in a (supposedly) SOIC-8. Lets just say this is the biggest "SOIC-8" I have ever seen. I have redone that part of the board to accommodate it, and created a new footprint. It is wider than either standard type of SOIC, and longer too.

I am starting work on testing the optical comms circuit, and it looks like it will probably work (soldering 0805 photodiodes with pads that don't extend up the sides by hand is difficult, BTW!)

The wireless charding resonant circuit will be a separate PCB, to be designed after I finish the rest of the hardware. The board already accepts AC, so hopefully this can be a small board.

I will upload the new board to github when I have time.

If all goes well, I expect to order PCB's and stuff to get set up with reflow soldering in a few weeks.

Digikey also mis-shiped some MSP430's in QFN I was going to use for soldering practice, shipped 2A 1.2V Voltage regulators in SO8 instead |O
 

Offline ConnorGames

  • Regular Contributor
  • *
  • Posts: 94
Re: OSHW 3 Axis acceleration logger
« Reply #14 on: November 23, 2013, 02:45:55 am »
I have revised the board some more ( Not all changes are on github yet, I need to commit them...), and ordered a few parts I forgot. I also soldered a QFN and dead-bugged an 8-TSSOP! Big step up from a SOIC, the smallest package I had soldered before this project.
The TSSOP was the ADC, and it works wonderfully. Why couldn't all chips be this simple -- it is literally an 8-pin package with 4 analog inputs, Vcc, GND, SDA, and SCL!
I just soldered the QFN (a cheap accelerometer) using a hot air rework station for reflow, a board from OSH park, and my OSH stencils solderpaste stencil, with sparkfun leaded solder paste, and I have no shorts! All of the connections look good too, but I have not had time to test it yet.
I was worried the QFN would be difficult, but it worked on the first try( with my second chip. This things are TINY -- Don't fling them across the room with your tweezers :palm:)

PCB's are in the mail, stencils, parts, and tools have arrived
 

Offline 1design

  • Regular Contributor
  • *
  • Posts: 121
Re: OSHW 3 Axis acceleration logger
« Reply #15 on: December 02, 2013, 08:31:42 am »
Watch your switcher feedback traces..some are running under coils, that is a very bad practice. ;D

BR,
Miha
 

Offline ConnorGames

  • Regular Contributor
  • *
  • Posts: 94
Re: OSHW 3 Axis acceleration logger
« Reply #16 on: December 02, 2013, 05:16:26 pm »
I think I mostly fixed that issue with feedback under coils. The only potential issue I still see is the trace from C9 (the output capacitor of the 3.3v supply) back to the feedback dividers which go under the inductor, I will try to fix this with the next board rev if I need to.  The other switcher looks good in this regard though.
 

Offline ConnorGames

  • Regular Contributor
  • *
  • Posts: 94
Re: OSHW 3 Axis acceleration logger
« Reply #17 on: December 08, 2013, 06:26:04 pm »
I populated the back(power supply side) of the board and it WORKS!

The idle current of the lt1618 regulator is at 8-10 mA as opposed to the 2 mA in the simulation (at 60 uA load), and 18mA at 1 mA load. The efficiency is bad as expected, a little over 50%. This, however, is in line with the simulation if the higher than expected idle current is taken into account. The datasheet 5v-to-5v (USB) at 500mA circuit only claims 75% efficiency, and I am working with only 100mA and a variable input voltage. The input current regulation is within +-10%, also as expected. The ripple is <5 mV, better than the simulation. Overall, it does the job. This is not really meant for the task I am using it for, so the simulation may not be right, but I still suspect something is not quite right with the real-world circuit. It will do for now, though.

The lt1615 is just being plain awesome, though! 60uA at idle, exactly as expected.I have not done extensive efficiency measurements, but it appears to be in line with the simulations at about 80% Ouch, I was wrong -- I am only getting 64% efficiency at 16mA out, 5v in (I think), and simulations only show about 72%. What did I do to convince myself it was supposed to be 80% (I figured it out. The specific inductor used was different between my earlier simulation and my current one).  This little guy was selected because it can convert between 1 and 5 volts to 3.4 volts at 80% efficiency with microamp idle current, a task at witch it seems to preform admirably despite the FB trace under the inductor (I'll fix it in the next board rev -- I knew better, but somehow let it slip)

I think I will toss the 1618 in the next board rev, even though I might be able to lower Iq with better layout(The current layout looks really good, though. Maybe the converter attached to it's output is messing with the feedback loop because output filtering is insufficient?), because LT just released the LTC4120 "Wireless Power Receiver and 400mA Buck Battery Charger". Don't you hate it when you are designing a complex circuit and then somebody releases a one-chip solution |O

Overall, for my first surface mount board with anything smaller than a SOIC, or more than 2 SMT parts, and also my first two switching regulator layouts, I am just happy to see it work!

Pics coming soon
« Last Edit: December 08, 2013, 08:36:46 pm by ConnorGames »
 

Offline ConnorGames

  • Regular Contributor
  • *
  • Posts: 94
Re: OSHW 3 Axis acceleration logger
« Reply #18 on: December 23, 2013, 07:36:48 pm »
The front is populated. Lots of modwires and one lt1615 later, I am detecting both accelerometers on the i2c bus. I have already gotten good data from the ADXL377, but have not yet tried to read from the LIS3DSH.

Mods Needed:
     Don't use the switcher feedback trace to measure battery voltage -- It looks like I can get away with it when the system is started (it worked fine when it started w/o frying a few times), but the ESD diode on the MCU's analog input pull down the feedback line when it is not receiving power: Result -- massive overshoot and fried lt1615 - I had spares though!

     I forgot to put a pull-down resistor on the chip enable for the SPI flash -- prevented me from burning a bootloader

     I forgot to put a resistor between the comparator used  for optical tx/rx and the mcu's RX pin, preventing it from being externally driven

    Worst of all, I reversed order of the pins on one side of the MAX11613 adc. They all had extremely short traces coming of of them, so I had to cut traces and attach itsy-bitsy wires to 4 individual pins on the TSSOP. That was fun!

   
I think the DC-DC issues are probably due to saturating inductors. I will try some better ones soon.

 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf