Skip to main content

Topics

This section allows you to view all Topics made by this member. Note that you can only see Topics made in areas you currently have access to.

Topics - erdabyz

1
Project development, ideas, and suggestions / Need help from analog gurus. 78L08 output at -0,9V
I have a problem with a prototype circuit I had to rush in a week. It pretends to be a dual channel very high quality audio DAC with some requirements for distortion, flatness and bandwidth. I based it on the PCM1794A from Texas Instruments using a slight variation of the proposed output buffering circuit in the datasheet (uses LT1028 as differential amp and a couple of NE5534 as IV converters for each output).

We use a triple channel switchmode PSU (that switches at 110 kHz) to power the whole system (it must fit in a 1U rack case and height is too constrained for a linear PSU) with +5V, +12V and -12V rails. In the DAC board the +-12V rails are LC filtered and post-regulated using 78L08 and 79L08 regulators to the +-8V that feed the opamps of the oputput stage. They're decoupled using ceramic caps (and i'm aware it might be part of the problem). The 78L08 is TI branded (ua78l08) and the other is MCC branded

The problem comes when we power up the board. The -8V rail gets to -8V without any problem but the +8V one goes to -0,9V and stays there. Then, if you unplug the -12V rail the +8V rail goes up to spec and stays there. Then if you re-plug it the -8V rail goes up and both rails stay up and the thing runs until you power the board off. We've red-necked the issue adding a delay switch in the -12V rail so it only powers the board once +8V are present but this must be turned into a commercial product in about a month and I'd rather solve the issue than patch it.

Any clues about what may be happening? Something should be pulling the +8V rail low until it reverse-biases a transistor in there preventing regulator startup, hence suspiciously staying at -0,9V, but I don't know how to solve the issue right now. Any clues?
2
General discussion / Dirtypcbs messed my order.Does anyone recognize these pcbs?
I ordered some PCB's from dirtypcbs back in april to try the service. Today I've received the package containing wrong PCB's. Does anyone recognize these?



I've not opened the package and I cand send them to their owner if ownership proof is given. If no claim is given in 15 days I'll open the package, look for info and if I get the schematic and BOM build whatever they are supposed to be.
3
Project logs / Help with an OLED screen
I need to get a OLED screen to work, concretely this one:
http://item.taobao.com/item.htm?id=6062 ... 317209.0.0
According to the manufacturer they have the same controller and work like a different 1.04inch model that seems to have been tested by some people and there's even an arduino library.

I've bought 20 of them for a project because I already had one that I bought 3 years ago that I could use for prototyping while the others arrived, and knowing that there are libraries out there I thought it would be easy to make them work.

