Archive for November 2010

Measuring temperatures with TMP03/04 (Part 4)

Part 1, 2, 3, 4, 5, 6, 7, 8 Here are the lastest developments in the library (PlainTMP) which handles the TMP0x series temperature sensors from Analog Devices. The core function performs temperature measurement on TMP03, TMP04, TMP05 and TMP06 ratiometric sensors. The last two ones must be configured in continuous measurement mode (Pin 2 is left floating). The options […]

Tips and Tricks (7)

Previous T&T An other very surprising trick which really puzzled me! See this very simple sketch: uint8_t runOnce = 0x00; void setup() { Serial.begin(115200); Serial.println(“Ready…”); } void loop() { if (runOnce == 0x00) { runOnce = 0x01; for (uint8_t i = 0; i < 32; i++) { uint32_t j = (1 << i); Serial.print(i, DEC); […]

Fast Fourier Transform (FFT) (Part 8)

Part 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 I received some questions related to the use of the FFT library. This example illustrate how to interface the FFT function to an acquisition engine, such as the optimized one from the PlainADC library. /* Example of use of the ADC and FFT libraries Copyright (C) 2010 Didier Longueville This program is free software: […]

SD Cards (Part 4)

Other posts on same subject Part 1, 2, 3, 4, 5, 6 I could have nammed this post “Cheapest SD card socket contest”. This is the simplest, smallest and cheapest socket that I have found for attaching a SD card to an (Adafruit type of) Arduino proto shield. In addition to the shield, you only need a 7 pins male header, a […]

Tips and tricks (6)

PreviousT&T Mapping a structure to an array of bytes, the lazy,the  clean and the smart way. What for? While designing a data logger application, I decided to use a custom variable in order to store individual records and declared it the academic way typedef struct varRecord { double time; uint8_t temperature; uint16_t pressure; } newRecord; […]

Free Software as a World Treasure

These are not my words, but those from the Friends of the World Treasures International Secretary : Free Software GNU is an immaterial cultural element of exceptional value and worldwide renow. Free Software is the product of a large community that is deeply involved in the defense and promotion of vital elements of the local […]

Unreachable website

Arduinoos was unreachable on the 10 of November. For the time being, the blog is hosted at my Internet provider which has one of (not to say the) poorest customer service: in the present case, the server was down and they did not even sent a mail, published an incident ticket or what ever. All […]

Arduino Enclosure (Part 4)

Part 1, 2, 3, 4, 5, 6, 7 Using the same standard enclosure as before, let’s insert the components from the previously studied user interface: 2×16 characters LCD and rotary encoder. They fit marvelously well! Opening a window in the front panel is the only awkward task. Be patient, use proper cutting tools (e.g. Xacto knifes), watch you fingers! After considering several […]

Fast Signal Sampling (Part 4)

Part 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 11, 12 Once again, I decided to gather all the scanning engine code in one library (PlainDAC). This is the link to the library, and below is the example code from the library which shows how easy it is now to acquire […]

Fast Signal Sampling (Part 3)

Part 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 11, 12 Bugs and improvments! While testing some final applications, I captured one bug (improper calculation) and managed to improve the clock stability. Here is the revised function for parameter settings void PlainADC::setAcquisitionParameters(uint8_t channel, uint16_t samplesBufferSize, uint16_t frequency) { // Set acquisition […]