Communication Adapter – MCU Schematics

mcu-schematics-com-adapter

The schematics for the main MCU parts. This still uses the ESP-03 for Wifi. I intend to replace that with ESP-12 and ESP-01. The m,ain reason is availability & cost, but also the access to Reset pin that is not available on ESP-03.

At right bottom you have a 6 status leds, one for each communication port. The 7th led is showing 3.3V Power. On top you have my SWD Connector.

I need to do a review of pull-up/down resistors. Usually I don’t add them because the MCU have internal ones that can be added in software. But, you need to consider what happens during the start-up while the pins are floating. I added a pull-down on ch_pd to force ESP-03 to be switched off until software switch it on. I need to add the same on the NRF Circuit to avoid that it og wild transmitting junk during start-up.

NRF24L01+

nrf24l01

The schematics for the NRF24L01+ breakout boards are not the most interesting. It’s a standard SPI with an interrupt pin and two enable pin’s this time. I am using two different footprints that will support 4 different break out boards available. The classic have a range of 100 meters, while the more advanced claim a range of 1.2 km. But, keep in mind that these ranges are outdoors with no obstacles. Indoor going through walls the range will be much Shorter.

Other 2.4Ghz Technologies like Zigbee exists, but I have a preference for NRF. The main reason I am adding these in addition to more classing Wifi is because I want to use this on my next version model train control system + the fact that it’s handy to have around on an adapter that plugs into a Windows PC.

The ShockBurst protocol allows multiple nodes to talk directly on 125 different channels and With 6 pipes simultaneously. A 32 byte payload on packages and a data transfer up to 2Mbps makes it great.

But, keep in mind that this is a non-secure wireless communication method.

Isolated RS485

Isolated RS485

Isolated RS485. I seldom bother with terminator resistor on RS485 because I never have errors due to this below 10 meters. Bias is a different issue as I experience problems without bias resistors on one side even on very short distances.

The main difference between RS485 and CAN is that CAN uses arbitration and is depending on better timing. RS485 is in contrary much easier to get working even with lousy solutions and cabling.

Isolated CAN

Issolated CAN

This is an isolated CAN-HS interface. ADM3053 offer a all-in-one package that cost a bit, but I decided to try it out. As for cost we are talking about 5.- USD rather than 0,5 USD.

A normal transceiver will give some protection while ADM3053 protect against much larger pulses, but it is not unlimited. Your level of protection should be adapted to your usage, and using a galvanic isolated CAN interface is basically an overkill for most hobby projects.

Com Adapter – CH340G

CH340G

I need to test if I can get away with this simple circuit. The only challenge with CH340 is that it’s documentation in English is limited, so it’s a bit difficult to read up on all the pin options. But, I have seen others attempting this so will give it a try. This is CH340 as minimalist as possible with UART on one side and USB on the other.

The reason I like this is quite simple. We bought RS485 adapters for 1.- USD build on these  some time back and now we simply don’t bother with anything else. They simply work to well. They always install correctly on Windows with no fuzz.

Com Adapter – Ethernet Schematics 1.1

W5500 schematics 1_1

Updated the W5500 Ethernet schematics. C9 to C15 present a challenge in PCB routing since I am using 0805 packages. They are supposed to be attached close to each AVDD pin which is a challenge. Also I added the L1 ferrite bead to stop 100Mhz signals from crossing over.

But, I am still thinking that the 8.- USD breakout (below) is a tempting simplification. Particulary since the footprint will be smaller with this. I am also thinking that these breakout boards will even drop in price later.

w5500backside w5500breakout

STM32F303

STM32F303 is a M4 clocking at 72Mhz. It has strong ADC’s and build in op amps as well as 3 motor controllers on the larger chips. It is a very interesting MCU for specialised motor controllers, but have so far been priced in the 10++ USD region. Lately I noticed that CB and CC versions of the MCU are down to 3-4.- USD on AliExpress.

My interest in F303 is limited because I believe MCU’s like F405 and F427 are better choices, but F303 offer the LQFP48 package making it attractive on applications where a LQFP64 is to large. I have so far not considered it because of the cost. I will add veroboard friendly breakout boards for STM32 Cx chips later.

The Rx Version should be able to use my Rx Board. I have mentioned ST’s pin compatibility between MCU’s before. It simply means that if a feature is on both STM32F103CB and STMF303CB they will most likely be available on the same pins though registers and coding might be different. This makes it possible to start With a low end MCU and simply upgrade to get more Flash/SRAM/Speed or extra features.

W5500 breakout

w5500breakout

This is the breakout board version of W5500 available for 10.- USD on AliExpress. I have a few of the more expensive ones for W5200 bought from Wiznet. Using breakout’s like this simplifies the prototyping if you assemble by hand. I also notice that Wiznet support examples for STM32F103 using CoIDE these days.

w5500backside

This Picture show the actual PCB With W5500. Notice the small 0201 Components. The 0805’s look massive in comparison. Usually I can use less Space adding the Electronics directly, but this is an exception. The cost of W5500 and Components are ca 3-4 USD, so 10 USD could be an acceptable trade to make it simpler.

They Reference the Board as “USR-ES1” and looking at Pictures I see a different PCB (see bottom Picture), but I assume the pinout is the same? It exposes SPI, Reset and INT, but it does not expose the PMODE pins.

w5500 breakout pinout

w5500 brk2

This last Picture is from a different Product also marked as USR-ES1. This actually looks like it has been hand-made and not so Nice as the first one.

Lack of PMODE means that the module is wired for auto-negotiation. This can be an issue in robotics because we often have long cables and connectors of various quality. The result can be a 100Mbps that is unstable, so we need a way to force it to 10Mbps to make it stable.