Success! WiFi module is working and connects to AP!
Running all three external devices on the same SPI bus caused some trouble. After a lot of debugging I found out that the CC3000 and the ILI9340 TFT uses different SPI modes, plus the CC3000 library uses an SPI interrupt. The quick-and-dirty fix was to add this to each driver function in Adafruit_ILI9340.cpp:
noInterrupts();
SPI.setDataMode(SPI_MODE0);
// function code
SPI.setDataMode(SPI_MODE1);
interrupts();
The elegant fix would be to take advantage of the SAM3X's enhanced SPI capabilities to select the correct mode and speed automatically when accessing different devices on the same bus, but then I would have to rewrite all three libraries.
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.