Disable gamma on the Model 100 for now.

It was...not working right (everything was coming in at near-zero
brightness)
f/keyboardio-model-100
Jesse Vincent 3 years ago
parent 968c71abc3
commit ff1cacad51
No known key found for this signature in database
GPG Key ID: 122F5DF7108E4046

@ -22,6 +22,8 @@
#include "kaleidoscope/key_events.h" #include "kaleidoscope/key_events.h"
#include "kaleidoscope/driver/keyscanner/Base_Impl.h" #include "kaleidoscope/driver/keyscanner/Base_Impl.h"
#include "Wire.h"
#ifndef KALEIDOSCOPE_VIRTUAL_BUILD #ifndef KALEIDOSCOPE_VIRTUAL_BUILD
#endif // ifndef KALEIDOSCOPE_VIRTUAL_BUILD #endif // ifndef KALEIDOSCOPE_VIRTUAL_BUILD
@ -51,6 +53,13 @@ void Model100Hands::setup(void) {
// TODO DDRE |= _BV(6); // TODO DDRE |= _BV(6);
// TODO PORTE &= ~_BV(6); // TODO PORTE &= ~_BV(6);
// Turn on the switched 5V network.
// TODO - make sure this happens at least 100ms after USB connect
// to satisfy inrush limits
pinMode(PC13, OUTPUT_OPEN_DRAIN);
digitalWrite(PC13, LOW);
Wire.begin();
// Set B4, the overcurrent check to an input with an internal pull-up // Set B4, the overcurrent check to an input with an internal pull-up
// TODO DDRB &= ~_BV(4); // set bit, input // TODO DDRB &= ~_BV(4); // set bit, input
// TODO PORTB &= ~_BV(4); // set bit, enable pull-up resistor // TODO PORTB &= ~_BV(4); // set bit, enable pull-up resistor
@ -101,7 +110,6 @@ cRGB Model100LEDDriver::getCrgbAt(uint8_t i) {
void Model100LEDDriver::syncLeds() { void Model100LEDDriver::syncLeds() {
if (!isLEDChanged) if (!isLEDChanged)
return; return;
// LED Data is stored in four "banks" for each side // LED Data is stored in four "banks" for each side
// We send it all at once to make it look nicer. // We send it all at once to make it look nicer.
// We alternate left and right hands because otherwise // We alternate left and right hands because otherwise

@ -169,7 +169,6 @@ void Model100Side::sendLEDData() {
} }
} }
auto constexpr gamma8 = kaleidoscope::driver::color::gamma_correction;
void Model100Side::sendLEDBank(byte bank) { void Model100Side::sendLEDBank(byte bank) {
uint8_t data[LED_BYTES_PER_BANK + 1]; uint8_t data[LED_BYTES_PER_BANK + 1];
@ -185,16 +184,16 @@ void Model100Side::sendLEDBank(byte bank) {
else else
c = 0; c = 0;
data[i + 1] = pgm_read_byte(&gamma8[c]); data[i + 1] = c;
} }
uint8_t result = writeData(data, ELEMENTS(data)); uint8_t result = writeData(data, ELEMENTS(data));
} }
void Model100Side::setAllLEDsTo(cRGB color) { void Model100Side::setAllLEDsTo(cRGB color) {
uint8_t data[] = {TWI_CMD_LED_SET_ALL_TO, uint8_t data[] = {TWI_CMD_LED_SET_ALL_TO,
pgm_read_byte(&gamma8[color.b]), color.b,
pgm_read_byte(&gamma8[color.g]), color.g,
pgm_read_byte(&gamma8[color.r]) color.r
}; };
uint8_t result = writeData(data, ELEMENTS(data)); uint8_t result = writeData(data, ELEMENTS(data));
} }
@ -202,9 +201,9 @@ void Model100Side::setAllLEDsTo(cRGB color) {
void Model100Side::setOneLEDTo(byte led, cRGB color) { void Model100Side::setOneLEDTo(byte led, cRGB color) {
uint8_t data[] = {TWI_CMD_LED_SET_ONE_TO, uint8_t data[] = {TWI_CMD_LED_SET_ONE_TO,
led, led,
pgm_read_byte(&gamma8[color.b]), color.b,
pgm_read_byte(&gamma8[color.g]), color.g,
pgm_read_byte(&gamma8[color.r]) color.r
}; };
uint8_t result = writeData(data, ELEMENTS(data)); uint8_t result = writeData(data, ELEMENTS(data));

Loading…
Cancel
Save