Sending Data Over Bluetooth Low Energy With A Cheap NRF24L01+ Module

nRF24L01+ modules like the one shown above are a great way to send data wirelessly between your projects. They can be found on many websites for less than $1.50 a piece and many libraries exist for them. After having thoroughly looked at the Bluetooth Low Energy (BLE) specifications, [Dimitry] managed to find a way to broadcast BLE data with an nRF24L01+.

Luckily enough, BLE and nRF24L01+ data packets have the same preambles. However, the latter can’t send more than 32 bytes in a packet and can’t hop between frequencies as fast as the BLE specification wants. [Dimitry] found the solution when he discovered that he could send unsolicited advertisements on three specific channels. In the end, considering the 32 bytes the nRF24L01+ can send, you’ll need to use 3 bytes for the CRC, 2 for the packet header, 6 for the MAC address and 5 for devices attributes. This leaves us with 16 bytes of pure data or 14 bytes to split between data and name if you want your project to have one.

DIY Ultrasonic Acoustic Levitation

[Mike] saw a few videos of ultrasonic acoustic levitation rigs put together by student researchers. Figuring it couldn’t be that hard to replicate, he set out and built his own using surplus parts and whatever was sitting around his parts drawer.

The build began with a huge ultrasonic transducer from an old ultrasonic cleaning tank [Mike] picked up on eBay for $20 £20. He didn’t pick up the standard driver board, as those don’t have a very clean output – something desperately needed if you’re setting up a standing wave. He did manage to put a simple supply together with a 555 timer, a MOSFET and a 12 V transformer connected backwards, though.

The test rig is pretty simple – just the transducer sitting on a table with an aluminum plate sitting above it on threaded rods. By adjusting the distance between the transducer to the aluminum plate, [Mike] managed to set up some standing waves he was able to suspend small Styrofoam balls in. It’s not quite precise enough to levitate small chunks of sodium and water, but it makes for an excellent science fair-type project.

Continue reading “DIY Ultrasonic Acoustic Levitation”

Desoldering Chips With Fire

Salvaging components is a staple of any electronic enthusiast, but many times those interesting chips – old 8-bit microcontrollers, memories, and CPUs found in everything from game consoles to old computers – are rather difficult to remove from a board. [Ryan] over on Instructables has a rather interesting method of removing old SMD packages using nothing more than a little fire and a pair of tweezers.

Obviously the best way to go about salvaging SMD components is with a heat gun, but lacking the requisite equipment, [Ryan] managed to remove a few SMD chips using rubbing alcohol as a heat source. In a properly controlled environment, [Ryan] filled a small metal dish with alcohol, set it on fire, and used the heat generated to remove a few components. Alcohol lamps are a common bench tool in a range of repair disciplines because the fuel is cheap and burns relatively cleanly (not leaving an unwanted residue on the thing you’re heating).

It’s an interesting kludge, and given [Ryan]’s display of desoldered components, we’re going to call it a success. It might also work for through-hole components, allowing for easy removal of old SRAM, ROM, and other awesome chips.

Seven Decade Programmable Resistor

124

[Gerry Sweeney] was tired of messing around with resistors while prototyping his projects, so he decided he wanted a resistor decade box. The problem is they are typically big and rather expensive ($100+). Unhappy with the selection available for purchase, he decided to design his own.

In the accompanying video, he shows off his first attempt after being inspired by a past post we covered that used a combination of resistors and thumbwheel decimal switches. He modified the design a bit and used surface mount resistors instead, which made for a fairly compact and convenient seven decade resistor box. But he still wasn’t happy with it.

He decided to design his own PCB instead. The simple design utilizes surface mount resistors to conserve space, and jumpers to select the resistance. No bulky switches get in the way and it’s fairly cheap to produce.

Check out the great video explanation of the project after the break. He also shows off the insides of a commercial resistor decade box!

Continue reading “Seven Decade Programmable Resistor”

Explaining The Low Level Stuff You Don’t Know About ARM Programming

Most of us don’t realize how spoiled we are with the different development environments available on the internet. If someone wants to start a blank project on a new [ARM/DSP/…] platform, he usually fires up the dedicated Integrated Development Environment (IDE) and starts coding a C/C++ program. However, there are many initialization routines and scripts required with your program before it can run correctly. In his great article, [Andrew] explains to us what these are by starting a blank project without using any IDE.

As you can see in the above picture, [Andrew]’s project is made around an Atmel SAM4E microcontroller. The chosen toolchain is the arm-none-eabi-gcc from GNU Tools for ARM Embedded Processors. The first part of the article starts with a simplified explanation on how/why your code and variables are split into different memory sections (.bss, .data, .rodata, .text), then [Andrew] details how the linker script will put these sections at different physical addresses depending on your microcontroller’s memory layout. He also shows us how to take care of the stack placement, vector table, variable (non)initialization, and C Runtime. For information, the latter is executed when your processor starts, it is in charge of setting up the stack pointer, initializing the RAM, setting up the standard library and calling the main().

A very nice introduction on the very low level routines running on most processors out there.

High Pressure Air Compressor Using A Pair Of Refrigeration Compressors

[Ed] from Ed’s Systems, aka [Aussie50] took some time to demo his high pressure Frankenstein air compressor he stitched together from two refrigeration compressors. The two Danfoss SC15 compressors can produce upwards of 400psi and can run all day at the 300 psi range without overheating. The dual units may get up to pressure quickly considering the small accumulator “tank”, but high CFM isn’t the goal with this build. [Ed] uses the system to massacre some LCD panels with lead, ball bearings, and other high speed projectiles shot from a modified sandblasting gun. Just a bit of air at 400 psi is all you need for this terminator toy.

Don’t think the destruction is wasteful either; [Ed] strives to repair, rebuild, reuse, repurpose and a few other R’s before carefully separating and sorting all the bits for recycling. This modification included lots of salvaged hardware from older teardowns such as high pressure hoses, connectors, accumulator and pressure cutoff switches.

At first it seems strange to see something engineered for R22 refrigerant working so well compressing air. Morphing refrigeration systems into air compressor service is something [Ed] has been doing for a long time. In older videos, “fail and succeed”,  [Ed] shows the ins and outs of building silent air compressors using higher capacity storage tanks. Being no stranger to all variations of domestic and commercial refrigeration systems, [Ed] keeps home built air compressors running safe and problem free for years.

Don’t think this is the only afterlife for old refrigeration compressors, we’ve seen them suck too. You’ll get a few more tidbits, and can watch [Ed’s] video overview of his home built compressor after the break.

Continue reading “High Pressure Air Compressor Using A Pair Of Refrigeration Compressors”

Update: McHck’s Self Flashing Rig

A few weeks ago we featured the McHck project (pronounced McHack), a $5 Cortex M4 based platform which can be directly plugged into one’s computer. Recently, [Simon] announced that he made a firmware allowing a McHck to behave as a SWD adapter and also detailed his flashing rig.

Therefore, those who’d want to build their own McHck would only need to borrow an SWD programmer once to get started. When the first platform has been programmed with the SWD firmware, it can be used to flash and debug applications on the second McHck. Consequently, the microcontroller flashing rig [Simon] designed (shown in the picture above) is based on this. The few core elements are a TQFP48 ZIF programming socket, a push button and two LEDs. Simply push the Kinetis in the programming socket, close it and press the button. Success of the operation is indicated by the two LEDs. [Simon] used the Ragel State Machine Compiler to generate his flashing program and all the code he made can be downloaded from his github.

If you missed the original McHck post now’s your chance to go back and see what it is all about.