I got a new Convoy C8 today. Just a few minutes ago, actually. Haven’t even had time to take it apart.
Most of it is nice, but I’ve noticed two issues on mine:
- Everything seems to go a little over 2X as fast as intended.
- I can’t get it to disable mode memory. (changing the mode group works fine though)
Not sure yet what’s going on there. I’d think the attiny was overclocked or something, except the code was calibrated to run at its fastest speed. But I’ll still make sure the fuses and the ROM match what I was expecting, and measure the PWM speed to double check.
…
Okay, these are the PWM speeds I’m seeing:
- Moon: ~1.8 kHz? (hard to measure at low intensity)
- Low: 18 kHz
- Everything else: 36 kHz
- Strobe: 24.8 Hz
The attiny13a isn’t generally capable of running that fast. Normally it maxes out at 16 kHz (plus or minus individual unit tolerances of about 2kHz, so 14-18kHz). Something is definiely weird here. Will have to un-solder some things to get the driver out for more details.
Just now I measured a sample driver I used for development, and found the following:
- Moon: 1.0 kHz
- Low: 9 kHz
- Other modes: 18 kHz
- Strobe: 12 Hz
…
Did some quick measurements before I take it apart… On a 4.05V 25R cell, I got:
- 0.1: 2.81 lm (0.33) (visually 1.41)
- 1: 26.55 lm (3.13) (visually 2.98)
- 10: 111.5 lm (13.1) (visually 4.81)
- 35: 377 lm (44.5) (visually 7.23)
- 100: 848 lm (100) (visually 9.47)
Mode spacing: 1.57, 1.83, 2.42, 2.24
The outputs and spacing are significantly different than what I used for testing. Let’s un-solder some things and see what’s inside…
…
Okay, got the driver out. It says on the outside it’s an attiny13a. Which is curious, because it’s going twice as fast as the attiny13a’s spec says it should be able to. 4.8 MHz / 256 cycles per PWM loop = 18.75 kHz PWM, but it’s actually running at 36 kHz. (and the attiny13a usually runs between 3.6 MHz and 4.4 MHz, highly variable per unit and slower than spec… but this one seems to be more like 9.6 MHz?)
Also, the markings on the 7135 chips are different than the drivers used for testing, which probably explains why the output levels are different. These new chips appear to have a more linear response curve, which is good except that the code was calibrated to a non-linear curve.
Maybe it’s using weird fuse settings or the firmware changed. I’ll check…
…
Dangit, can’t get the SOIC8 clip to connect because a capacitor is in the way. The MCU doesn’t have enough clearance on one side. Maybe I can get my janky old clip to connect instead, since I filed the edges off it.
…
Looks like the older clip fits, and it works on other drivers, but I can’t get it to connect to this particular chip. Will keep trying, but it looks like this is as far as I can go for now.
It seems the new drivers have different enough hardware to make some calibration changes necessary. And I’m guessing it was flashed with different fuses or something, because it’s running at the wrong speed. Plus, the driver layout has the really unfortunate quirk of not letting a SOIC8 clip fit. Hopefully I can figure out more of the details soon.