As background, here are quotes from the PICAXE site,
http://www.picaxe.com/
What Is PICAXE?
A PICAXE microcontroller is designed to be the brain of your electronic project. Originally designed as an educational system for schools, the PICAXE system has now also been widely adopted by hundreds of thousands of 'hobbyists' due to its ease of use. Each year thousands of high school students are also introduced to electronics and microcontrollers via building a PICAXE project.
PICAXE chips are popular because they are very low-cost, and simple to program using free, easy-to-learn software.
The PICAXE chip can react to input sensors and switch outputs on and off accordingly.
A USB download cable is an essential purchase to use the PICAXE system.
Although another up-to-date implementation is presented at:Basically, the download cable contains an USB to Serial chip made by FTDI for which a linux kernel module already exists! The problem is that the module is not recognized automatically bec[a]use the cable ha[s] different[,] non-standard identificatives.
http://askubuntu.com/questions/525016/c ... ev-ttyusb0
it bypasses the Puppy way of loading modules. My solution uses a udev rule and a modprobe configuration install statement.
/etc/udev/rules.d/99-axe027.rules:
Code: Select all
ACTION=="add", SUBSYSTEM=="usb", \
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="bd90", \
RUN+="/sbin/pup_event_backend_modprobe axe027"
Code: Select all
install axe027 \
/sbin/modprobe --first-time --ignore-install ftdi_sio \
&& echo 0403 bd90 > /sys/bus/usb-serial/drivers/ftdi_sio/new_id
In addition to automatic loading of the driver at bootup, this implementation supports use of the console command, "modprobe axe027".
Thanks, Brandon, for calling attention to the need for Puppy to support the fascinating PICAXE projects and for testing my code.
Richard
UPDATE 3/17/2015:
Uploaded an enhanced version of the package that (1) supports removal (modprobe -r axe027) of the driver and (2) prevents its loading if another device is already using the ftdi_sio driver, so as to avoid disrupting that device. It also avoids removal if the ftdi_sio driver is in use by another device. This enhancement should allow it to reside safely within a distro, as well as be installable by users.