This minimalistic board is packed with features and comes with an extensive ecosystem of documentation and firmware.
For the student (we are never too old) that wants to fast track his career as a professional firmware developer there is:
- a detailed getting started guide
- an Atmel AVR quick start guide, with tutorials and examples
- Recommend best practices
For the developer that wants to improve his game there is:
- A header to quickly connect different kinds of peripherals (GPIO, A/D, UART, SPI & I2C). Notice that each interface has it’s own +3V3 and GND pins to make wiring easier and also improves EMC.
- A full-featured CLI application to experiment with the connected device and verify that it works, before committing to a single line of C code.
- A firmware framework that lays the foundation so that you can quickly develop a new application.
- A Temp&Pressure Logger and Analog voltage Logger application that demonstrates how you can quickly develop your own custom logging application using the onboard AT45D DataFlash.
Atmel ATmega328P Scorpion Board - [Link]
by Patrick Hood-Daniel @ youtube.com:
In this video, I introduce the concept of I2C or TWI and explain the common use of the protocol and how to set it up. This is part one. Part two will delve into the circuit that we will use for the example.
I2C/TWI (Two Wire Interface) Tutorial - [Link]
This project embodies the concept of I2C bus standard. It signifies how important to know the I2C devices and how they will be integrated. There are a lot of innovation can be made using the standard and more people are attracted to get involve in the embedded world professionally or just as hobbyist. The number of I2C devices included in this project may develop new ideas and designs.
The design includes 8-Bit Microchip PIC18F14K22 microcontroller which serves as the master of the I2C bus communication principle. The PCA9547D device is an 8-channel I2C-bus multiplexer with reset that communicates with the I2C devices one at a time. The PCA9500 device is an 8-bit I/O expander with an on-board 2-kbit EEPROM that simplifies the connection of LCD to the multiplexer. The MCP9801-M/MS device is a 2-Wire High-Accuracy Temperature Sensor for temperature monitoring. The 24LC025/ST device is a 2.5V, 2 Kbit Addressable Serial EEPROM (Tape and Reel) with no WP pin for firmware application. The MCP3221A0T-I/OT and TC1321EOATR devices are both for data conversion. The MCP3221A0T-I/OT is a Low Power 12-Bit A/D Converter With I2C Interface and the TC1321EOATR device is a 10-Bit Digital-to-Analog Converter with Two-Wire Interface. The MPL115A1 device is Miniature I2C Digital Barometer for pressure sensing applications. The MCP79400-I/MS is a Battery-Backed I2C™ Real-Time Clock/Calendar with SRAM and Protected EEPROM for applications that includes time. The PCA9530D device is a 2-bit I2C-bus LED SMBus I/O expander optimized for dimming LEDs in 256 discrete steps for Red/Green/Blue (RGB) color mixing and backlight applications. The 2X16 LCD is for display and monitoring application.
The design is very versatile since it opens up ideas to innovate. It is an excellent project for embedded system application. There are a lot of student will be attracted to develop their own design.
Interfacing MCU to various I2C Devices XD - [Link]
Serial camera module that captures time-lapse and stop-motion videos plus images to uSD card. Use with any micro like mbed and Arduino.
ALCAM allows any embedded system with a serial interface (UART, SPI or I2C) to capture JPG/BMP images and also to record them right onto an SD card. Also, ALCAM gives you the ability to create time-lapse and stop-motion AVI videos and save them directly to the SD card. All done through a set of simple and well documented serial commands. ALCAM can also capture images and videos though a special pin, without the need to send any commands.
ALCAM-OEM – Serial camera module - [Link]
RTC or real-time clock is a kind of computer clock for keeping track of the recent or most current time. Commonly, RTCs are present in almost all or any device, which are electronic in nature that needs to keep time accurate. Meanwhile, temperature sensors are devices that gather data concerning the temperature from a source and convert it to a form that can be understood either by an observer or another device. These sensors can be in various forms and are used for a wide variety of purposes, from simple home use to extremely accurate and precise scientific use. They play a very important role almost everywhere that they are applied; knowing the temperature helps people to pick their clothing before a walk outside just as it helps chemists to understand the data collected from a complex chemical reaction.
The circuit uses a PCA8565 CMOS real time clock and calendar optimized for low power consumption. A programmable clock output, interrupt output and voltage-low detector are also provided. All address and data are transferred serially via a two-line bidirectional I2C-bus with a maximum bus speed of 400kbit/s. The built-in word address register is incremented automatically after each written or read data byte. It also includes a MCP9801 digital temperature sensor capable of reading temperatures from -55°C to +125°C. Temperature data is measured from an integrated temperature sensor and converted to digital word with a user selectable 9 to 12 bit Sigma Delta Analog to Digital Converter. The MCP9801 notifies the host controller when the ambient temperature exceeds a user programmed set point. The ALERT output is programmable as either a simple comparator for thermostat operation or as a temperature event interrupts. Communication with the sensor is accomplished via a two-wire bus that is compatible with industry standard protocols. This permits reading the current temperature, programming the set point and hysteresis and configuring the device. Address selection inputs allow up to eight MCP9801 sensors to share the same two-wire bus for multizone monitoring. Small physical size, low installed cost and ease of use make the MCP9801 an ideal choice for implementing sophisticated temperature system management schemes in a variety of applications.
The board is basically a carrier for the two IC’s that make up the Real Time Clock (RTC), PCA8565 and the Digital Temperature Sensor, MCP9801. It conveniently combines the two for applications that require RTC and temperature sensing. A particularly useful feature of this RTC is that it can detect power down and record the time at that event. This is ideal for connecting to a microcontroller that does not have an RTC.
I2C Temperature Sensor & Real Time Clock - [Link]
MinieC eC interface is a very cost effective solution for adding eC sensing capability to any project. This unit takes the analog complexity out of measuring the conductivity of a solution.
MinieC I2C eC interface - [Link]
The Company AMS AG has introduced the non-contact AS5601 Hall-based rotary magnetic position encoding chip. It works by sensing changes in the magnetic field components perpendicular to the surface of the chip and converts field changes into voltages to produce incremental A/B outputs and absolute position information that can be read over an I²C bus. Analog signals from the built-in Hall sensors are amplified and filtered before conversion to binary values. A hardwired CORDIC block (Coordinate Rotation Digital Computer) calculates the angle and magnitude of the magnetic field vector. Magnetic field intensity is used by the automatic gain control (AGC) to adjust the amplification level which compensates for temperature and magnetic field variations.
New Rotary Encoder - [Link]
The LTC2946 is a high or low side charge, power and energy monitor for DC supply rails in the 0V to 100V range. An integrated ±0.4% accurate, 12-bit ADC and external precision time base (crystal or clock) enables measurement accuracy better than ±0.6% for current and charge, and ±1% for power and energy. A ±5% accurate internal time base substitutes in the absence of an external one. All digital readings, including minimums and maximums of voltage, current and power, are stored in registers accessible by an I²C/SMBus interface. The part’s wide operating range makes it ideal for monitoring board energy consumption in blade servers, telecom, solar and industrial equipment, and advanced mezzanine cards (AMC).
LTC2946 – Wide Range I2C Power, Charge and Energy Monitor - [Link]
The MAX5825PMB1 peripheral module provides the necessary hardware to interface the MAX5825 8-channel DAC to any system that utilizes Pmod™-compatible expansion ports configurable for I²C communication. The IC features eight independent 12-bit accurate internally buffered voltage-output DAC channels. The IC also features an internal reference that is selectable between 2.048V, 2.500V, and 4.096V (4.096V reference operation is not supported with a standard 3.3V Pmod-port power supply).
MAX5825PMB1 Peripheral Module Board - [Link]
Main task – advanced communication between multiple Arduinos using I2C bus.
Main problem – most online tutorials covers just one blinking LED with almost no practical use. Slave just executes ONE and SAME function every time Master asks about it. I’d like to outsource slave Arduinos for zillions of tasks.
Proposed solution – simple protocol which enables to send any number of commands to Slave, opposing single return from simple Wire.onRequest();
Simple I2C protocol for advanced communication between Arduinos - [Link]