i see there is a call to a python script from rc.local. what you have in rc.local looks fine. perhaps the python script? anyway, you could always switch to a cron job which takes place after boot finishes and not use rc.local to call the script.
Thank you @Ken-Conrad ! I found a really good example of how to use PySerial on instructables that was written for Pi and it worked out well after i changed UART details. Now just to get mysql installed and we good to go! :)
On Omega2 at least at the RO pin of MAX485 some kind of 5V to 3.3V level shifting is needed.
The simplest solution: put a voltage divider between RO and RX1.
And you should connect the pull-up resistors of input pins (DI, DE, RE) to 3.3V.
RS-485 can be made full-duplex by using four wires ie. two twisted pairs.
Is your Modbus slave full-duplex?
BTW you could build also full duplex config with two of your MAX485 modules. ;)
Thanks everyone, found the problem! It is my miniDock that was causing it. I try an extension dock and work perfectly. I'll test other miniDocks and will report later if this is general or just this one.
Even on a Linux box, you can usually see that the device exists without permission to use it.
The CP2012 works fine in recent OSX releases, and does not require any special permissions. However the proper driver from SiLabs must be installed - it is not included with OSX in the way that an open source driver supporting that converter typically ships with most Linux distros today.
Any ideas as to why I can't see the Omega when I scan /dev/tty? I've tried installing the driver many times and it hasn't given me any error messages.
See if it is listed in the USB section under system report.
Try a different cable. Try it with a hub. Try it without a hub.
@enr00-enr00 The colours don't mean anything, they aren't standardized and each manufacturer just kind of goes with whatever colour they like. You should've checked with a multimeter that you are, indeed, connecting the correct wire to the correct pin, and that there are no shorts.
Implemented the "INIT" command in my Omega-Arduino serial protocol. Before receiving "INIT" command, Arduino swallows up anythin that is thrown at it, and does not return anything back. Only after the "INIT" command it starts to accept other commands and return responses.
I changed the /etc/inittab file, commenting out the line that makes openwrt await a login on the console:
Edited the /etc/sysctl.conf file, adding a row at start, to prevent the kernel from writing any messages to the console:
kernel.printk = 0 4 1 7