Friday, January 24, 2014

USBAspLoader with Atmega16A-PU Atmega16 Atmega32A-PU Atmega32

Running USBAspLoader atmega8A-16PU with no problem. It was a very victorious moment.
Since i am a newbie in micro-controller. Began with a little conversation in the electronic group.
That somebody has a problem to get the USBAspLoader run in atmega16. Thanks to him,
i encouraged myself to fork the source code at github and succeeded.

Here are the steps to setup everything to work (well i works in my case):
1. Clone or Download the code from the github.
2. The Makefile.inc already set the target MCU to atmega16 with xtal 16MHz
3. Plugin your ISP ( i use my cloned arduino as ISP)
4. Modify Makefile.inc if necessary to match-up your programmer.
    ( i use avrdude and notice i have set the -P /dev/ttyACM0, modfiy
      to match yours)
5. Goto the directory above firmware directory.
    $ make fuse
    $ make flash
6. At the hardware site make sure to arrange the 2 capacitors as described in 
    the schematic.



As you could noticed, the schematic is taken from metaboard and applies the same with Atmega16A. 
The jumper needs to be actived low to enable bootloader mode. Thus if the jumper
removed it will be running the program inside the Flash memory. Another catch-up 
was to unplugged arduino or other v-usb device, otherwise the OS 
( am using Fedora 19 64bit kernel 3.11.10-200.fc19.x86_64 ) will 
shows error that the manufacturer not found.

Have fun!



Linux Eagle 6.5.0 missing libssl.so.1.0.0 and libcrypto.so.1.0.0 How to

So excited to know the popular Eagle CAD an Electronic Design Automation tool is available
in Linux
. So got it download from cadsoftusa freeware. I am running Fedora 19 64bit
Kernel is 3.11.10-200.fc19.x86_64.

The eagle CAD is pre-compiled, so executed with
$ ~/eagle-6.5.0/bin/eagle
It throw error that libssl.so.1.0.0 not found.

I have made sure that OpenSSL is installed. Why it could not found the shared library.
$ locate libssl
/usr/lib/.libssl.so.1.0.1e.hmac
/usr/lib/.libssl.so.10.hmac
/usr/lib/libssl.so.1.0.1e
/usr/lib/libssl.so.10
/usr/lib64/.libssl.so.1.0.1e.hmac
/usr/lib64/.libssl.so.10.hmac
/usr/lib64/libssl.so.1.0.1e
/usr/lib64/libssl.so.10

Ahah! The solution is simple, just create a new symlink foreach lib and lib64:
# cd /usr/lib
# ln -s /usr/lib/libssl.so.10 /usr/lib/libssl.so.1.0.0
# ln -s /usr/lib/libcrypto.so.10 /usr/lib/libcrypto.so.1.0.0
# cd /usr/lib64
# ln -s /usr/lib/libssl.so.10 /usr/lib/libssl.so.1.0.0
# ln -s /usr/lib/libcrypto.so.10 /usr/lib/libcrypto.so.1.0.0
**) notice that i use '#' to denote creating the symlink using root

I found out that the Eagle CAD needs the libcrypto.so.1.0.0 too.
Now it runs smoothly. Have fun!

Monday, January 20, 2014

Linux AVR-CDC ttyACM Open and Close by modem-manager

Got stuck with my avr-cdc device detected as ttyACM. Ever since my kernel upgraded to
3.11.10-200.fc19.x86_64 the modem-manager takes place and keep restarting my avr-cdc.
I ended up stuck unable to upload any sketch to my arduino.

After googling for about an hour to find proper way to disable the modem-manager, no luck.
Ok, i will do it my way. Simply rename the modem-manager in /usr/sbin/modem-manager
to modem-manager-removed and kill the process. Ahah! It never restart anymore since
the kernel could not find the modem-manager application anymore.


Playing with my arduino with no problem :D