Tag Archives: Mathieu Stephan

ATmega32U4 illuminates tricked out business card

Mathieu Stephan (aka limpkin) has designed a revamped business card that packs an ATmega32U4 micrcontroller (MCU).

According to Stephan, the new card stackup fits perfectly into a USB connecter, measuring 
2.4mm high (1.6+0.8).

“The old version was actually thinner so I had to apply solder on the USB pads, which was not so pretty in retrospect. You’ll be surprised to know that the new card can still fit in a normal wallet as it is completely flat,” Stephan wrote in a recent blog post.

“However, the hard part was to solder the two PCBs together as a 1.5mm wide exposed copper ‘band’ was put near the cards’ edges to this goal. Using a reflow oven with the card facing up turned the soldermask yellowish so I ended up soldering them by hand with a hot air gun.”

Nevertheless, says Stephan, not much has changed between the two versions in terms of function, except the number of PWM channels. Meaning, the card is still recognized as an external USB drive and can be reprogrammed using an integrated bootloader.

“The only thing worth mentionning here is that given the ATmega32U4 only had 7 PWM channels I had to use a given PWM channel complementary output and two extra I/O pins to enable/disable these given LEDs,” he added. “Two groups of 2 LEDs will therefore always have the same duty cycle.”

Interested in learning more? You can can check out the project’s official page here.

Video: Designing a mesh networked conference badge

Andrew Nohawk recently attended ZaCon V, a free South African security conference. In honor of the event, Nohawk decided to design an interactive mesh networked conference badge.

As HackADay’s Mathieu Stephan reports, the slick platform is powered by Atmel’s stalwart ATmega328 microcontroller (MCU). Additional features include a Nokia 5110 LCD, a 433MHz AM/OOK TX/RX module, a few LEDs and an assortment of buttons.

“The badges form a mesh network to send messages. This allows conversations between different attendees to be tracked,” Stephan explained.

“Final cost was the main constraint during this adventure, which is why these particular components were chosen and bought from eBay & Alibaba.”

According to Stephan, the first PCP prototypes were CNC milled and required quite a bit of soldering to finish off the 77 final boards. Meanwhile, the protocol itself was verified using Maltego.

“Of the 77 badges soldered together (at various stages of ‘full working order’ – especially the BYOB people) the front computer captured 9810 transmissions, 49 badges and 201 different relationships,” Nohwak confirmed in a blog post detailing the project.

Interested in learning more? You can access the relevant code, raw sqlite database and Maltego graphs from GitHub here or visit the project’s official blog post here.

Video: 3-axis AVR position indicator with digital calipers

Malte recently finished building a compact external display for three digital sliding calipers on his Wabeco F1200 milling machine.

As HackADay’s Mathieu Stephan notes, Malte managed to fit the disassembled calipers onto the machine and use them for positioning.

“Before embarking on this adventure, he noticed that there were similar projects present on the internet, but all of the calipers used had different data interfaces and protocols,” Stephan explained.

“The calipers that [Malte] bought have a mini USB connector, even though the interface itself isn’t USB. As he couldn’t find any information on that interface, he turned to his oscilloscope to decode the protocol.”

Ultimately, Malte decided to construct an AVR-based platform (ATmega168) tasked with reading the three calipers and displaying positional data on the dot matrix LCD show in the video above. 

According to Stephan, the AVR firmware is coded in a mixture of Basic and Assembler.

Interested in learning more about the three-axis AVR position indicator with digital calipers? You can check out the source code and schematics on the project’s official page here.

Atmel powers HackADay’s (offline) Password Keeper

The HackADay crew has chosen Atmel’s ATmega 32U4 microcontroller (MCU) to power its offline password keeper. Known as “Mooltipass,” the platform is also equipped with an easily readable screen, a read-protected smart-card (AT88SC102) and flash memory to store encrypted passwords.

Atmel’s ATmega 32U4 is the same microcontroller [found] in the Arduino Leonardo, allowing us to use the numerous libraries that have been developed for it. In the final schematics, we’ll add an expansion connector so users may connect additional peripherals (we may switch to a FOUR4 layers PCB at this point),” explained HackADay’s Mathieu Stephan. “The microcontroller’s USB lines are protected from ESD by the IP4234CZ6. For encrypted password storage, we found the cheap 1Mbit AT45DB011D FLASH which also has 2/4/16Mbits pin compatible versions. If our beta testers find that 1Mbit is not enough, upgrading the Mooltipass would be easy.”

