ESTCube-1 works!

mai 8th, 2013
by jaanus

 

ESTCube-1 satellite piezoelectric motor driver

ESTCube-1 satellite piezoelectric motor driver

ESTCube-1., the cubesat satellite project I have been a part of over a year was successfully launched couple of days ago. It was on Vega rocket start on 2013-05-07. CW morse beacon is broadcasted on radio amateur frequency 437.505 MHz.

I was mainly in the hardware team designing and manufacturing the final circuit boards using components tested by people before me. Most of my time was spent in working on electrical power system, but I also helped with attitude determination and control system board layout. Most independent work I spent on one of the payload circuit boards. I designed and assembled piezoelectric motor driver boards as my thesis work.

Long live the satellite! I will work on many more satellites.

Posted in Space | Comments (0)

Owon DS7102V teardown and review

aprill 23rd, 2013
by jaanus

Some time ago I bought myself a Owon DS7102V 100MHz oscilloscope. It is similar to the Rigol entry level scope DS1102E, but thinner and with bigger screen. Oh, this beautiful screen, totally worth the money. But as time passed first flaw of this eBay originated scope surfaced - the fan broke. It didn't stop, it just started to make screeching noise whenever I turned it on. When taking aparart for the first time I also managed to break soft power button.. Oh well. I ordered new 12 V 60 x 60 x 10 mm fan and KDC-A11 power button to fix it.

Internal layout is really impressive. One third of the scope is cheap power supply, middle section is battery compartment, and all the scope electronics is one small PCB. Whole scope worth of electronics small enough to put in pocket.

Interesting chips I found from scope:

Internal layout of DS7102V

Internal layout of DS7102V

DS7102V power supply

DS7102V power supply

Old KDC-A11 next to new one. Slight problem with pin sizes.

Old KDC-A11 next to new one. Slight problem with pin sizes.

LCD connector board

LCD connector board

Small bodge inductor, probably against ripple on the line.

Small bodge inductor, probably against ripple on the line.

Keyboard PCB

Keyboard PCB

Analog board top view

Analog board top view

Top view with cheap looking ADC, FPGA  and ports.

Top view with cheap looking ADC, FPGA and ports.

Filters and amplifiers

Filters and amplifiers

Signal relays and more analog stuff

Signal relays and more analog stuff

Posted in Teardowns and reviews | Comments (0)

Free sensitive thermal vision

märts 28th, 2013
by jaanus
Powered up board drying from acetone.

Powered up board drying from acetone.

My circuit board with MSP430FR normally took ~ 3 mA from 3.3 V line. But one evening, it started taking 200 mA. It seemed to function correctly but the power had to go to somewhere. 200 mA * 3.3 V = 660 mW. It is not enough power to burn the fingers so how can to track it down - use drying solvent. Normally I clean my boards with acetone (but isopropanol is better) so I just wiped that to random components until I noticed that the die part of the MCU was drying much faster than other bits of the board. After replacing the MCU the current consumption dropped back to 3 mA. The resistivity of acetone is in the order or megaohms so no problem with misoperation.

Posted in Small projects | Comments (1)

SMD Stencils

märts 25th, 2013
by jaanus

We all love solder paste reflow soldering. Of course we do: its the fastest way to solder boards and can also be used to produce more than one of them. But getting stencils has been a pain: smtstencil.co.uk sells them for 20€ and a week of waiting. A bit too much for playing around. And I broke couple of school's endmills trying to mill out stencils so no more of that.

A week ago Kalle showed me a blog post about cutting stencils with plotter. So I have a plotting machine now. Cuts pretty stencils from polyester sheets. KiCad exports SVG files that is useable with minimal modification. Polyester stencils are transparent - aligning is easy even without aligning holes. It is strong enough so I can use it more times than I ever will. Also it it soft enough to modify it with scalpel.

So, if you want cheap stencils: shop.tech-thing.org/smd-stencil

Poking first stencil from plotter with scalpel.

Poking first stencil from plotter with scalpel.

Board with polyester stencil.

Board with polyester stencil.

Applying solder paste to the board.

Applying solder paste to the board.

Board with solder paste.

Board with solder paste.

Posted in Other | Comments (0)

PCB Preheater - Blazing Track

veebruar 12th, 2013
by jaanus
Blazing Track PCB preheater

Blazing Track PCB preheater

