• Microcontroller Programming Issues
  • Easy PCB Manufacturing
  • Gerber Viewer
  • Introduction to CC2541
  • Morse encoder

Implement Photoshop-like Curves with Leptonica

If you’ve used Leptonica, you probably know it’s a great library, but when you want to use it to replicate Photoshop like effects, you will quickly get to want more than what the library provides by default. Take the pixGammaTRC primitive as an example: If you want to modify the lightness of your image, (making it brighter or darken it), or even a simple contrast this might work good enough….

Read More >>

Enhance saturation in images programatically

Increasing the saturation in an image is equivalent to increasing the “amount of color”, while a completely desaturated image would be a grayscale image. See the images below: Normal Saturated Desaturated Grayscale Logic and Implementation Algorithm The images are composed of pixels. For a RGB24 image, each pixel is a set of 3 bytes, 1 for each of the three color channels: red, green, blue. 1 byte (or 8 bits)…

Read More >>

UT50 NaI Scintillation probe

I met some great people today, and I also got a wonderful device for my ongoing experiments as a gift: The UT50 Scintillation probe, manufactured by SC ICPM SA Romania. It features a huge NaI(TL) crystal, with a diameter of 5.5cm and 5.5cm length. The photomultiplier is a British EMI9656KB and the entire device is encapsulated in an aluminum modular cylinder of no more than 24cm total length and 1270g…

Read More >>

AVR SDCard FAT support with FatFS

You’ve probably seen or done lots of cool microcontroller projects already, but did you ever consider adding permanent data storage to your projects? I did, and there are numerous advantages: saving data from sensors (data logger), saving configuration files, reading external content like images or songs, and so on! One thing is to connect an SD Card to an AVR microcontroller via SPI (relatively easy), a completely different thing is…

Read More >>

Using FS1000A/XY-FST RF Radio module with AVRs

Wireless data transfer can be useful for a variety of projects. I stumbled upon a very low cost emitter+receiver modules pair, and planned to use it for some time now. There are a few variants available on the market, but they do quite the same thing, just the operating frequency might be different (315MHz / 418MHz / 433MHz/ 915MHz): The emitter usually has 3 pins (VCC->5V, GND, DATA), with a…

Read More >>

Global radiation monitoring network

EDIT: there is a dedicated blog on this project, here. Make sure to follow it for latest news. A few days ago I announced my intention of creating my first crowd-funded project, but I didn’t tell you what was it about. Well, I’m planning quite a challenging project – to bring my uRADMonitor to a global scale, and create a network of distributed detectors, with data centralized on one server,…

Read More >>

Leptonica saturation deficit workaround

While working with Leptonica I had the unpleasant surprise to notice that the saturation function pixModifySaturation was not really working properly (or at least not entirely as expected). First I didn’t even know what was wrong, I just felt it didn’t look right, then I saw that by transforming the saturation in Leptonica with pixModifySaturation , the contrast would be partially lost. Debugging the issue, and using different photos for…

Read More >>