As noted above, Atmel’s AT88SC102 was chosen to be the secure smart-card, which offers 1024bits read/write protected EEPROM. In terms of the display, Stephan says the team has temporarily opted for the OLED screen shown in the picture above, although the creation of another mooltipass version with an IPS LCD is more than likely.

“These components choices made the voltages electronics fairly simple. The whole solution is powered by the ~5V coming from the USB, and the ~3.3V required by both the flash and the display is provided by the ATmega32U4 internal LDO regulator (~55mA @ 3.0 to 3.6V),” Stephan continued.

“The +12V also needed by the display is generated by a $1 regulated charge pump DC-DC converter. If we had to use a conventional step-up, the component count (and cost) would be much higher. Notice that we put a P-MOSFET in series with the latter as the output voltage when the DC-DC is not working is not 0V but VCC (here +5V). We also used another P-MOSFET to switch the power supply going to the smart card.”

In addition, the HackADay crew selected two resistor networks R6&R7 as voltage dividers to transform 5V signals to 3.3V.

“Fortunately, the ATmega32U4 can receive LVTTL signals, so we don’t need level shifters to get the data coming from the 3.3v-powered flash memory,” he added.

Interested in learning more about the Atmel-powered Mooltipass? You can check out the project’s official dedicated Google Group page here.

High altitude balloon tracking with the ATmega644

A Maker by the name of Ethan (and team) recently designed a low-cost open hardware/software high altitude balloon tracker with sensors that effectively form a mesh network with a master node.

The above-mentioned platform – powered by Atmel’s ATmega644 microcontroller (MCU) – is equipped with an onboard GPS module (NEO-6M), a micro SD card slot, a 300mW APRS (144.39MHz) transmitter and convenient headers to plug an XBee radio.

As HackADay’s Mathieu Stephan notes, the hardware is tasked with obtaining wireless data from various slave platforms, storing it in the uSD card while transmitting the balloon position via APRS along with other data.

“It’s interesting to note that to keep the design low-cost, they chose a relatively cheap analog radio module ($~40) and hacked together AFSK modulation of their output signal with hardware PWM outputs and a sine-wave lookup table,” Stephan explained. “The slave nodes are composed of ‘slave motherboards’ on which can be plugged several daughter-boards: geiger counters, atmospheric sensors, camera control/accelerometer boards.”

Interested in building your own Atmel-powered modular high altitude balloon tracker with mesh networked sensors? You can check out the project’s official page here.

Atmel’s SAM4E16C drives “The Beast”

HackADay’s very own Mathieu Stephan has penned an article describing “The Beast,” an ARM Cortex-M4 based platform equipped with a plethora of communication interfaces and on-board peripherals.

“The microcontroller used in the project is the ATSAM4E16C from Atmel, which has 1Mbyte of flash and 128Kbytes of SRAM,” writes Stephan.

“It integrates an Ethernet MAC, a USB 2.0 Full-speed controller, a sophisticated Analog to Digital Converter and a Digital to Analog Converter (among others).”

Additional board components include: a microphone with its amplifier, a capacitive touch sensor, two unipolar stepper motors controllers, two mosfets, a microSD card connector, a Bluetooth to serial bridge, a linear motor controller and battery retainer for backup power.

The firmware was made in C and uses the Atmel Software Framework. And yes, the project is obviously open hardware (Kicad) and open software.

As previously discussed on Bits & Pieces, Atmel’s SAM4E16C is an ARM Cortex-M4 processor-based microcontroller (MCU) that features a floating point unit and high data bandwidth architecture. The MCU – targeted at industrial automation and building control applications – embeds 1MB Flash and boasts multiple networking/connectivity peripherals, including a 2.0A/B compatible CAN interface and an IEEE Std 1588-compatible 10/100Mbps Ethernet MAC.

Additional communication interfaces? An FS USB device, HS SDCard/SDIO/MMC interface, USARTs, SPIs and multiple TWIs. Analog features include dual 1Msps; 16-bit ADCs of up to 10 channels with analog front end offering offset and gain error correction; and 2-channel, 1Msps 12-bit DAC.

Interested in learning more about Atmel’s ARM-based MCU powering “The Beast?” Additional information about Atmel’s ATSAM4E16C can be found here.