While trying to solder some 10x10 cm CubeSat 4 layer boards at home I found out that it is really hard. In school we have hot plate and infra-red preheater, so soldering big boards and components is easy. Preheater heats whole board up to about 120 degrees and this makes soldering of any kind much simpler. The amount of heat needed to warm up a joint is much smaller. Soldering big ground pad, massive heatsink tabs and big center pads becomes a piece of cake.

So, I wanted a preheater too. Preferably hot plate one, because it is cheaper, easier to use and good enough in most cases. I searched and no shop could sell me table stove small enough. The cheapest hot air ones were about 50€. So - I made one myself.

A bit hacked bottom side of the first version. Real ones won't be.

A bit hacked bottom side of the first version. Real ones won't be.

The Blazing Track - PCB preheater from PCB. It is 10 x 10 cm big hot plate. Top side is filled with 4 Ω worth of 1.1mm track. On the bottom side there is 5.5 x 2.1 mm barrel connector, red led to indicate if it is powered or not and some unpopulated bonus tracks. The PCB is inspired by Sick of Beige standard PCB sizes, but bigger. Standard should be DP100100, if there ever will be it. In all four corners there are legs, made from countersunk bolts so the top side is totally flat.

Power it with 12 V and it will take a bit under 3 A and will settle down to 2 A when hot.  At 12 V it will get about 90°C. For other temperatures, try other voltages. This temperature is pretty good and helps with soldering.

There are extra pads on the bottom to solder SMD pinheader and 0603 thermistor, so you can make your own daughter board which measures and controls temperature.

Get the preheater from the shop

Get design files (kicad)

 

Posted in Small projects | Comments (0)

Designing CubeSat power supply - the system

jaanuar 31st, 2013
by jaanus

Okay.. So our CubeSat power supply subsystem should have batteries. There will probably be some solar cells to. Something else too?

The system level design is done after ESTCube-1 power system. Public information about it is available in the article.

Batteries:

  • Two lithium ion cells in parallel
  • Both are two way current limited
    • Current limits have auto retry
    • Enable signals are connected to controller
  • Temperature monitoring
  • Optional: Some kind of heater (pcb track)

In case of one battery failure the satellite can still operate. Batteries are connected through protection to a net named Main Power Bus (MPB).

Charging:

  • SPV1040 maximum power point tracking boost converter
  • 6 or 12 channels
    • Each solar cell is in parallel with others. You can smash 11 of the 12 cells and still have a working satellite.
  • If it makes channels smaller - I will use ideal diode controllers before MPPT to reduce number of MPPTs needed.
  • If it is needed - ideal diodes between SPV1040 output and Main Power Bus

Distributing:

  • Parallel regulators on 3.3 V, 5 V and 12 V rails
  • Output current limits/ideal diodes
  • If needed - input current limits
  • If regulators are wimpy and there is room - more than 1 power rail to all voltages.

Monitoring:

  • We will have a microcontroller monitoring everithing (MSP430FR or maybe Arduino)
  • All FAULT signals are connected to MCU
  • Reasonable amount of enable-disable lines
  • Digital communication with other subsystems (SPI, UART or I2C)
  • Possibility for zombie check signals from other subsystems (to function as a watchdog)
  • Battery voltage measurement
  • As much other voltage measurements as possible

Posted in Space | Comments (0)

FreeCAD experience

jaanuar 26th, 2013
by jaanus
FreeCAD Sketcher view

FreeCAD Sketcher view

FreeCAD is an open source freeware 3D CAD program. I needed some 3D models for my CubeSat battery post and it looked user friendly, so I gave it a try. I have previously used Blender3D, Solid Edge, SolidWorks, Google Sketchup and HeeksCAD. So I have some experience with 3D modelling and no experience with formula generated modelling (like many open source CAD programs tend to be).

First impression - where are ALL the buttons. Then I discovered workbench switching - makes sense now. Couple of small tutorials later and I was able to model simpler things.

It has usable 2D sketching tool and possibility to modify 3D models. Also almost normal assembly making ability.

Like all open source tools - the GUI is still a bit rough from the edges. SolidWorks style constraints are a step to the right direction, but they are still a bit buggy. For example clicking on the constraints is pretty challenging. I modelled CubeSat PCB after CubeSat Kit PCB Specification and made some simple assemblies. Pictures are in the last post and here are the models.

