Hi Myke
You turn off the i2c drivers in user_config.h
Here is my user_config.h; note the II2C0_FB
I am using the K20dx256VLL10 although this is the user_config.h for the bsp for the twrk40dx256 because there is no bsp for the k20dx256
The extra code you mention relates to having the BSP load the driver during the init.
I would load the new code for the appnote but I can't see a way to do that for some reason. But it is simple; the code was updated about feb 21 2013. Just do a search for the authors name in the appnote. He added an additional flag check for a certain condition in a status register.
Anyway, it is well written and works without problem. Just follow the appnote for building the code. One of the files may have changed location for the build procedure, that is it is on level higher in the directory structure for mqx 4.0.
If you have a problem, post your question and I can show you how to proceed.
Regards
Robert
//====================================================================================
/* mandatory CPU identification */
#define MQX_CPU PSP_CPU_MK40DX256Z
#define BSP_DEFAULT_IO_CHANNEL "ittya:" // rwl, change so printf's not going on BT channel, ittya
#define BSP_DEFAULT_IO_CHANNEL_DEFINED
#define BSPCFG_ENABLE_IO_SUBSYSTEM 1
#define BSPCFG_ENABLE_II2C0_FB 1 // interrupt driven i2c driver re-added Feb 19 2013
#define BSPCFG_ENABLE_II2C1_FB 0
/* MGCT: <generated_code> */
#define BSPCFG_ENABLE_TTYA 0
#define BSPCFG_ENABLE_ITTYA 1
#define BSPCFG_SCI0_BAUD_RATE 9600
#define BSPCFG_SCI0_QUEUE_SIZE 64
#define BSPCFG_ENABLE_TTYB 1 // defined so printf goes here
#define BSPCFG_ENABLE_ITTYB 0
#define BSPCFG_ENABLE_TTYC 0
#define BSPCFG_ENABLE_ITTYC 0
#define BSPCFG_ENABLE_TTYD 0
#define BSPCFG_ENABLE_ITTYD 0
#define BSPCFG_ENABLE_TTYE 0
#define BSPCFG_ENABLE_ITTYE 0
#define BSPCFG_ENABLE_TTYF 0
#define BSPCFG_ENABLE_ITTYF 0
#define BSPCFG_ENABLE_I2C0 0
#define BSPCFG_ENABLE_II2C0 0
#define BSPCFG_ENABLE_I2C1 0
#define BSPCFG_ENABLE_II2C1 0
#define BSPCFG_ENABLE_SPI0 0
#define BSPCFG_ENABLE_ISPI0 0
#define BSPCFG_ENABLE_SPI1 0
#define BSPCFG_ENABLE_ISPI1 0
#define BSPCFG_ENABLE_SPI2 0
#define BSPCFG_ENABLE_ISPI2 0
#define BSPCFG_ENABLE_RTCDEV 1
#define BSPCFG_ENABLE_II2S0 0
#define BSPCFG_ENABLE_IODEBUG 0
/* pccard shares CS signal with MRAM - opening pccard in user application disables MRAM */
#define BSPCFG_ENABLE_PCFLASH 1
#define BSPCFG_ENABLE_ADC0 1
#define BSPCFG_ENABLE_ADC1 1
#define BSPCFG_ENABLE_FLASHX 1
#define BSPCFG_ENABLE_ESDHC 0
#define BSPCFG_ENABLE_LCD 0
#define MQX_USE_SW_WATCHDOGS 1
#define MQX_USE_TIMER 1
#define MQX_HAS_TIME_SLICE 1
#define MQX_USE_IDLE_TASK 1
#define MQX_ENABLE_LOW_POWER 0
#define RTCSCFG_ENABLE_TCP 0
#define SHELLCFG_USES_MFS 1
#define SHELLCFG_USES_RTCS 0
#define MQX_KERNEL_LOGGING 1
#define MQX_USE_LOGS 1
#define MQX_ROM_VECTORS 0 // put vectors in RAM for bootloader
/* MGCT: </generated_code> */