The Gadgeteer Designer in Visual Studio will not allow me to connect a RS232 module to Socket 11, COM3. It is a U type socket. The Designer does allow me to connect an RS485 module to Socket 11. Why not allow a RS232 module? Is there a way to make accept an RS232 module, or some other way to use an RS232 module in Socket 11?
What board are you using? Can you not use another socket? Also, try to use the auto connect thingy: Right click and there should be a “connect all”
@ dspacek - Usually that means that sockets are not compatible. It is possible that manifest is wrong for the driver or board where it is exclusively set for just one type of socket. I see where it can be a problem for K and U sockets.
You can always instantiate the module manually with the number of socket. All designer does is inserts that call for you with the socket number as a parameter.
@ dspacek - Does this happen in a brand new program with nothing in it in 2014 R5?
I created a new empty Gadgeteer project, with one RS232 module from the toolbox, and no other modules attached, and now the Designer allows me to connect a RS232 module to socket 11.
I narrowed down the problem to a conflict between the Ethernet_ENC28 module and the RS232 module. I need the Ethernet_ENC28 module to be in socket #3, but that prevents me from attaching an RS232 module to socket #11. The problem happens in the reverse sense. Starting from no attached modules, if I attach an RS232 module to socket #11 first, then the Designer prohibits attaching the ENC28 module to socket #3.
The attached image shows the module wiring I need to use.
Sockets 3 and 11 both share SPI1. I dont know why the rs232 module is blocking it though, it only uses the uart pins.
You should be able to get around the problem by attaching your module on socket 1 to another Y socket, and using socket 1 for one of the two other S modules. Socket 1 uses SPI2
Question: should the raptor be able to handle 3 simultaneous S sockets in use as S sockets? (do the module drivers do their own chip-select somehow, to share the 2 SPI ports of the g400?)
@ dspacek - It appears to be a limitation of Gadgeteer. The RS232 module supports U and K. While the U pins do not conflict, the K pins do, specifically pin 7: CTS and MOSI. So when you connect the ENC28 to the S socket, it reserves pin 7. When the RS232 module searches for compatible sockets, it skips the socket because pin 7 has been reserved already.
There is no way to specify that a pin is only needed when you connect to one of the multiple supported types. Even if you connect to a U socket, it marks pins 6 and 7 as reserved as well. That normally isn’t an issue because they’re not shared with other sockets. That is my understanding of it without actually being able to see the code for how Gadgeteer picks compatible sockets.
The only work around seems to be to create the module instance manually in ProgramStarted. As long as you only use it as a U and not K, you should not have any issues.