Posted in Soft | Comments (0)

Designing CubeSat power supply - the batteries

jaanuar 17th, 2013
by jaanus
Battery swelling in vacuum.

Battery swelling in vacuum.

The first thing to choose when designing a power supply are the batteries, since they take up most of the room and weight. When choosing batteries one must think about size, weight, capability. But also availability and mounting to the PCB. Also non-hardcase batteries tend to swell in vacuum and you can't trust batteries with built in electronics like cell batteries in space either.

Electrical power system with two 18650 battery.

Electrical power system with two 18650 battery.

First option is 18650 lithium ion cells. Standard practice, easy to get hold off and you can get space certified versions. But they are really uncomfortable package for PCB stacking. For a minute I though about AAA sized liion cells, one can get thinner power system, when using them. But they are as hard to assemble as 18650 cells and there has to be quite many of them (10-12 pieces).

Using AAA sized lithium ion cells for storage.

Using AAA sized lithium ion cells for storage.

Another option is to use RC hobby market to get cheap and good batteries. Like these 5.6Ah lithium polymer cells - cheap to buy, easy to assemble, no worries about blowing them up. Unfortunately lithium polymer has two times less energy density than lithium ion. Normally we don't have high current busts in common satellite power system so lithium polymer battery strength will be unused.

After searching around for a long time I finally found some pages that sold prismatic lithium ion cells. One idea is to use two 1.5 Ah soft case cells and press them between pcbs. That would get us 11.1 Wh of capacity with 10 mm thick power system.

EPS using prismatic lithium ion cells.

EPS using prismatic lithium ion cells.

Finally I found Panasonic UF103450P hard case prismatic lithium ion cells. They are flat and look like phone batteries and since they are hard case - we can glue/solder them on the PCB and be done with it. Sourcing will be a bit hard, but the result - 13.3 Wh system at 12 mm thick, single PCB power system is really good. After a bit of search I found multiple companies that sell prismatic lithium ion cells. Like this and this. The second site (a bit down at the moment) gives us 6.7 mm 2Ah batteries. Excellent!

All of the final battery options are good and worth using in a satellite, which one to use depends on the client (you!).

Posted in Space | Comments (3)

MSP430FR variables to FRAM

jaanuar 16th, 2013
by jaanus

So I use MSP430FR because it has FRAM. But it also has 1 kB of SRAM and all the variables and the stack is in the SRAM. That is no fun I want my data do be safe and maybe even survive a power off.

First idea is to use static addresses. But that is super bothersome and error prone to more than 2 variables.

Fortunately there is linker command file in the Code Composer Studio project - lnk_msp430fr5739.cmd. I found lines 119 to 121. They say that variables and stack should be in ram. One simple hack later and:

119
120
121
.bss       : {} > FRAM          /* GLOBAL & STATIC VARS */
.data      : {} > FRAM          /* GLOBAL & STATIC VARS */
.stack     : {} > FRAM (HIGH)   /* SOFTWARE SYSTEM STACK */

Checked it out with debugger, and indeed. All variable memory locations were in FRAM area (device datasheet, pg 23, Table 6. Memory Organization).

Fun - but.. but... there are restrictions that apply!

1. FRAM speed is 8 MHz

So if your MCU is faster then all operations with memory will be delayed a bit. There is some caching, but my application run at 8 MHz and everyone else's even slower so whatever.

2. FRAM is non volatile

You can be extra sure that all your variables contain random values at startup. Or - not random, but the same that they had on last power down.

3. FRAM is not indestructible

Datasheed explicitly warns about it. But also it says that it will survive 1015 writes. Most read and writeable variable in my code is i. It is the counter in inner loop. It gets read or written (endurance wears with reading too, it has destructive reading) about 5 times per loop. Inner loop runs 100 times and the outer loop runs at 600 Hz. So my code writes the variable at 5*100*600 Hz = 300 kHz. With this much use the FRAM will be destroyed in - 105.62 years... So.. I think I'm good.

Posted in Soft | Comments (0)

Texas Instruments Grace download

jaanuar 13th, 2013
by jaanus

I still hate registration walls and US export approvals. I upload so you wouldn't have to see them. This time: Grace – Graphical Peripheral Configuration Tool. Also, my server seems to be faster than ti.com...