I've made a small prototyping board with a PIC and a boost converter to supply 13.5V for the screen generated from 3.3V. The regulator seems to work well and the screen responds to all of my commands, in fact I've gotten it to display whatever I want but with a very very faint white-ish glow that It's almost impossible to see unless in total darkness. I've based my code on the files provided by the taobao seller (the code seems to have some errors that I think I've fixed) and on the SSD1332 datasheet itself but I can't get them to properly work.

I've tested and measured the voltages generated by both the regulator and the screen and all are up to spec (even checked ripple with an o-scope). I've tested all the commands available for the SSD1332 according to the datasheet with different values and in different order. I've also tried asking the seller but he says that he hasn't got more info than the two files posted in the taobao page. I'm respecting the recommended power-on sequence too.

I've also noticed (too late) that in the comments page there seems to be some people complaining that they can't get them to work either, while they could make the 1.04inch version work (at least that's what google translator says).

Any clues?
4
Project logs / High altitude balloon electronics
I'm part of a students association and we've had a helium tank in our place since 2003 which is still almost full. None of the current members knew where it came from until recently (turned out that we had a RC blimp of some sort back in those days...). So some time ago a member proposed that we could spend it in a high altitude balloon. Being electronics enthusiasts we thought about building our own electronics for the payload, trying to fit as much as possible in as few grams as possible. For now it's planned that the probe will have an APRS tracker, an emergency 433MHz tracker, a GPS module of course, a GSM module for sending a SMS with the landing position if network is available, a board with lots of sensors (temperatures, atmospheric pressure, light intensity, gamma/cosmic radiation, 3D acc+gyro+mag, humidity and probably wind speed (we're still not sure if that would be possible with a cheap, lightweight sensor). The whole thing will be controlled by a PIC32 and powered by 3xAA Lithium energizer batteries which are safer than lipos and tolerate very well low temperatures. It will log all its data into a microSD card. The electronics are composed by a mainboard with the PIC32 and some power supply stuff and 5 main verical modules that attach to the mainboard creating some sort of pentagonal prism which will be stuffed with thermal insulating material(a design that looks like the new mac pro's, but we thought it earlier). We've tried not to reinvent the wheel and we've adapted some designs from other people to our shape constraints.

Those 5 modules are:
-GSM module using a SIM900 GSM module and a power supply based on a TPS63020. This is our design.
-GPS module based on a SIM18 module, also our design. It'll use a passive patch antenna.
-APRS tracker which is just a stand-alone trackuino adapted to our design: http://www.trackuino.org/
-Sensors board which we are currently designing.
-Mission support board which will have power mosfets for the rope-cutting mechanism, heaters and some other stuff that's still to be defined.

Apart from those there's also a low power emergency 433MHz tracker which gets powered by two CR2032 batteries. In the event of a main power malfunction this tracker will power and take control of the GPS module to keep sending tracking data. We also designed the radiation sensor as a separate board because it'll be positioned in a different place.It is based on a design from elektor. I can't post the article's PDF because of possible copyright issues.

We'll also carry a mobius action camera inside to record the flight. We already have the balloons, the rope, the camera, the required antennas, legal information about the required permissions, some of the firmware and most of the electronics designed. We also have people with the required APRS receivers and radio licenses. The GPS and GSM modules are built and tested OK, soon we'll assemble the mainboard, the trackers and the radiation sensor.

Here's everything we've designed for now. There are separate files for the mainboard and the GSM module but everything else is fitted into a "panelized" PCB to save costs, I don't have the individual design files for each sub-board. The schematics may be a bit "dirty" and some values can be wrong or would need tweaking. I'll post final design files when everything is done.

[attachment=2]
[attachment=1]
[attachment=0]

The antenna connections are designed so you can either stuff a U.FL connector or to bypass it with a 0ohm resistor and stuff a SMA edge mount connector. The GPS has a footprint for either a U.FL or a sarantel SL1206 helix antenna that we have from a previous project, but we'll use a passive ceramic patch antenna in this case, mounted on the top of the probe and brought to the module via thin coax terminated in a U.FL. The groundplane and mounting features for the patch are also included in the panelized PCB. Here's a picture of the GSM module which I've been testing these days:
5
General discussion / PIC32 I2C slave responds to spurious addresses
I'm trying to implement I2C slave functionality in a PIC32. I'm using a Chipkit UNO32 for testing but the final implementation will use a PIC32MX250F128D. I've gotten the basics to work thanks to this example:
http://hades.mech.northwestern.edu/inde ... een_PIC32s
And now I'm trying to adapt it to the new peripheral libraries to avoid using legacy ones. I'm using a BusPirate as I2C master set to 50kHz operation. Using the I2C scanner macro the busPirate detects a device in the correct address... but also in several other I2C addresses to which the PIC responds and that are always the same no matter what the "real" address is set to. Address mask is set to 0.

Here's the code: (stil a rough test with 90% copypasta from that example):
Code: [Select]
/******************************************************************************/
/*  Files to Include                                                          */
/******************************************************************************/
#ifdef __XC32
    #include <xc.h>          /* Defines special funciton registers, CP0 regs  */
#endif

#include <plib.h>          /* Include to use PIC32 peripheral libraries      */
#include <stdint.h>        /* For uint32_t definition                        */
#include <stdbool.h>        /* For true/false definition                      */

#include "system.h"        /* System funct/params, like osc/periph config    */
#include "user.h"          /* User funct/params, such as InitApp            */

/******************************************************************************/
/* Global Variable Declaration                                                */
/******************************************************************************/


#define Fsck 50000
#define BRG_VAL ((PBCLK/2/Fsck)-2)

// this is the modules Slave Address
#define SLAVE_ADDRESS 0x33
#define mLED_2_On() LATGbits.LATG6=1
#define mLED_3_On() LATFbits.LATF0=1
#define mLED_2_Off() LATGbits.LATG6=0
#define mLED_3_Off() LATFbits.LATF0=0
/******************************************************************************/
/* Main Program                                                              */
/******************************************************************************/
volatile unsigned char dataRead = 0;

///////////////////////////////////////////////////////////////////
//
// InitI2C
//
// Perform initialisation of the I2C module to operate as a slave
//
///////////////////////////////////////////////////////////////////
void InitI2C(void)
{
I2CEnable(I2C1, FALSE);

      // Configure Various I2C Options
      I2CConfigure(I2C1, I2C_ENABLE_SLAVE_CLOCK_STRETCHING);
      // Set the I2C baudrate
      I2CSetFrequency(I2C1, PBCLK, Fsck);


      //Set I2C slave address
      I2CSetSlaveAddress(I2C1, SLAVE_ADDRESS, 0,I2C_USE_7BIT_ADDRESS);

      // Enable the I2C bus
      I2CEnable(I2C1, TRUE);
// configure the interrupt priority for the I2C peripheral
      INTSetVectorPriority(INT_I2C_1_VECTOR,INT_PRIORITY_LEVEL_3);
      INTClearFlag(INT_I2C1);
      INTEnable(INT_I2C1,INT_ENABLED);

}

int32_t main(void)
{

#ifndef PIC32_STARTER_KIT
    /*The JTAG is on by default on POR.  A PIC32 Starter Kit uses the JTAG, but
    for other debug tool use, like ICD 3 and Real ICE, the JTAG should be off
    to free up the JTAG I/O */
    DDPCONbits.JTAGEN = 0;
#endif

    SYSTEMConfig(SYS_FREQ, SYS_CFG_ALL);

    /* Initialize I/O and Peripherals for application */
    InitApp();

    INTConfigureSystem(INT_SYSTEM_CONFIG_MULT_VECTOR);
    INTEnableInterrupts();
    /* TODO <INSERT USER APPLICATION CODE HERE> */
InitI2C();

// main loop
while (1) {
/* If global variable "dataRead" is set high during interrupt, turn on all LEDs */
if (dataRead == 0xAA)
{

mLED_2_Off();
mLED_3_Off();

}
}
}


///////////////////////////////////////////////////////////////////
//
// Slave I2C interrupt handler
// This handler is called when a qualifying I2C events occurs
// this means that as well as Slave events
// Master and Bus Collision events will also trigger this handler.
//
///////////////////////////////////////////////////////////////////
void __ISR(_I2C_1_VECTOR, ipl3) _SlaveI2CHandler(void)
{
unsigned char temp;
static unsigned int dIndex;

// check for MASTER and Bus events and respond accordingly
if (IFS0bits.I2C1MIF == 1) {
mI2C1MClearIntFlag();
return;
}
if (IFS0bits.I2C1BIF == 1) {
mI2C1BClearIntFlag();
return;
}

//mLED_2_On();

// handle the incoming message
if ((I2C1STATbits.R_W == 0) && (I2C1STATbits.D_A == 0)) {
// R/W bit = 0 --> indicates data transfer is input to slave
// D/A bit = 0 --> indicates last byte was address

// reset any state variables needed by a message sequence
// perform a dummy read of the address
temp = SlaveReadI2C1();

mLED_3_On();
mLED_2_Off();
// release the clock to restart I2C
I2C1CONbits.SCLREL = 1; // release the clock

} else if ((I2C1STATbits.R_W == 0) && (I2C1STATbits.D_A == 1)) {
// R/W bit = 0 --> indicates data transfer is input to slave
// D/A bit = 1 --> indicates last byte was data

mLED_3_On();
mLED_2_On();
// writing data to our module, just store it in adcSample
dataRead = SlaveReadI2C1();

// release the clock to restart I2C
I2C1CONbits.SCLREL = 1; // release clock stretch bit

} else if ((I2C1STATbits.R_W == 1) && (I2C1STATbits.D_A == 0)) {
// R/W bit = 1 --> indicates data transfer is output from slave
// D/A bit = 0 --> indicates last byte was address

mLED_2_Off();
// read of the slave device, read the address
temp = SlaveReadI2C1();
dIndex = 0;
SlaveWriteI2C1(dataRead);
} else if ((I2C1STATbits.R_W == 1) && (I2C1STATbits.D_A == 1)) {
// R/W bit = 1 --> indicates data transfer is output from slave
// D/A bit = 1 --> indicates last byte was data

mLED_2_On();

// output the data until the MASTER terminates the
// transfer with a NACK, continuing reads return 0
if (dIndex == 0) {
SlaveWriteI2C1(dataRead);
dIndex++;
} else
SlaveWriteI2C1(0);
}

// finally clear the slave interrupt flag
mI2C1SClearIntFlag();
}

With that code the PIC responds to all these addresses:
0x01(0x00 R) 0x02(0x01 W) 0x03(0x01 R) 0x04(0x02 W) 0x05(0x02 R) 0x06(0x03 W) 0x07(0x03 R) 0x08(0x04 W) 0x09(0x04 R) 0x0A(0x05 W) 0x0B(0x05 R) 0x0C(0x06 W) 0x0D(0x06 R) 0x0E(0x07 W) 0x0F(0x07 R) 0x66(0x33 W) 0x67(0x33 R) 0xF8(0x7C W) 0xF9(0x7C R) 0xFA(0x7D W) 0xFB(0x7D R) 0xFC(0x7E W) 0xFD(0x7E R) 0xFE(0x7F W) 0xFF(0x7F R)

Any clue?

EDIT: by responding I mean that it turns off both leds when I send 0xAA to any of these directions.
6
General discussion / SHARP GP2Y0A21 peak current consumption?
I need to power six of these sensors over USB. I thought it would be a reasonable thing to do because the datasheet states that they have an average current consumption of 30mA and the board will always be connected to the computer (It won't be hot-plugged) so I can play with capacitance and add "as much as I want" even if the standard imposes a limit of 10uF without soft-connection.

The datasheet says nothing about peak current or pulse frequency (I hate japanese brands datasheets for these things...) but I assumed it wouldn't go past about 100mA.

The problem is that peak current consumption looks to be much much higher than that. Maybe my sensor is defective but I've measured the resistance from the USB connector to the power pin of the sensor to be about 0.7 ohms and every time the sensor fires a burst of IR the voltage drops about 1V. I think it's not inductance related because the waveform of the voltage matches the waveform of the burst sequence. Every time the LED turns on the voltage immediately drops 1V for the time the LED is ON and then climbs back to about 5V. Rise and fall times are in the order of 1us.

An updated datasheet of the sensors suggests adding at least 10uF of capacitance near the sensor. The problem is that in this application the sensors are connected to the board with a wire that's about 30cm long.

The whole problem is that those fluctuations in the power rail make the microcontroller get unstable until the USB transceiver freezes. And that's with just one sensor...

Has anyone played with this sensors and experimented the same behaviour? Why the hell doesn't the sensor include its own capacitor?
7
General discussion / What is wrong with this analog circuit?
I'm designing a simple board to control two liquid pumps and several other things. The pumps are for pulverizing a product and they work once in a while, being active for about 100 to 200ms (they are high speed pumps specific for pulverization). As the board is controlled by a computer  via USB CDC and they will be the programmers (I only have to give them an arduino-ish abstraction layer so they can copy-paste sketches and get them running in a PIC) they wanted an extra layer of safety to prevent the pumps for being active for more than half a second if the microcontroller went crazy for some reason. Of course there's the watchdog to handle those situations but to be even safer I designed a very small circuit that should limit the duration of the pulse. It's basically a high time constant highpass filter driving a low threshold mosfet with some diodes placed in there to avoid negative spikes at the mosfet's gate, not because they would kill them but just to be a bit safer. That MOSFET drives an optocoupler and has a 1V threshold voltage.

Here's the circuit:


The real MOSFET is a DMG1012 which is smaller than the AO6408

If there's a rising edge at V1 then D1 would turn on and C1 and R3 would make a highpass filter with a high time constant. The expected waveform at the transistor's gate would be a slow-decaying negative expontential starting at about 4.5V. That would turn on the MOSFET until the exponential decay reaches about 1V, and then the MOSFET would turn off. When there's a falling edge then D2 would turn on and R2 and C1 would make a smaller time constant highpass filter with a much faster decaying exponential so that the circuit would quickly be ready for the next rising edge. So basically the circuit would behave "transparently" as long as your pulse duration is short enough, and would limit the pulse duration if the pulse length exceeds the time it takes for the negative exponential to reach the threshold voltage. With the values shown the pulse width limit would be about 600ms.

R1 is there to limit inrush current and I haven't taken its effect into account for the highpass explanation.

I've simulated the circuit in LTspice and I've even added the estimated parasitic inductance of the PCB trace and the estimated series resistance of the PIC's output driver and it works just as expected in the simulation. I also used LTspice's models of real ceramic capacitors. But in reality I can't get it to work. It limits the pulse to less than 20ms and the exponentials don't get to 5V but only reach about 1.8V. And I have a negative spike of -4.5V at the mosfet's gate every time there's a falling edge. I've checked the PCB layout and looks fine.

LTspice is supposed to simulate diode turn-on and turn-off times and most parasitic effects and the simulation works perfectly. Anyone can give me a clue about what's wrong?
[attachment=0]
8
Project development, ideas, and suggestions / Cheapest USB microcontroller arduino-able alternative?
I have to design a board that needs to control a couple sensors and drive an actuator. Very simple operation, nothing really fancy. Only characteristics required are a simple ADC and the ability to communicate to a PC over USB, if possible via a virtual serial port.
Also, the guys who developed the prototype did it on an arduino and they don't want to port too much code and are not experts in microcontrollers. I know about the V-USB library and I wonder if theres's some stand-alone arduino implementation that works over v-usb in a cheap micro like an ATTINY 2313. Also, if no simple alternatives exist, anyone knows how does the microchip/honken USB stack work in PIC16F145X microcontrollers?
9
Project development, ideas, and suggestions / Re: Review this PCB please
If the attached pictures are from your board's design and if it's meant to be a two layers board, then I'll just place some stitching vias between top and bottom groundplanes to improve grounding a bit and I'd clean up floating copper areas (unconnected copper fills) because they can act like patch antennas  and although most times that isn't a concern it's always better not to have them.

For anything else it looks perfectly nice and solderable to me.
11
Project logs / Attempt to fit a quadcopter in a 5x5cm PCB
This is something I've been working on these days. The other day I was thinking about what would be the coolest possible thing you could fit in a 50x50mm 2 sides PCB. How about a quadcopter?

I'm aware that miniquadcopters have already been done but I'm not sure if anyone has tried to fit one in such a small size. I've tried to design one that would fit. It's powered by a PIC32 and it uses a MPU-6050 as the inertial sensor, which will implement the motion-apps firmware inside to offload the main processor from motion fusion algorithms. I've thrown in a MAX1555 as battery charger via a microUSB port which will also be used to program the PIC via bootloader, as no ICSP pins are available. The PIC will have to be programed with the bootloader before soldering. I'll figure out how to do that. It also has a MPL3115A2 precission altimeter/barometer for altitude control and a TPS63031 as the main switchmode buck-boost regulator for everything but the motors (maybe overkill, but I couldn't find anything smaller). It will use 4mm coreless tail motors and propellers from SYMA S107 helicopters. Maybe that won't be powerful enough and bigger motors will be required, who knows. Each motor features an independent integrated H-bridge from Texas Instruments (DRV8837). Surely I could have just used a discrete mosfet per motor, but I didn't want to prematurely limit the capabilities of the thing. Maybe it turns out powerful enough to perform backflips and fly inverted, and motor direction control would be required for that. It uses a cheap HC-05 serial to bluetooth module for communications. Other radio options were thought and I don't fear RF desings, but I just wanted to keep things simple for now on that side.

As always here's the board and schematics. Schematic is crappily laid out, but I've tried my best to route the PCB. Beore you say it, I'm aware that the 22uF capacitors are placed in one of the worst possible spots and that they will likely break or crack sooner than later. We'll see. I've also checked that the microUSB connectors can indeed be soldered.
[attachment=0]
Don't expect too many updates on this one, but I'll tell you and provide code if it finally works. For now boards and components have been ordered. First prototype will be built in about 15 days and firmware development will start at some time. The question here is will they fly? Only time will tell!.
12
Project logs / Geiger counter with SI-3BG russian tube
You already know that I'm building a theremin. I'm now in my finals period so I have no time to dedicate to the theremin. I panelized another design in the same PCB to fill a 10x10cm square, and that design was a SI-3BG based geiger counter I quickly made it to fill the leftover board area. As this is a pretty simple project it took me less than 2 spare-ish hours to assemble it and code something to make it somewhat work. I copied the PSU design from mightyohm and I don't particularly like it. I'm using a PIC16F1508 as the microcontroller (just because I had it on hand) and it has a configurable logic cell. Maybe in a future revision (if there's any) I could just use the same microcontroller to control the PSU, and get advantage of the CLC to implement some sort of spread-spectrum technique or to use a multi-stage voltage multiplier.The PSU has to step up a single li-ion cell to about 400V. Mightyohm's PSU does this in a single boost stage with fixed duty PWM, and as the boost factor is pretty large it uses a very large inductor. Using that scheme with such a coil makes it beep at audible frequency and that bothers me a bit.

Anyways, I used a PIC16F1508. Timer 1 uses a secondary xtal oscillator at 32,768kHz as clock source. Every 2 seconds the timer overflows. Output pulse from the geiger tube is connected to the external interupt pin. When there's a high to low transition a count is registered. Every 2 seconds the number of counts is stored into a circular buffer and the thing spits the counts per minute value out of the serial port every 2 seconds. At every count it also generates 2ms worth of 4kHz cycles with the PWM module to drive a buzzer and make a "clack" sound and makes a LED flash for the same amount of time.

I also threw in a FT232RL to get USB capability. The whole thing is powered by a single 1/2AA lithium battery also because I had the batteries and some holders on hand. I was too lazy to include a lithium charger so it could be recharged from the USB, and I also was too lazy to implement a mechanism to power the thing via USB. In fact there's no battery monitoring/protection mechanism whatosever and the PIC can't turn off the tube's PSU. I rely on the fact that the power consumption and the currents involved aren't high and on the PIC's BOR which trips at 2,7V. Safe voltage for Li-ions.  Again, this was a very quick design and I was lazy.

Here's a picture of the device:



Schematics and board can be found on my theremin post. Code shall be posted when I add some more functionality. Questions might be answered and more information could be given if requested.
13
Project logs / I'm determined to build a theremin.
Hi folks,

My girlfriend is a musician (well, for now she's a student) and some days ago she came to me saying that a teacher had told the class about some weird electronic instrument that you played without touching it and that was used to make alien sounds for movies. Being the electronics freak I am I automatically knew she was talking about a theremin. She was quite fascinated with it and told me she would like to try one.

So her birthday is relatively near and I'm determined to build her one as a present. But I wanted it to be a true theremin, fully analog, with all its LC oscillating glory... so I searched a bit and found this:
http://www.suonoelettronico.com/downloa ... herwav.pdf

That has an schematic which uses mostly modern components and that uses transconductance amplifiers which should emulate the original valves quite well. Actually that's the schematic of a kit that some folks sell for 400 bucks so you can make your own professional theremin. I also found the schematic it derives from:
http://wiki.joanillo.org/images/a/a0/EMTheremin.pdf
which has some info about the required inductors and that.

Finding the components was a pain in the ass. Virtually no distributor sells adjustable inductors anymore, and high-Q fixed inductors of over 10uH are also hard to find nowadays. Finally found some TOKO FDSV series adjustable inductors and some relatively high Q fixed inductors at RS components. And surprisingly they were SMD (hooray!). Ordered them ASAP. Also surprisingly the 10, 5 and 2.5mH chokes required for the antennas (BOURNS 6300 series) were available everywhere at a price I'd never imagined. I was expecting 5 bucks per coil but they are just 1,35€ each.

Next I ordered everything else from digikey. I have chosen quite premium components. Capacitors related to audio are either tantalum or poliphenylene sulphide film capacitors which are quite expensive but that way audiophiles won't say it sounds bad because my capacitors haven't got enough magic powder inside them. Also there are only a few caps that need to be this good and this is a present for someone I love beyond money so... I also threw in some 10uF 16V 0805 X5R capacitors for decoupling pourposes  that weren't in the original schematic but that I think they should be neccesary. 100nF's wouldn't do shit in this design as they have large impedances at the frequencies involved in the circuit. All the other caps are also high quality ceramics or similar but those run for pretty cheap.

LM13600M's were found on ebay.

I decided that unlike in the original desing i'd try to make the board as short as possible and assemble the RF chokes for the antennas in series and in line inside a plastic tube instead of mounting them in the board (well, I have to mount one in the board because of the way it is connected but the rest will be outside). That should improve the way the inductors couple to act like a single but "distributed" inductor with reduced parasitic capacitance and such things.

Next stage: design the PCB. I love squeezing circuits in tight layouts but having in mind a couple of good layout rules. I'm pretty happy with the result. It still needs a bit of touching and I've used overly large trace thicknesses just because and because I could. It's meant to be mounted upside down (the wooden case will have three holes in the bottom that align with the tunable coil's screws so I can tune the thing) and have the large 2200uF caps mounted at right angle. I have to correct that silkscreen, for example.

I'll try to finish the board this christmas and maybe populate one just for testing. The wooden box, the front panel an everything else will be made after I finish my finals.

Here's the current board and schematic. I hate doing schematics so forgive me for the lack of cleanliness... The board is much better done.
I may give away some of the boards when they're done if any of you also wants a theremin.

[attachment=0]
14
Project development, ideas, and suggestions / 1V to 144V PSU test with nixie tube
Long time ago I read an article explaining voltage multipliers and some other things, and I got the idea to design a power supply for nixie tubes that could run from batteries. I designed it, simulated it and left the design in a drawer until I recently decided to test it.

It uses a boost converter based on the LT1073 which has the specs I want, being able to tolerate 50V at the switch collector and being able to start from a single alkaline battery. The boost converter feeds a three-stage voltage multiplier with diodes and caps. The thing is limited to about 150 volts if you don't wanna fry the LT1073 switch. Right now, with the output set at 145V, peak voltages at the switch are around 42V, checked with simulator and o-scope.

I designed a small board for it with a microcontroller and a IN-12 nixie tube to make some kind of "nixie badge". I took great care designing the PSU part but the microcontroller part isn't very well designed and the thing lacks an ON/OFF switch. As the micro I chose could only run from 1.8V or more and there's a schottky diode between the battery and the micro I'm limited to use lithium cells with this. It has a 1/2AA (14250) battery holder and i'm trying to find LiFePO4 rechargeable 14250's, but for now i'm running it with CR2 batteries which kinda fit in the holder.

The design itself is not that good. It requires a bunch of (very) expensive components (I used 250V rated ceramic caps but I guess the thing could be made cheaper by adjusting the rating for each cap) and it's only 70-80% efficient with most losses occuring in the coil if running above 2-3V input or in the converter's switch if running from an alkaline battery. Unfortunately the thing requires 150uH of inductance and coils small enough with low series resistance to minimize losses simply don't exist. It could have been made smaller using a different topology likely involving a transformer, but I just wanted to test the voltage multiplier approach for the sake of it.


So here are a couple of pictures of the board and a file for LTspice IV with the schematic of the PSU. I'll post the schematic and the board file of the whole board later.



[attachment=0]

Hope you like it.
15
Project development, ideas, and suggestions / BusBlaster V3 free PCB build
Here's the picture:


I'm not sure on what to do now... I wanted to get the CPLD programmed and maybe some debug done but I can just find a software pack for BBv3 and i'm not sure about how to use it.

I mostly built this because I'm planning to get into ARM Cortex M microcontrollers and as far as I know bus blaster can program them.

Any clue?