You are here
Here is an Arduino library allowing you to write to all flash or EEPROM space with wear leveling. The library already supports multiple memory types (internal EEPROM, I2C and SPI) and can be extended very easily to support others. The memory space can be used as a space to store configuration data with wear leveling, or to read and write (at the same time) sensor data filling the whole memory space efficiently.
A complete Arduino library for the MAX3100 serial UART/USART chip can be downloaded below. There have been many requests for an Arduino library for the MAX3100 external serial USART (UART) chip from Maxim Integrated. As an example of the minor changes needed to use the MAX3100's serial port instead of (or in addition to) the built in serial port, here is some sample code (note the lower case 's' is the only change needed to use the new serial port).
A one stop shop for using the ATMEGA328P standalone at 8MHz or 1MHz clock speed including compiled bootloader. This is for use primarily on a breadboard, but also also directly on, say, a Uno R3.
There exists little practical information assisting with the experimentation of '595 shift registers. This article and below Arduino sketch aim to address this vacuum. The sketch simulates one or more (chained) 595 shift registers on the serial monitor while simultaneously driving the IC or ICs via the Arduino's pins. This allows concurrent theoretical and practical experimentation with the 74HC595 first-in-first-out (FIFO) shift register family.
This brief HOWTO shows how to take a working 32 bit 14.04 installation and convert it into a 64 bit system. You will be able to keep all your programs, settings and data. You start with a 32 bit system that can run 64 bit programs, then convert it to a 64 bit system that can run 32 bit programs.
With the release of Ubuntu LTS 14.04 (Trusty Tahr), the ability to use the multiarch facility to upgrade to 64 bit is easier than ever. Much simpler than upgrading 12.04 and an evolution of upgrading Debian 7 or 8.
Ready-made QGIS stylesheets (QML) for OpenStreetMap are available for download. These were created and tested with QGIS version 2.2 on Debian GNU/Linux 7.
Efficiently synchronise copies of a large sparse file locally. I deal with a large amount of large sparse files because of virtualisation and other technologies. Because of their size, often a small number of blocks have data and, of these, a small number of blocks are changed and need to be backed up. Using a log-based (snapshotting) file system on USB 2 as a backup device, I only want to write blocks if absolutely necessary.
So what's the solution? Some simple custom code that
- checks that both file sizes are identical;
- verifies that some metadata has changed (i.e time stamp, permissions or owner/group);
- reads both files block-by-block;
- writes only changed blocks to the destination file, and
- updates any changed metadata.