http://jaanus.tech-thing.org/img/grace_setup_2.0.0.00017.exe

 

Posted in Soft | Comments (0)

Arduino Mega FRAM shield

jaanuar 2nd, 2013
by jaanus
FRAM memory shield

FRAM memory shield

Want some more RAM - you got it. Want it to be radiation tolerant and non-volatile - we have got what you need. Arduino Mega Ferroelectric RAM shield. It uses one Ramtron SOIC-28 package non-volatile memory - like FM16W08-SG or FM18W08-SG. It is a parallel memory that is mapped right on your ram. And non-volatile means that you don't have to use that EEPROM any more, you can save data right in your RAM.

Board has room for one memory and one latch, needed for the bus. Besides that there is also a little AND gate to make protocols of AVR and FRAM work with each other - there were some pin differences. The schematic is tested and working but the board layout isn't.

And just a little extra something - there is a parallel FRAM on the bottom of the board. It hooks up to your SPI and works like a serial flash chip. You can use Ramtron FM25640B-G and other pin compatible devices.

Info about how to use an external RAM with Arduino Mega.

Schematic in PDF format

Design files in EagleCAD 5

 

Posted in Space | Comments (0)

LM48580 and LM4960 testboards

detsember 26th, 2012
by jaanus

Since LT3572 outputted only digital signal and I needed analog, I found some new chips. I was targeting class D piezo speaker amplifiers. Piezo speakers are used in places where there are not enough space for normal speakers. They are harder to drive and control (high voltage, capacitive), but have much more output power in smaller volume. Class D amplifiers use high frequency digital switching to make lower frequency analog signals.

LM48580 development board

LM48580 development board

Next in line were LM48580 and LM4960. Both had boost converters and worked from single cell lipo.

The LM48580 is in BGA package. Fortunately only 12 balls and all the middle ones can be shorted with neighbouring balls. I tried to solder it with reflow oven but school's stupid oven has ventilators in it that blew the chip away from the board. After trying to solder it for couple of times I finally got it on good enough. Large amount of solder paste and hot air was needed. And since it is BGA, every desoldering destroys your chips - so I destroyed about 3-4 chips in the progress.

While debugging I noticed that the boost converter isn't working. I got a little freaked out, but while explaining the problem to a friend I remembered that this is class H amplifier. Meaning that the boost converter output is as low as it can be to be more efficient. Since I was not driving it with signal the boost converter was in standby. After applying some signal it all started to work magically.

LM4960 testboard

LM4960 testboard

As I learned - both of these chips are differential output chips - meaning that they will reverse the outputs to get two times as much peak to peak output to speaker. It can be a good thing for speakers but since my motor cannot be reverse biased I didn't end up using these chips.

Schematic of LM49590 testboard (PDF)

Schematic of LM4960 testboard (PDF)

Design files (EagleCAD 5)

Posted in Small projects | Comments (0)

LT3572 development boards

detsember 19th, 2012
by jaanus
First version of LT372 testboard on Arduino Mega

First version of LT372 testboard on Arduino Mega

When designing piezo motor controller I tested a lot of ceramic loudspeaker control chips. Now I'm uploading all the design files and pictures.

The first chip I tried was LT3572. It has a 0.9A 40V boost converter and 0.6A 2 channel h-bridge made from BJT transistors. This QFN package chip works with voltages 2.7 V up to 10V - classical one cell lipo targeting chip. Although it looked good, I didn't use it because I had an partly inductive load and voltage spices killed all output transistors. It is good for generating digital signals into a high voltage capacitive only load.

The first board was small and had only necessary components. The second one is quite application specific and has some weird design decisions like series capacitors and stuff like that.

With this board I learned that wrong soft start capacitor will blow your circuit, tens of times.. Also that soldering a QFN to self made board is nearly impossible.

Schematic 1 (PDF)

Schematic 2 (PDF)

Download design files (EagleCAD 5)

Second version of the board

Second version of the board

Factory made version of the second testboard

Factory made version of the second testboard

Posted in Small projects | Comments (0)

MSP430 experience

detsember 3rd, 2012
by jaanus

Buzy times at school - I'm developing a motor controller for ESTCube-1 satellite. We decided to use MSP430FR series MCU in it because it uses ferroelectric RAM and should be more radiation tolerant than regular MCUs. Besides I wanted a excuse to learn Texas Instruments microcontrollers.

