Multiple Serial Ports

I have a design that uses Serial 1, 4 and 5 of the E310.

Serial 1 and 4 work well but Serial5 doesn’t seem to communicate.

So far, I have setup an Arduino to test each UART individually. Serial5 doesn’t want to work. I’ve buzzed the board out so connectivity looks good.

The code is very simple on the E310 just copied from the tutorial with Serial5 replacing Serial 1 or 4.

Is there something I missed that requires special attention on Serial 5? I am getting ready to punt and put another module on the board and just wanted to see if there was something I am missing.

Thanks in advance.

Let me ping someone that might be able to help, @rickkas7 or @ParticleD are you able to assist?

I tested Serial5 on the E310 using system firmware 0.7.0 in the post below and it worked for me. I couldn’t find any Github issues for Serial5.


I was using and Arduino at first, now a demo board.

Another engineer used different code (slightly) and it worked.

I had #include “Particle.h” as well as the includes for serial4 and serial5. He only had serial4 and serial5 includes.

I ran it again with his code (no particle.h include) and it started working.

I’ll post if there are any other issues but it seems good now. Thanks for the confirmation efforts.

I should say that the setup was custom PCB with E310 module running 0.8 and an Arduino connected on its serial1 (TX/RX).

The code was exactly as the demo (I think it was yours) online where it sent a number and the Arduino added 1 and sent it back.

I used the code exactly for tested the previous version and we moved to a new PCB with 3 serial ports (one RS485) connected directly into (RS485 through an interface IC) serial1, 4 and 5. The previous PCB had a mux to use all 3 ports on serial1 (used a photon versus the new electron).

Everything tested perfect. Then, due to fit reasons and the fact that the electron has 3 distinct ports, we dumped the mux and when direct to the ports.

I used the exact same code but added the serial4 and serial5 includes (kept the particle include). Only serial4 functioned for some reason and we chased our tails for a couple of days.

Then, we took the demo board and ran the old photon straight into the 3 ports with the new code (no particle include) and it worked. We figured there was some connectivity or hardware issue.

I then took a demo board (versus the arduino) and tested the new code (no particle include) and the PCB worked.

I apologize for the long story but figured it would be less misleading and more indicative of the confused state of the testing process.

In the end, lots of moving parts and we are backing up now to test in a more linear fashion. I haven’t gone back to my original test setup and tried to remove the include or use an Arduino yet. I am going to try and do that today as well.

Thanks again for the help. This is a great case study for documented test plans!