King Enzo LOGO          KEAP: King Enzo Ark Projects


digital-powerizer and i2c-powerizer: the missing rings in Domotics: The digital-powerizer is a mains switch driven by a digital signal. In my applications digital-powerizer come in units containing eight parallel digital-powerizers. The second i2c-powerizer is a circuit used to turn on and off eight digital signals. This latter circuit can drive eight digital-powerizers to turn on and off eight loads (e.g. eight lights). Read the paper for a complete description and download here the software for the microcontroller.

VirXGA: This (very simple) circuit emulates a XGA (1024x768) monitor. When connected to a VGA analog socket (the standard mini sub D15) the graphic card recognizes the presence of a monitor. Read the paper for a complete description.

Dbind: A IPv4 IPv6 automatic tool to update bind9 tables. Dbind can be used to implement dynamic DNS or as a tool to create and update IPv4 IPv6 DNS tables just by using a single simple command (no addresses must be inputed or file edited. It is quite impossible to create inconsistent tables). ( here on Sourceforge ).

Webconf: A simple Client-Server tool to do presentations on the web. Each webconf user starts his/her client program together with a Mozilla compliant browser. The operator at the server will be able to broadcast URLs that will be visualized on all connected browser (actually it is also possible to remote control each user's browser independetly, if needed).
It is useful to broadcast the slides during a remote E-lecture.
( here there is a pre-release of the code).

ULN: User Level Networking. Permission to access the network at the user level: each user can have his/her private IP (or no access at all to the network). Users can have different services, load shaping or can de directed to different hardware interface. Based on an idea of mines, it is now a sourceforge project. The first release has been designed and implemented by Alessandro Pira and Enrico Tassi. ( here on Sourceforge ). It is full functional in IPv4 it is going to be ported in IPv6.

Prometeo: We currently use several proxy for several purposes: caching, protocol translation, availability, mobility.
Prometeo is a single proxy engine that can be loaded (run time) with proxy modules.
In some sense this is similar to inetd for  TCP servers: long time ago there were several server programs one for each service always running on a network server (several of them were idle the most part of the time wasting resources).
Prometeo is the idea of inetd applied to proxies.Based on an idea of mines, it is now a sourceforge project. The first release has been designed and implemented by Simone Tellini. (here on Sourceforge ).  It is IPv4 and IPv6 compliant.

Vite: Firewall for public access wired/wireless lan access. It is based on a ssh authorization: each user must authenticate himself/herself using a ssh session. Internet connectivity is guaranteed as long as the ssh session is on. Vite provides also MAC address checking and logging, IPv4 and IPv6 compatibility, integration with dbind for DDNS registration of users. (Developers: Leonardo "Leo" Macchia, Marco Giordani and Mauro Amico) tar.gz file can be downloaded here

Damigiana: CD-ROM Juke-box utility. Useful for public access CD-recorders: users can burn CD-images chosen from a pre-assigned list. Multiple recorders per machine support, no direct access to the recorder thus it is not possible for user to abuse the service for software piracy or copying other unathorized data.

Screen-P800(Coming Soon) A patch for the screen utility to support simplified keyboards (without ctrl and escape keys). I am currently using this feature to support the putty terminal emulator for the P800 smartphone. (temporarily provided *pre-release* as a complete screen-3.9.15 patched distribution here )

VDE: Virtual Distributed Ethernet VDE can be useful for: (1) interconnecting local and remote User-Mode-Linux, MPS virtual machines or real machines between them and to the Internet, (2) creating tunnels for almost any protocol supported on ethernet (e.g. IPv6 on IPv4 and viceversa); the client end can be also inside a masquerated (NAT) subnet, (3) supporting mobility: the VDE-switches can change at run-time the tunnels inteconnecting them without affecting the communication in place. The code is an evolution of the uml-router (c) 2002 by Yon Uriarte and Jeff Dike. It can be used also for students' lab usage of UML. (download it from sourceforge here ).

Ale4NET: Application Level Environment for Networking Using Ale4NET IP addresses can be assigned to single applications or group of applications. Ale4NET works at user level: neither kernel modification nor root access is needed to start Ale4NET. You can use your favourite applications on Ale4NET by just setting one single Environment Variable. It can be used to create user level VPN, to use IPv6 on a machine that does not have IPv6 support in the kernel, to test the communication with virtual machines without using the tuntap interface.... Everything can be done as standard user: no root access required. (download the alpha version from sourceforge here ).

Mity Mite GPIO device driver Mity-Mite is a wonderful board for embedded systems. It implements a 386like processor with 4megs of RAM, LAN interface. IT has also 16 lines for general purpose I/O. This is the device driver for the LInux kernel. Detailed information of the application layer interface are in the README file. It can be downloaded here

OV511 v.2.28 driver patch for Linux 2.6.11 OBSOLETE: my patch has been merged into the mainstream driver here . Linux Kernel 2.6.11 breaks the OV511 webcam/TV driver for three reasons: 1. remap_page_range does not exist (The log message is "ov511: Unknown symbol remap_page_range") 2. USB parameters idProduct and idVendors are kept in little endian format (previous kernels converted those data in cpu format) 3. usb_unlink_urb is deprecated (messages and stack dumps on the logs), usb_kill_urb must be used instead for synchronous streams. 1. and 3. affect all the systems while 2. appears only on Big Endian computers (with log error messages like: "Unknown product ID 0x1105"). This is the patch to fix the driver.

See also Virtual Square and View-OS