MSP430FR development board programming target board

MSP430FR development board programming target board

Schematic was quite straightforward - I took MSP-EXP430FR5739 Experimenter Board Eagle files and used that as a reference. I also use the same board for programming. That makes software side really easy - PC thinks it is talking with regular development board.

Unfortunately I couldn't get the software up and running on the linux yet. Programmed first few test programs with my other computer and will get back to installing it on linux in couple of weeks.

While using MSP, I noticed some annoying things. Like the MSP family datasheet has default values and register descriptions in different places. And setting the 16 bit registers bit by bit is confusing. Fortunately I found the code examples fairly quickly and that got me up and running in no time.

But to finish the evening I made some voltage tests with my board. The chip should handle voltage up to 3.6V. I had some mosfets connected to IO pins that didn't want to open at 3.3V, they wanted something more like 4V. So I cranked the voltage up to 4.2V. It worked for couple of seconds and after that all the IO pins of the MCU were dead. I could program and debug it and the crystal was oscillating, but none of the pins worked any more. So yea, that was fun, more of that soon.

Posted in Space | Comments (0)

Bugs on your board #1

oktoober 27th, 2012
by jaanus
  • Only passive you didn't triple check blows up your circuit five times
  • Code in the interrupts don't work - forgot to initialize the interrupts
  • Resistor you soldered was for compatibility with other chip, but with your one it works as a disable
  • Quadrotor is uncontrollable: can't find bugs from code, the motors and propellers were wrong way
  • You forgot battery powered thing on, your last battery died
  • Mosfet's drain and source are swapped, everything goes up in flames because of body diode
  • 20x microscope I bough magnifies too much, I can't see bigger chips than 1206
  • You use delay in interrupt.
  • You use interrupt in your interrupt.
  • Programming doesn't work, pinouts are correct, device was turned off
  • Transistor pinout is wrong - as always. Rotate you resistor 120 degrees.
  • Software PWM behaves erratically - interrupts were enabled in time critical loop  
  • You have two main loops

Posted in Small projects | Comments (0)

OpenCV on Beagleboard ubuntu 12

oktoober 19th, 2012
by jaanus

It's robotex season again, time to release one of my old posts that I had use of again.

So. OpenCV for my BeagleBoard. I didn't want to compile it from source so basic linux training continued. After watching OpenCV linker errors:

