Serialino – Running Tests

Serialino-and-Ethernet
Serialino and Ethernet

Finally we've got Serialino on the road.

Two tests will be shown, about the simple LED blinking, and the code to drive an ethernet board put on it.

Just a quick note:  Serialino is already burnt with a ATMega328p compatible bootloader.
This will ease any code uploading.
Won't it?
Or not?

Not so indeed, or not the same like we feel working with a factory-made Arduino board.

The reason is that communication between Serialino and PC could fail under some undetermined conditions.

A very common problem that affects many home-made Arduino clones.

Arduino-IDE-Preferences
IDE preferences - serial.debug_rate

First of all we necessarily have to change the bound rate, that's the speed the communication goes at between board and pc.

 

If you open the file IDE preferences.txt and looking for the serial.debug_rate, you'll see a value: 9600.

[note: every operating system has its own path for the file]

While this normally runs with Arduino, we here need to set it at 57600.
We found this value after some quick tests.

But the problems are not finished, since even the cable can be source of communications failure.

Not only we must use an as much as compatible usb-serial cable, but even with the correct one sometimes the binaries transfer can be impossible due to some errors bound to the avr compiler, the most frequent of which is about the missed synchronization.

Below you see the cable used quite successfully.

USB-Serial-Cable-resized
USB-Serial Cable HL-340

Maybe the picture is not so well resolved, but the mark says HL-340.

Download the driver from here if needed (Windows only).

We tried even with generic cables: the instability has considerably been increased.

This is NOT a huge problem, otherwise we wouldn't be at this point.

When these issues rise up, unplugging and plugging the usb cable is generally enough to get Serialino working again (better to rerun the IDE too).

[always check if the IDE recognizes the board in the com port]

But it's now time to make the code run.