* Added Modular keyboards L,R and NUM Created code modules for the 3 modules of the modular keyboard. Original idea by MechboardsUK. Uses i2c implementation similar to lets split * Remove modular from master This is to fix incorrect branching * General fixes for RGB_matrix - Complited speed support for all effects - Fixed raindrop effects to initialized after toggle - Fixed raindrop effects to use all available LEDs - Fixed effect step reverse function - Moved RGB_MATRIX_SOLID_REACTIVE under correct flag * Documentation update for RGBmatrix * More doc updates * I2C library can now retry if it has failed - Replaced the original TWIlib by LFKeyboard's modified version - Allows for an extra argument on TWITransmitData, if blocking is set to 1 function will retry to transmit on failure. Good for noisy boards. * RGB Matrix, use alternative I2C library TWIlib seems to be hanging for me sometimes probably due to ISR routine. I have used i2c_master as a good alternative. Note: this commit is for Wilba6582 to verify before merge * Update rgb_matrix.c * RGB matrix cleanup - Remove TWIlib
		
			
				
	
	
		
			23 lines
		
	
	
		
			696 B
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
		
			696 B
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
| /* Library made by: g4lvanix
 | |
|  * Github repository: https://github.com/g4lvanix/I2C-master-lib
 | |
|  */
 | |
| 
 | |
| #ifndef I2C_MASTER_H
 | |
| #define I2C_MASTER_H
 | |
| 
 | |
| #define I2C_READ 0x01
 | |
| #define I2C_WRITE 0x00
 | |
| 
 | |
| void i2c_init(void);
 | |
| uint8_t i2c_start(uint8_t address);
 | |
| uint8_t i2c_write(uint8_t data);
 | |
| uint8_t i2c_read_ack(void);
 | |
| uint8_t i2c_read_nack(void);
 | |
| uint8_t i2c_transmit(uint8_t address, uint8_t* data, uint16_t length);
 | |
| uint8_t i2c_receive(uint8_t address, uint8_t* data, uint16_t length);
 | |
| uint8_t i2c_writeReg(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length);
 | |
| uint8_t i2c_readReg(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length);
 | |
| void i2c_stop(void);
 | |
| 
 | |
| #endif // I2C_MASTER_H
 |