gencode1.cpp:(.text+0x27): undefined reference to `cvNamedWindow'
gencode1.cpp:(.text+0x3c): undefined reference to `cvShowImage'
gencode1.cpp:(.text+0x59): undefined reference to `cvNamedWindow'
gencode1.cpp:(.text+0x6e): undefined reference to `cvShowImage'
gencode1.cpp:(.text+0x7a): undefined reference to `cvWaitKey'
gencode1.cpp:(.text+0x8f): undefined reference to `cvReleaseImage'
gencode1.cpp:(.text+0xa4): undefined reference to `cvReleaseImage'

A friendly face in the lab said that the linker part of g++ command has to be in the end of the command. That's it, I'm going to C starter course..

So now, the easy part. I installed OpenCV from ROS repo after this tutorial.

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu natty main" > /etc/apt/sources.list.d/ros-latest.list'
wget http://packages.ros.org/ros.key -O - | sudo apt-key add -
sudo apt-get update
sudo apt-get install libcv-dev libhighgui-dev libcvaux-dev libboost-dev

Tried compiling, still some bits missing from GUI:

/usr/bin/ld: cannot find -lboost_thread
collect2: ld returned 1 exit status
sudo apt-get install libboost-thread-dev libboost-system-dev

Posted in Robotex | Comments (0)

Column heater

detsember 19th, 2012
by jaanus
Overview of the DIY PCB column heater

Overview of the DIY PCB column heater

In summer I got a job to build a column heater for local biomedicine laboratory. They basically bought it from me so I can release  all the design to open source. You can build one yourself or if you don't want to, I can build more of these. There are commercial ones available but they are much more expensive than an university student.

Column heater itself is needed for ion trap mass spectrometry. Basically it is a process used to determine composition of biomolecules. They had Thermo LTQ XL (datasheet) machine for this. Their machines couldn't accept long columns. Workaround to this is to heat the column, so that is what I had to build.

Close up of heating track

Close up of heating track

I built PCB heater, because this was the easiest idea to heat a surface. The idea came from PCB heated bed for RepRap. I milled out the heater from 18µm/0.5oz PCB. The track length is 37cm, width 0.5mm and resistance about 4Ω. Whole plate is covered with heat resistance lacquer CPL200H and  heated side is covered with cheap ebay thermal glue. The lacquer was advertised to have up to 100°C operating temperature, the same as my machine, but it started to smell at bit at 50°C.

Control circuit consists of small THT thermistor soldered to heater PCB. Electronics is in small plastic box and attaches to computer with USB. I used Erik's U4 devboard and soldered P-channel mosfet to it to switch the heater. The heating power comes from random 19V laptop power supply. The software is simple proportional PWM control that accepts numbers over virtual serial and reports back temperature it is at. I used teensy virtual serial example as a base.

The C source and KiCad design files are available from here.

UPDATE:

Self made column heater

Self made column heater

Half a year or so later I talked with the people in the lab and they said it worked as it should. Got one picture of the ready made thing.

Posted in Small projects | Comments (0)

Bugs on your board #0

august 26th, 2012
by jaanus
Me and Markus have been debugging our projects couple of days. As always in electrical engineering - you fail all the time. So I thought to write down today's failures and couple of old ones related to today's ones.
  • Tantalum capacitor blows up because they mark it the other way than electrolytics
  • Potentiometer is routed in the wrong way - output is logarithmic where it should be linear
  • Potentiometers next to each other work opposite ways
  • Pinheaders are so close that you can't plug into both of them at the same time
  • You accidentally deleted the file and forgot to backup... again
  • There is no pullup on reset
  • HWB leg on atmega8u2 is pulled high, not low
  • SCK from programmer is routed one pin left
  • Two row connector is soldered on wrong side of the board
  • Forgot to solder ferrite beads - no power on your chip
  • Cold joint on your chip - pressure from test lead makes contact, so you don't detect it with measuring
  • Regulator in unstable because you haven't soldered most of the circuit in place

Posted in Small projects | Comments (0)

Low-dropout voltage regulator instability with ceramic capacitors

august 26th, 2012
by jaanus
Unstable low-dropout regulator

Unstable low-dropout regulator

While testing fourth revision of my power supply board, I noticed that it was buzzing, couple of cycles of power later it stopped. After some research I discovered that the output of the 5V LDO voltage regulator was outputting 0.5V triangle wave at 800Hz. Well, this is awkward, nothing like this happened with the old board. I have like 10µF of ceramic capacitance on the output to make this not happen.

A bit of reading later and I found out that ceramic capacitors on output of low dropout linear regulators cause instability. To combat this, you can put resistors in series with your capacitors or add more load. I powered only one low power opamp from there. Adding 100Ω resistor to ground really fixed it. From the last revision I moved decoupling caps closer to the regulator so that lowered the ESR even more. In the datasheet of the regulator it says nothing about choosing output capacitor. The only place in mentions capacitors is: "Cout = 680 nF in series with 1Ω". So, everybody knows that you are supposed to put resistors in series with your ceramics?

I expect the problem to go away when adding all the other load to 5V load, but still an interesting problem.

Posted in Small projects | Comments (1)

Eeweb and advertising

august 21st, 2012
by jaanus

Eeweb wanted to exchange links with me. Like always it sounded like a trap, but no. On closer examination it came out that they host webcomic that I read every week. I just have to link them now: http://www.eeweb.com/rtz . Because I love webcomics.

Return to Zero webcomic

They also wanted me to link their toolbox. So I checked it out and I was baffled to see all those tools. All calculators I had needed and that I couldn't find like Trace Resistance calculator that I needed for my last project and couldn't find one. And all done in pretty javascript, eye rests on it.

To not make it too one sided: check out Ohm's Law calculator on the12volt.com. Basically it has calculators to calculate I, U, P and R from each other in every combination. Super useful if you are too lazy to bend the formulas.

And to make it clear, they didn't pay me. I link them and everybody else because I like the content. At some point I thought about putting advertisement on my page to make it pay for itself, but now I don't want any more. There is enough stupid ads everywhere and I don't need that money so bad. Besides, if you are like me, all the ads take you to HobbyKing anyway, so go there without ads and buy their stuff. They are good and cheap.

Posted in Teardowns and reviews | Comments (0)