Changing the output voltage of the voltage of the boost converter is relatively easy in the firmware, and while I don't imagine it's too terribly safe, it's no LESS safe then plugging in a 12V adapter vs. a 9V. In fact it might be slightly safer. Either way the boost converter's pushing more output voltage, but at least the rest of the system is still running off 9V stock.
In the stock firmware you want to find this code in iv.c, starting at line 969:
- Code: Select all
if (mode == SET_BRITE) {
brightness += 5;
if (brightness > 91)
brightness = 30;
display[7] = pgm_read_byte(numbertable_p + (brightness / 10)) | 0x1;
display[8] = pgm_read_byte(numbertable_p + (brightness % 10)) | 0x1;
if (brightness <= 30) {
OCR0A = 30;
} else if (brightness <= 35) {
OCR0A = 35;
} else if (brightness <= 40) {
OCR0A = 40;
} else if (brightness <= 45) {
OCR0A = 45;
} else if (brightness <= 50) {
OCR0A = 50;
} else if (brightness <= 55) {
OCR0A = 55;
} else if (brightness <= 60) {
OCR0A = 60;
} else if (brightness <= 65) {
OCR0A = 65;
} else if (brightness <= 70) {
OCR0A = 70;
} else if (brightness <= 75) {
OCR0A = 75;
} else if (brightness <= 80) {
OCR0A = 80;
} else if (brightness <= 85) {
OCR0A = 85;
} else if (brightness <= 90) {
OCR0A = 90;
} else {
OCR0A = 30;
}
}
}
And change it to this:
- Code: Select all
if (mode == SET_BRITE) {
brightness += 5;
if (brightness > 100)
brightness = 30;
display[7] = pgm_read_byte(numbertable_p + (brightness / 10)) | 0x1;
display[8] = pgm_read_byte(numbertable_p + (brightness % 10)) | 0x1;
if (brightness <= 30) {
OCR0A = 30;
} else if (brightness <= 35) {
OCR0A = 35;
} else if (brightness <= 40) {
OCR0A = 40;
} else if (brightness <= 45) {
OCR0A = 45;
} else if (brightness <= 50) {
OCR0A = 50;
} else if (brightness <= 55) {
OCR0A = 55;
} else if (brightness <= 60) {
OCR0A = 60;
} else if (brightness <= 65) {
OCR0A = 65;
} else if (brightness <= 70) {
OCR0A = 70;
} else if (brightness <= 75) {
OCR0A = 75;
} else if (brightness <= 80) {
OCR0A = 80;
} else if (brightness <= 85) {
OCR0A = 85;
} else if (brightness <= 90) {
OCR0A = 90;
} else if (brightness <= 95) {
OCR0A = 95;
} else if (brightness <= 100) {
OCR0A = 100;
} else {
OCR0A = 30;
}
}
}
You will
also need to make similar changes to the boost init procedure which begins in iv.c in line 1330. There are other firmwares out there, with markedly different ways of handling the boost converter. If you use
digisage's firmware, for example, he only requires you to change one little line of code, in iv.h (note: iv.h, not iv.c!) at line 44. You change:
- Code: Select all
#define BRIGHTNESS_MAX 90
to
- Code: Select all
#define BRIGHTNESS_MAX 100
or
- Code: Select all
#define BRIGHTNESS_MAX 120
Or whatever.
I would caution you, however,
I HAVE NO IDEA WHAT THIS WILL DO. In theory it'll increase the output voltage of the boost converter, but I have never attempted this modification and have no intention of risking a perfectly serviceable tube to do so.
If the whole thing catches fire, explodes, and melts your face well, banned: Just head to Madagascar institute and join the club. They've got tee shirts.