Help with a 6 wire unipolar stepper motor

Hey guys, I'm make a stepper motor project with a 6 wire Unipolar stepper motor:1.8 degrees, 4V, and 0.9A. Every works fine with a wiring. instead of a driver I put 4 transistors in my project, each of them goes to the coils of the stepper motor. Their is two other wires connected to the middle coils to positive. My stepper motor works fine like it can change direction and change speed but I'm wondering, I need help with the microsteps for a Unipolar stepper motor 6 wires, like the easy and simple step is the full step, but I'm wondering, half, quarter, eighth and sixteenth steps. Just a reminder, I'm not using a driver to control it. I'm using transistors to connect the wires, the arduino board turns on and off four digital pins to each wire, to make it more sense I'm showing the schematic of it, I am posting part of the code to the stepper motor too, help with this please.


Code:
Step = step % 4;
if (Step == 0) {
A = 255;
B = 0;
C = 0;
D = 0;
analogWrite(6, A);
analogWrite(9, B);
analogWrite(10, C);
analogWrite(11, D);
delay(1);
}
if (Step == 1) {
A = 0;
B = 255;
C = 0;
D = 0;
analogWrite(6, A);
analogWrite(9, B);
analogWrite(10, C);
analogWrite(11, D);
delay(1);
}
if (Step == 2) {
A = 0;
B = 0;
C = 0;
D = 255;
analogWrite(6, A);
analogWrite(9, B);
analogWrite(10, C);
analogWrite(11, D);
delay(1);
}
if (Step == 3) {
A = 0;
B = 0;
C = 255;
D = 0;
analogWrite(6, A);
analogWrite(9, B);
analogWrite(10, C);
analogWrite(11, D);
delay(1);
}
To help more my stepper motor turns on and off like this.
arduino:
step1:
6:1
9:0
10:0
11:0
step2:
6:0
9:1
10:0
11:0
step3:
6:0
9:0
10:0
11:1
step4:
6:0
9:0
10:1
11:0

Your circuit makes no sense.

Your motor needs kickback diodes added.

What is the part number of the transistor ?

My transistors are 2n3055 power transistors, they don't need diodes.

You circuit is bizarre - the transistors are shown as emitter-followers (not used for switching), and with the emitter and collectors seemingly swapped (they should be sinking current if the centre-taps are +ve.).

You've also drawn the motor windings wrong - there are 4 windings, not 6.

You'd be much better off using it as bipolar and driving with something like a DRV8825. 6 wire motors can be used either as unipolar or bipolar.

You always need those diodes, you may have already damaged the transistors (although 3055's are very robust due to their size).

On-off switching like this for a unipolar motor means you cannot do anything finer than half-stepping.

Yeah I'm wondering if unipolar stepper motors work with bipolar. I connect the stepper motor to the
a4988 driver, it does work, but it doesn't step smoothly, so I will get the DRV8825 and try that out.

4 wire - bipolar only
5 wire - unipolar only
6 wire - bipolar or unipolar
8 wire - bipolar (series or parallel) or unipolar

For unipolar you need to get at the centre-taps as the common terminal, hence 5,6 or 8 will work

For bipolar the two winding sets (A and B) must be isolated from each other (hence 4, 6 or 8 wire)