<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.muhack.org/mediawiki/index.php?action=history&amp;feed=atom&amp;title=MuTag</id>
	<title>MuTag - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.muhack.org/mediawiki/index.php?action=history&amp;feed=atom&amp;title=MuTag"/>
	<link rel="alternate" type="text/html" href="https://wiki.muhack.org/mediawiki/index.php?title=MuTag&amp;action=history"/>
	<updated>2026-04-16T10:33:24Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.12</generator>
	<entry>
		<id>https://wiki.muhack.org/mediawiki/index.php?title=MuTag&amp;diff=294&amp;oldid=prev</id>
		<title>Mrmoddom: Created MuTag project page with features, repository structure, usage, and contact info.</title>
		<link rel="alternate" type="text/html" href="https://wiki.muhack.org/mediawiki/index.php?title=MuTag&amp;diff=294&amp;oldid=prev"/>
		<updated>2025-05-07T12:03:37Z</updated>

		<summary type="html">&lt;p&gt;Created MuTag project page with features, repository structure, usage, and contact info.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Project&lt;br /&gt;
|Picture=Mutag v2 1.jpg&lt;br /&gt;
|Project Status=Finished&lt;br /&gt;
|Participants=Mrmoddom&lt;br /&gt;
}}&lt;br /&gt;
== MuTag v2.1 ==&lt;br /&gt;
The first MuHack&amp;#039;s NFC keychain!&lt;br /&gt;
&lt;br /&gt;
This is a custom PCB with the ATTiny44a microcontroller and an ST25 NFC ISO15 tag.&lt;br /&gt;
&lt;br /&gt;
From the microcontroller, you can access the NFC tag via I²C, modify its configuration, and read/write data.&lt;br /&gt;
&lt;br /&gt;
== Features ==&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;MCU&amp;#039;&amp;#039;&amp;#039;: ATTiny44a  &lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;NFC Tag&amp;#039;&amp;#039;&amp;#039;: ST25 NFC ISO15 (4 Kbit memory)  &lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Energy harvesting&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;High-speed Mailbox&amp;#039;&amp;#039;&amp;#039;: 256 bytes  &lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;4 LEDs&amp;#039;&amp;#039;&amp;#039; in different colors  &lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Dimensions&amp;#039;&amp;#039;&amp;#039;: 20 × 60 mm  &lt;br /&gt;
&lt;br /&gt;
== Getting Started ==&lt;br /&gt;
In the Hardware folder, you&amp;#039;ll find the PCB design files and electrical schematics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#define YELLOW_LED 0&lt;br /&gt;
#define GREEN_LED  1&lt;br /&gt;
#define BLUE_LED   2&lt;br /&gt;
#define RED_LED    3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The LEDs are connected to:&lt;br /&gt;
* Yellow → PA0  &lt;br /&gt;
* Green  → PA1  &lt;br /&gt;
* Blue   → PA2  &lt;br /&gt;
* Red    → PA3  &lt;br /&gt;
&lt;br /&gt;
The NFC tag is on the I²C bus of the ATTiny:&lt;br /&gt;
* SDA → PA6  &lt;br /&gt;
* SCL → PA4  &lt;br /&gt;
&lt;br /&gt;
The tag&amp;#039;s GPO pin is connected to INT0 of the ATTiny (PB2).&lt;br /&gt;
&lt;br /&gt;
=== Activating Energy Harvesting Mode ===&lt;br /&gt;
By default, the tag is in &amp;quot;on demand&amp;quot; mode. To set it to permanent energy harvesting mode:&lt;br /&gt;
# Install the ST25 NFC app from the Play Store: https://play.google.com/store/apps/details?id=com.st.st25nfc  &lt;br /&gt;
# Scan the tag and go to &amp;quot;Register Management&amp;quot;  &lt;br /&gt;
# Read the tag again; locate the register `EH_MODE` (0x01 = on demand)  &lt;br /&gt;
# Set `EH_MODE` to 0x00 and press &amp;quot;Save&amp;quot; (default password = 0000)  &lt;br /&gt;
&lt;br /&gt;
== Programming the ATTiny44a ==&lt;br /&gt;
An external ISP programmer is required: we will use an Arduino Uno as the programmer.&lt;br /&gt;
&lt;br /&gt;
# Upload the `ArduinoISP` sketch to the Arduino.  &lt;br /&gt;
# Add this URL to the &amp;quot;Additional Boards Manager URLs&amp;quot; in the Arduino IDE preferences:&lt;br /&gt;
&amp;lt;pre&amp;gt;http://drazzy.com/package_drazzy.com_index.json&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Install &amp;quot;ATTinyCore&amp;quot; by Spence Konde and select:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Settings&lt;br /&gt;
|-&lt;br /&gt;
! Option !! Value&lt;br /&gt;
|-&lt;br /&gt;
| Board || ATTiny24/44/84 (noBootloader)&lt;br /&gt;
|-&lt;br /&gt;
| Chip  || ATTiny44(a) (v2.0 → select 24)&lt;br /&gt;
|-&lt;br /&gt;
| Clock || 1 MHz internal&lt;br /&gt;
|-&lt;br /&gt;
| BOD   || Disabled&lt;br /&gt;
|-&lt;br /&gt;
| LTO   || Enabled&lt;br /&gt;
|-&lt;br /&gt;
| EEPROM || Retained&lt;br /&gt;
|-&lt;br /&gt;
| millis()/micros() || Enabled&lt;br /&gt;
|-&lt;br /&gt;
| Programmer || Arduino as ISP&lt;br /&gt;
|}&lt;br /&gt;
# MuTag ↔ Arduino connections:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! MuTag !! Arduino&lt;br /&gt;
|-&lt;br /&gt;
| VDD   || 5 V&lt;br /&gt;
|-&lt;br /&gt;
| GND   || GND&lt;br /&gt;
|-&lt;br /&gt;
| SCK   || 13&lt;br /&gt;
|-&lt;br /&gt;
| MISO  || 12&lt;br /&gt;
|-&lt;br /&gt;
| MOSI  || 11&lt;br /&gt;
|-&lt;br /&gt;
| RST   || 10&lt;br /&gt;
|}&lt;br /&gt;
*Note:* The through-hole pads on the MuTag are now 2.54 mm.&lt;br /&gt;
&lt;br /&gt;
To start flashing, touch GND with the Arduino&amp;#039;s reset pin a few seconds before hitting &amp;quot;Upload&amp;quot; in the IDE (or use &amp;quot;Upload using Programmer&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
== Accessing the NFC tag via I²C ==&lt;br /&gt;
The internal memory of the ST25 tag is mapped as an I²C EEPROM at address `0x53`.  &lt;br /&gt;
Example sketch: `Hello_MuHack.ino`.&lt;br /&gt;
&lt;br /&gt;
== TODO ==&lt;br /&gt;
* Add 3D model of the PCB  &lt;br /&gt;
* Find a bootloader for UART programming  &lt;br /&gt;
* Evaluate removing the diodes  &lt;br /&gt;
* Enlarge programming pads  &lt;br /&gt;
* Change MCU to ATTiny44/84 (more memory)  &lt;br /&gt;
* Remove the `RESET` pad  &lt;br /&gt;
&lt;br /&gt;
== Bootloader Notes ==&lt;br /&gt;
The Optiboot bootloader (Spence Konde) uses the AIN0/AIN1 pins (connected to the LEDs). Options:&lt;br /&gt;
* Remove the LEDs to use the pins for UART  &lt;br /&gt;
* Recompile the bootloader with different pins  &lt;br /&gt;
&lt;br /&gt;
This project is designed as a keychain (single programming), so the LEDs were kept and the bootloader was not invested in.&lt;br /&gt;
&lt;br /&gt;
== License ==&lt;br /&gt;
Copyright © 2023 MrMoDDoM  &lt;br /&gt;
This project is licensed under the GNU Affero General Public License (AGPL-3.0).  &lt;br /&gt;
See [[LICENSE.md]] for details.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* Project page on GitHub: https://github.com/MrMoDDoM/MuTag  &lt;br /&gt;
* Google Play ST25 NFC App: https://play.google.com/store/apps/details?id=com.st.st25nfc&lt;/div&gt;</summary>
		<author><name>Mrmoddom</name></author>
	</entry>
</feed>