I don’t have other modules, only Teletype, so I can’t tell you. In theory it should behave like the stock Grid, but in practice there could be hurdles, which are hard to foresee without trying.
The basic idea is that you finish the Grid as published, then add a second USB port to it, which will be used for communication, while the original USB port is used for power, debugging and firmware updates. Try to get a “FTDI Breakout board” with an official 231 or 232 FTDI chip, ideally from some company such as Sparkfun or Watterott, not Chinese copies. I was using:
Where I live, it would cost like $12. It is important that it is either sold for 3.3V, or has a switch which allows it to be set to 3.3V (don’t forget to do that)
Then download the FT PROG tool available on the FTDI website and connect the breakout to your computer. I think for this step you need a Windows PC, no idea if the tool is available for Mac or Linux. Press “Devices”. The adapter should show. There a several pages of configuration. Open the section “USB device descriptor”, chose the option “Custom VID/PID”, and make sure that VID and PID are ID 0403 and 6001 respectively. If not, change them, and then chose “Program device” from the context menu or toolbar (if you bought some official board, VID should already be correct, but the PIDs for adapters vary, if it is 6015, it needs to be changed to 6001). That step should save the changes permanently.
Next go to the USB String descriptors page, change the manufacturer name there to “monome”, and program.
Look for the “serial number” page, turn off auto-generation of the serial number (uncheck checkbox), and enter a number like m00000000. The first small “m” is important here. Program.
Take out the adapter, plug it in again, press again on “Devices” in FTP PROG, and check that everything was saved correctly. You can also use tools like USBDeview for checking USB properties.
One of my adapters, which was very cheap, would support every step above, but not remember the changes. If the same happens to you, you need to try another adapter.
Now solder the breakout box to the Teensy in the DIY Grid, in addition to the existing breakout. I would recommend to just to use jumper wires, so you can remove the breakout box if needed. If you need female or male jumper wires depends on your exact model, there are those with male and female sockets. You need three cables. Connect GND to GND, RX to TX1, TX to RX1. (On some adapters it says RXI and TXO, those are the same connections). DTR, CTS and VCC don’t need to be connected.
Later you might want to integrate this second port in the Grid.
Now open the Neotrellis Grid Teensy firmware “neotrellis_monome_teensy” in the Arduino IDE.
In the first tab, look for Serial.begin(115200); and add a Serial1.begin(57600); under it.
Search and replace Serial. with Serial1. in all open tabs, except for the debug tab.
In MonomeSerialDevice.cpp look for the lines
Serial1.write((uint8_t)0x00); // action: response, 0x00 = system
Serial1.write((uint8_t)0x01); // section id, 1 = led-grid, 2 = key-grid, 5 = encoder/arc ## NEED devSect variable
Serial1.write((uint8_t)numQuads); // one Quad is 64 buttons
If you have a version of the firmware, were there only those three lines, you need to duplicate them, so that you have six Serial1.write calls. (You might want to change 0x01 to 0x02 in the second block, but it probably does not play a role.)
Finally look for the file C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy3\serial1.c - on Macs and Linux it should also be placed in the hardware folder next to the Arduino libraries folder (I am assuming that the IDE is already setup for the Teensy, on that you will find instructions elsewhere)
Look for the line
#define SERIAL1_RX_BUFFER_SIZE 64
and replace it with
#define SERIAL1_RX_BUFFER_SIZE 256
Now, go back to the IDE and load the modified firmware on the Teensy.
Write some simple Teletype Grid script in your Teletype, such as described in “Teletype Grid Studies”. Use ALT-G to verify if the grid inside the Teletype is set up correctly.
Start up the grid and connect the breakout to the Teletype. Voila.