This commit is contained in:
dxl
2025-01-17 12:46:13 +08:00
6 changed files with 63 additions and 48 deletions
+5 -1
View File
@@ -8,7 +8,9 @@ Europe: [Lab401](https://lab401.com/)
United States: [Hackerwarehouse](https://hackerwarehouse.com/)
Anywhere else: [Sneaktechnology](https://sneaktechnology.com) / [Aliexpress by RRG](https://proxgrind.aliexpress.com/store/1101312023)
MTools Tec: [MTools Tec](https://shop.mtoolstec.com/)
Anywhere else: [Sneaktechnology](https://sneaktechnology.com) / [Aliexpress by RRG](https://proxgrind.aliexpress.com/store/1101312023) / [TechSecurityTools](https://techsecuritytools.com/product/chameleon-ultra/)
# What is it and how to use ?
@@ -39,6 +41,7 @@ Table for future functionality progress
# Compatible applications
* [ChameleonUltraGUI](https://github.com/GameTec-live/ChameleonUltraGUI)
* [MTools BLE](docs/mtoolsble.md)
# Videos
@@ -47,6 +50,7 @@ Table for future functionality progress
* [Downloading and compiling the official CLI](https://www.youtube.com/watch?v=VGpAeitNXH0)
* [Downloading ChameleonUltraGUI](https://www.youtube.com/watch?v=rHH7iqbX3nY)
* [ChameleonGUI features overview](https://www.youtube.com/watch?v=YqE8wyVSse4)
* [MTools BLE - How to clone a card with ChameleonUltra](https://youtu.be/IvH-xtdW1Wk?si=4exqgAAeJ-kxU3aN)
# Official channels
+50
View File
@@ -0,0 +1,50 @@
# MTools BLE Introduction
MTools BLE supports managing the ChamleonUltra, ChameleonLite and DevKits via BLE connections.
## Downlaod Link
- [MTools BLE on iOS](https://apps.apple.com/app/mtools-ble-rfid-reader/id1531345398)
- [MTools BLE on Google Play](https://play.google.com/store/apps/details?id=com.mtoolstec.mtoolsLite)
## How to connect with Bluetooth in MTools BLE
1. Click **A** or **B** button to power on.
2. Click **Bluetooth List** icon in App to search devices.
3. Click **Connect** button on the right to connect.
#### Notice for Bluetooth Connection
1. Grant the Bluetooth permission of App on iOS.
2. Allow Location permission to scan Bluetooth devices on Android.
## Features for ChameleonUltra
### Slot Manager
1. Fetch all slot status.
2. Enable or disable Slots.
3. Change LF and HF Slot name.
4. Set LF and HF Tag Type.
5. Delete and reset all slots.
### Reader
1. Fast read LF and HF Tag.
2. Simulate Mifare Classic Tag with UID, SAK, ATQA and empty dump.
3. Simulate Mifare Ultralight Tag with UID, SAK, ATQA and empty dump.
4. Simulate EM410X LF tag or manually set the ID then simulate.
### Mifare Classic Dump
1. eRead full dump from current active slot to App.
2. Upload full dump to current active slot and simulate.
3. Read Mifare Mini, 1K, 2K, 4K dump from tag with known keys.
4. Write Gen1A, Gen2, Gen3, Gen4 dump to tag with known keys.
5. Format common and magic Mifare Classic tags.
6. Modify block data and save to new dump file.
### Mifare Ultralight Dump
1. eRead full dump from current active slot to App.
2. Upload full dump to current active slot and simulate.
3. Read Mifare Ultralight dump from tag.
4. Write Mifare Ultralight dump to tag.
### Settings
1. Set the Animation of LEDs.
2. Set press and long press button of A and B.
3. Set the **Mifare Classic Emulation** of current slot.
4. Set the **Mifare Ultralight Emulation** of current slot.
5. DFU Tool for updating firmware.
6. Reset Chameleon Device.
-42
View File
@@ -1,42 +0,0 @@
# MTools Lite Introduction
MTools Lite supports managing the ChamleonUltra, ChameleonLite and DevKits via BLE connections.
## Downlaod Link
- [MTools Lite on iOS](https://apps.apple.com/app/mtools-ble-rfid-reader/id1531345398)
- [MTools Lite on Google Play](https://play.google.com/store/apps/details?id=com.mtoolstec.mtoolsLite)
## How to connect with Bluetooth in MTools Lite
1. Click **A** or **B** button to power on.
2. Click **Bluetooth List** icon in App to search devices.
3. Click **Connect** button on the right to connect.
#### Notice for Bluetooth Connection
1. Grant the Bluetooth permission of App on iOS.
2. Allow Location permission to scan Bluetooth devices on Android.
## Functions for ChameleonUltra in MTools Lite
### Slot Manager
1. Fetch all slot status.
2. Enable or disable Slots.
3. Change LF and HF Slot name.
4. Set LF and HF Tag Type.
5. Delete and reset all slots.
### Reader
1. Fast read LF and HF Tag.
2. Simulate Mifare Classic Tag with UID, SAK, ATQA and empty dump.
3. Simulate EM410X LF tag or manually set the ID then simulate.
### Dumps
1. Mifare Keys Manage.
2. Get dump of Mifare Classic Mini, 1K, 2K and 4K with known keys.
3. Modify block data and save to new dump file.
4. Do quick simulation to current active slot.
5. Upload full dump to current active slot.
6. Eread full dump from current active slot to App.
### Settings
1. Set the Animation of LEDs.
2. Set press and long press button of A and B.
3. Set the **Mifare Classic Emulation** of current slot.
4. Enter DFU Mode.
5. Reset Chameleon Device.
+2 -2
View File
@@ -9,8 +9,8 @@ Quickly get up and running with your Chameleon and no technical skill
- [ChameleonUltraGUI on Windows](https://nightly.link/GameTec-live/ChameleonUltraGUI/workflows/build-app/main/windows-installer.zip) ([or without installer](https://nightly.link/GameTec-live/ChameleonUltraGUI/workflows/build-app/main/windows.zip))
- [ChameleonUltraGUI on Linux](https://nightly.link/GameTec-live/ChameleonUltraGUI/workflows/build-app/main/linux.zip)
- [ChameleonUltraGUI on macOS](https://apps.apple.com/app/chameleon-ultra-gui/id6462919364)
- [MTools Lite on iOS](https://apps.apple.com/app/mtools-ble-rfid-reader/id1531345398)
- [MTools Lite on Google Play](https://play.google.com/store/apps/details?id=com.mtoolstec.mtoolsLite)
- [MTools BLE on App Store](https://apps.apple.com/app/mtools-ble-rfid-reader/id1531345398)
- [MTools BLE on Google Play](https://play.google.com/store/apps/details?id=com.mtoolstec.mtoolsLite)
2. Connect your Chameleon via USB or BLE
@@ -201,7 +201,7 @@ uint64_t em410x_id_to_memory64(uint8_t id[5]) {
*/
bool lf_is_field_exists(void) {
nrf_drv_lpcomp_enable();
bsp_delay_us(20); // Display for a period of time and sampling to avoid misjudgment
bsp_delay_us(30); // Display for a period of time and sampling to avoid misjudgment
nrf_lpcomp_task_trigger(NRF_LPCOMP_TASK_SAMPLE); //Trigger a sampling
return nrf_lpcomp_result_get() == 1; //Determine the sampling results of the LF field status
}
@@ -261,7 +261,10 @@ void timer_ce_handler(nrf_timer_event_t event_type, void *p_context) {
if (m_is_send_first_edge == true) { // The first edge of the next sends next time
if (++m_bit_send_position >= LF_125KHZ_EM410X_BIT_SIZE) {
m_bit_send_position = 0; // The broadcast is successful once, and the BIT position is zero
if (++m_send_id_count >= LF_125KHZ_BROADCAST_MAX) {
if(!lf_is_field_exists()){ // To avoid stopping sending when the reader field is present
m_send_id_count++;
}
if (m_send_id_count >= LF_125KHZ_BROADCAST_MAX) {
m_send_id_count = 0; //The number of broadcasts reaches the upper limit, re -identifies the status of the field and re -statistically count the number of broadcast times
}
}
@@ -11,7 +11,7 @@
* The definition of the packaging tool macro only needs to be modulated 0 and 1
*/
#define LF_125KHZ_EM410X_BIT_SIZE 64
#define LF_125KHZ_BROADCAST_MAX 3 // 32.768ms once, about 31 times in one second
#define LF_125KHZ_BROADCAST_MAX 10 // 32.768ms once, about 31 times in one second
#define LF_125KHZ_EM410X_BIT_CLOCK 256
#define LF_EM410X_TAG_ID_SIZE 5