
Functional Devices, Appliances & a Working Economy for your Minecraft world!
Tired of decorative blocks that just sit there? MC-Device V2 turns your base into a modern, working city: phones that really call, screens that really play video, PA speakers you can talk through, coffee machines that brew, and doors that lock. Every model is hand-made pixel art, and every one of them works.

📱 Communication
- Smartphone: A full phone OS. It has calls, chat with voice & video calls, a camera and gallery, banking and music. It also has Catplace, a social feed, and Shop, a player marketplace with delivery drones. There's a notification shade, quick settings and dark mode.
- CatStore: Download extra apps right on your phone, like Smart Lock for your doors.
- Flip Phone: Same number, contacts and chats as your smartphone, in a classic clamshell.
- Phone Case & Strap: Dye them any colour and stick your own image on the back.
- Landline Phone & Phone Booth: A desk phone for your base, and a glass booth with a coin payphone.
- Walkie-Talkie, Radio Box & Headsets: Shared channels with a real military-radio sound. Push-to-talk on B.
- Megaphone & Whistle: Reach a crowd. The whistle has 3 tones, 4 ranges and long or short blasts.
💻 Electronics & Media
- Laptop: A desktop OS with CCTV, chat, music, a Slides app (PDFs and images, PowerPoint-style) and settings. You can keep using it in the world without opening the screen.
- Smart TV, CCTV Monitor, Mini Screen & Projector: Watch YouTube and video links together. The player is built in, so you need no extra mod. These screens can also show up to 4 security cameras at once.
- Security Cameras: Wall, ceiling (full 360°), dome and desk models. Set each one to sweep or to hold a fixed angle.
- PA System: Horn speakers for poles and walls, plus floor cabinets, grouped into zones. Talk through an amplifier, a paging console or a wireless mic. A sound board plays your own clips. Range is up to 512 blocks, and each speaker has its own volume.
💰 Economy
- Bank & ATM: Cash notes and coins, plus debit, credit and gold cards with PINs. Deposit, withdraw and transfer.
- Card Terminal: Shops get paid by card or by tapping a phone.
- Mobile Banking: Check your balance and pay by QR from your phone.
🏠 Home & Office
- Air Conditioners: Wall and ceiling units with a condenser and a remote.
- Coffee Machines: An office machine and a 3-group café espresso machine. They brew 7 drinks that give small buffs.
- Whiteboard & Blackboard: Draw in the world with markers and chalk. Boards join into big walls.
- Garage Doors: Animated sectional doors in 5 styles. Open them with a wall button, a 4-button remote or redstone.
- Smart Door Locks: Keypad, fingerprint or phone unlock. They fit any door.

- Wrench: Right-click a device to configure it. Sneak + right-click two devices to link them, for example camera → screen, mic → amplifier, or button → garage door.
- Calls: Accept with Y, decline with U, and open the latest notification with J. Sneak + right-click a landline to pick up the handset for a private call. Press Spk for speaker mode.
- Radio: Hold B to talk on walkie-talkies, the radio box and the wireless PA mic.
- Whistle: Press R to blow. ← / → change the range and ↑ / ↓ change the tone.
- You can change every key in Controls → MineDevice.
We are still building. Coming next:
- Create-Style Phone: A special landline for engineers (only when Create is installed).
- Vacuum Cleaner: A cutting-edge cleaning device.
- More CatStore apps.
How to Install Phone : MC Device (Mod)
Phone : MC Device by Unknown is verified for Fabric, Forge, Neoforge across Minecraft versions 1.20.1, 1.21.1 (latest release: 1.20.1-2.0.1_fabric, file size: 21.2 MB). Follow the steps below to install it safely from ModCraft.tv:
- Click the Download button above and select your Minecraft version (1.20.1, 1.21.1) and platform (Fabric, Forge, Neoforge).
- Make sure you have the compatible loader or environment installed for Fabric, Forge, Neoforge.
- Move the downloaded Phone : MC Device file into your Minecraft
.minecraft/modsfolder and launch the game.
All Versions
+ Add Version- PA:** Speaker volume changes real loudness (per-step gain + encoder for voice, per-source gain for sound board clips), range no longer shrinks with volume
- Music:** Mp3 decoded in pure Java (JLayer, jar-in-jar) so uploaded songs play without ffmpeg; ffmpeg only for Opus/odd files via MediaTools auto-download with status, % and retry; decode failures no longer skip silently
- PA:** Speaker volume changes real loudness (per-step gain + encoder for voice, per-source gain for sound board clips), range no longer shrinks with volume
- Music:** Mp3 decoded in pure Java (JLayer, jar-in-jar) so uploaded songs play without ffmpeg; ffmpeg only for Opus/odd files via MediaTools auto-download with status, % and retry; decode failures no longer skip silently
- HD phone UI overhaul, flip phone, laptop, radio network, aircon, shop, Catplace
- Radio/telephone voice effects for Plasmo and SVC; condenser airflow scales with fan level; flip phone D-pad outline fixes
- Catplace notifications, live phone/laptop screens on items and blocks, voice/video calls from Chat (phone + laptop)
- /minedevice money reset <players> and reset all confirm
- Speakerphone call pose holds the phone out in front (synced)
- Whistle item; fix stretched video call (orientation-aware capture, phone FOV, aspect-safe display); phone screen stays on during calls
- Whistle breath/strain/range HUD + 3D icon + model fix; in-call screen on held phones; hang-up beeps with end reasons
- TV / CCTV monitor / mini screen with up to 4 linked cameras, laptop CCTV widget + fullscreen, TV video via optional WaterMedia; black laptop screen when idle
- Built-in video player (yt-dlp + ffmpeg, no WaterMedia); dome and desk cameras; fix feed viewport (missing player, black shapes)
- Public phone booth with per-minute coin payphone; video auto-download + yt-dlp/ffmpeg fixes; smaller dome camera
- Working quick settings (flashlight beam, dark mode everywhere, airplane/DND icons, clean photo capture); wearable whistle with R key; CCTV fullscreen sky fix + WASD/zoom control
- Projector (laptop cast/cameras/video), laptop Settings app, analog FM radio voice, pixel flashlight beam
- Music app (phone + laptop, mp3/ogg uploads stored on server), radio headset, headphones, desk microphones, projector screens
- Phone-style HUD toasts (accept/decline call hotkeys Y/U, open notification J); smaller desk microphones
- Flashlight aim pose follows head direction
- PA system, coffee machines, boards, phone case/strap, smart door locks + CatStore, garage doors
- Louder PA horns (PA_HORN +10 dB with soft ceiling, full range at volume 100, normalised sound board clips); ghost key redrawn in the wrench style
- Custom model-fitted block outlines for all blocks, creative tabs split into 5 categories; cafe espresso machine 2 blocks wide (3 groups), no branding on coffee machines, Minecraft-style cup sprites
- Creative tabs renamed to Comms / Electronics / Money / Home & Office / Tools
- Shop:** 20% fee only on sale, free cancel with drone return, relist/remove; fix shade overlay under item icons; remove camera aim reticle
- ATM:** NFC phone-tap cardless withdrawal and terminal phone payment; unlimited saved chat friends sync
- Laptop:** In-world mode after ESC with live offscreen screen on item/block and arrow/Enter/Backspace control
- Laptop:** Left-side hint, CCTV pan/tilt in fullscreen, E mouse mode with typing
- Laptop:** Slides app (PowerPoint-style decks from PDF/images, slideshow, server storage)
- Whistle:** Pixel-art HUD, 6 s breath, blackout slowness/blindness
- Whistle:** 3 tone levels on Up/Down (low/mid/high pitch), tone row on HUD + tooltip
- Media:** Wait for the video to buffer before the clock starts (LOADING gate + READY),
- HD phone UI overhaul, flip phone, laptop, radio network, aircon, shop, Catplace
- Radio/telephone voice effects for Plasmo and SVC; condenser airflow scales with fan level; flip phone D-pad outline fixes
- Catplace notifications, live phone/laptop screens on items and blocks, voice/video calls from Chat (phone + laptop)
- /minedevice money reset <players> and reset all confirm
- Speakerphone call pose holds the phone out in front (synced)
- Whistle item; fix stretched video call (orientation-aware capture, phone FOV, aspect-safe display); phone screen stays on during calls
- Whistle breath/strain/range HUD + 3D icon + model fix; in-call screen on held phones; hang-up beeps with end reasons
- TV / CCTV monitor / mini screen with up to 4 linked cameras, laptop CCTV widget + fullscreen, TV video via optional WaterMedia; black laptop screen when idle
- Built-in video player (yt-dlp + ffmpeg, no WaterMedia); dome and desk cameras; fix feed viewport (missing player, black shapes)
- Public phone booth with per-minute coin payphone; video auto-download + yt-dlp/ffmpeg fixes; smaller dome camera
- Working quick settings (flashlight beam, dark mode everywhere, airplane/DND icons, clean photo capture); wearable whistle with R key; CCTV fullscreen sky fix + WASD/zoom control
- Projector (laptop cast/cameras/video), laptop Settings app, analog FM radio voice, pixel flashlight beam
- Music app (phone + laptop, mp3/ogg uploads stored on server), radio headset, headphones, desk microphones, projector screens
- Phone-style HUD toasts (accept/decline call hotkeys Y/U, open notification J); smaller desk microphones
- Flashlight aim pose follows head direction
- PA system, coffee machines, boards, phone case/strap, smart door locks + CatStore, garage doors
- Louder PA horns (PA_HORN +10 dB with soft ceiling, full range at volume 100, normalised sound board clips); ghost key redrawn in the wrench style
- Custom model-fitted block outlines for all blocks, creative tabs split into 5 categories; cafe espresso machine 2 blocks wide (3 groups), no branding on coffee machines, Minecraft-style cup sprites
- Creative tabs renamed to Comms / Electronics / Money / Home & Office / Tools
- Shop:** 20% fee only on sale, free cancel with drone return, relist/remove; fix shade overlay under item icons; remove camera aim reticle
- ATM:** NFC phone-tap cardless withdrawal and terminal phone payment; unlimited saved chat friends sync
- Laptop:** In-world mode after ESC with live offscreen screen on item/block and arrow/Enter/Backspace control
- Laptop:** Left-side hint, CCTV pan/tilt in fullscreen, E mouse mode with typing
- Laptop:** Slides app (PowerPoint-style decks from PDF/images, slideshow, server storage)
- Whistle:** Pixel-art HUD, 6 s breath, blackout slowness/blindness
- Whistle:** 3 tone levels on Up/Down (low/mid/high pitch), tone row on HUD + tooltip
- Media:** Wait for the video to buffer before the clock starts (LOADING gate + READY),
### Bug Fixes
- Contact & chat limits removed** — phone contacts and chat friends are now unbounded (previously capped at 64). All related
MAX_CONTACTSconstants and sync caps removed. - Double-digit number input** — fixed digit rolling logic so typing "11" correctly produces 11 instead of 02 or similar corruption.
- Spacebar widget focus bug** —
clearWidgets()in Minecraft'sScreendoes not clear the focused child reference. CallingsetFocused(null)afterrebuildWidgets()prevents orphaned widgets from receiving SPACE/ENTER key events (PhoneScreen.java:491). - Camera stuck inputs** —
keyUseandkeyAttackare now properly reset when exiting camera movement mode, preventing the player from being stuck in attack/use state. - Contacts/chat list scrolling** — scroll behavior was missing from Contacts and Chat Friends lists. Reimplemented following the Call Recents scroll pattern (scroll offset,
mouseScrolledhandler, row geometry helpers, proportional scrollbar). - Mouse sensitivity formula** — camera sensitivity now uses vanilla formula
base³ * 8.0with no extra multiplier. Removed the erroneous* 0.15factor that made sensitivity 15% of normal.
### Features
- Thai font support** — embedded TTF font at
assets/minedevice/font/font.ttf. Font definition atassets/minecraft/font/default.jsoninjects the TTF intominecraft:defaultfor automatic CJK/Thai glyph rendering. - ATM cardless mode** — new
/minedevice atm require-card <true|false>command to toggle whether the ATM requires a physical card. When disabled, players can access their account directly from the ATM block.
### Technical Changes
- PhoneMediaSurfaceRenderer refactor** — monolithic media renderer split into focused and overview sub-renderers for maintainability.
- PhoneCallStatePayload network sync** — 64-item cap applied to friend/conversation sync payloads to prevent oversized packets.
- 1.21.1 API migration fixes** (MCD-2 only):
ResourceLocation(...)→ResourceLocation.fromNamespaceAndPath(...)renderBackground(guiGraphics)→renderBackground(guiGraphics, mouseX, mouseY, partialTick)- Added
MapCodec CODEC+codec()override toLabtopBlock use(...)→useWithoutItem(...); removedplayerWillDestroyoverridesvertex()→addVertex(),setColor()API updates for 1.21.1 renderingSavedData.Factory<>constructor andHolderLookup.Providerparameters for persistence- Missing
VoicechatConnectionimport added toSvcMegaphoneVoiceHook
### Bug Fixes
- Contact & chat limits removed** — phone contacts and chat friends are now unbounded (previously capped at 64). All related
MAX_CONTACTSconstants and sync caps removed. - Double-digit number input** — fixed digit rolling logic so typing "11" correctly produces 11 instead of 02 or similar corruption.
- Spacebar widget focus bug** —
clearWidgets()in Minecraft'sScreendoes not clear the focused child reference. CallingsetFocused(null)afterrebuildWidgets()prevents orphaned widgets from receiving SPACE/ENTER key events (PhoneScreen.java:491). - Camera stuck inputs** —
keyUseandkeyAttackare now properly reset when exiting camera movement mode, preventing the player from being stuck in attack/use state. - Contacts/chat list scrolling** — scroll behavior was missing from Contacts and Chat Friends lists. Reimplemented following the Call Recents scroll pattern (scroll offset,
mouseScrolledhandler, row geometry helpers, proportional scrollbar). - Mouse sensitivity formula** — camera sensitivity now uses vanilla formula
base³ * 8.0with no extra multiplier. Removed the erroneous* 0.15factor that made sensitivity 15% of normal.
### Features
- Thai font support** — embedded TTF font at
assets/minedevice/font/font.ttf. Font definition atassets/minecraft/font/default.jsoninjects the TTF intominecraft:defaultfor automatic CJK/Thai glyph rendering. - ATM cardless mode** — new
/minedevice atm require-card <true|false>command to toggle whether the ATM requires a physical card. When disabled, players can access their account directly from the ATM block.
### Technical Changes
- PhoneMediaSurfaceRenderer refactor** — monolithic media renderer split into focused and overview sub-renderers for maintainability.
- PhoneCallStatePayload network sync** — 64-item cap applied to friend/conversation sync payloads to prevent oversized packets.
- 1.21.1 API migration fixes** (MCD-2 only):
ResourceLocation(...)→ResourceLocation.fromNamespaceAndPath(...)renderBackground(guiGraphics)→renderBackground(guiGraphics, mouseX, mouseY, partialTick)- Added
MapCodec CODEC+codec()override toLabtopBlock use(...)→useWithoutItem(...); removedplayerWillDestroyoverridesvertex()→addVertex(),setColor()API updates for 1.21.1 renderingSavedData.Factory<>constructor andHolderLookup.Providerparameters for persistence- Missing
VoicechatConnectionimport added toSvcMegaphoneVoiceHook
### Bug Fixes
- Contact & chat limits removed** — phone contacts and chat friends are now unbounded (previously capped at 64). All related
MAX_CONTACTSconstants and sync caps removed. - Double-digit number input** — fixed digit rolling logic so typing "11" correctly produces 11 instead of 02 or similar corruption.
- Spacebar widget focus bug** —
clearWidgets()in Minecraft'sScreendoes not clear the focused child reference. CallingsetFocused(null)afterrebuildWidgets()prevents orphaned widgets from receiving SPACE/ENTER key events (PhoneScreen.java:491). - Camera stuck inputs** —
keyUseandkeyAttackare now properly reset when exiting camera movement mode, preventing the player from being stuck in attack/use state. - Contacts/chat list scrolling** — scroll behavior was missing from Contacts and Chat Friends lists. Reimplemented following the Call Recents scroll pattern (scroll offset,
mouseScrolledhandler, row geometry helpers, proportional scrollbar). - Mouse sensitivity formula** — camera sensitivity now uses vanilla formula
base³ * 8.0with no extra multiplier. Removed the erroneous* 0.15factor that made sensitivity 15% of normal.
### Features
- Thai font support** — embedded TTF font at
assets/minedevice/font/font.ttf. Font definition atassets/minecraft/font/default.jsoninjects the TTF intominecraft:defaultfor automatic CJK/Thai glyph rendering. - ATM cardless mode** — new
/minedevice atm require-card <true|false>command to toggle whether the ATM requires a physical card. When disabled, players can access their account directly from the ATM block.
### Technical Changes
- PhoneMediaSurfaceRenderer refactor** — monolithic media renderer split into focused and overview sub-renderers for maintainability.
- PhoneCallStatePayload network sync** — 64-item cap applied to friend/conversation sync payloads to prevent oversized packets.
- 1.21.1 API migration fixes** (MCD-2 only):
ResourceLocation(...)→ResourceLocation.fromNamespaceAndPath(...)renderBackground(guiGraphics)→renderBackground(guiGraphics, mouseX, mouseY, partialTick)- Added
MapCodec CODEC+codec()override toLabtopBlock use(...)→useWithoutItem(...); removedplayerWillDestroyoverridesvertex()→addVertex(),setColor()API updates for 1.21.1 renderingSavedData.Factory<>constructor andHolderLookup.Providerparameters for persistence- Missing
VoicechatConnectionimport added toSvcMegaphoneVoiceHook
### Bug Fixes
- Contact & chat limits removed** — phone contacts and chat friends are now unbounded (previously capped at 64). All related
MAX_CONTACTSconstants and sync caps removed. - Double-digit number input** — fixed digit rolling logic so typing "11" correctly produces 11 instead of 02 or similar corruption.
- Spacebar widget focus bug** —
clearWidgets()in Minecraft'sScreendoes not clear the focused child reference. CallingsetFocused(null)afterrebuildWidgets()prevents orphaned widgets from receiving SPACE/ENTER key events (PhoneScreen.java:491). - Camera stuck inputs** —
keyUseandkeyAttackare now properly reset when exiting camera movement mode, preventing the player from being stuck in attack/use state. - Contacts/chat list scrolling** — scroll behavior was missing from Contacts and Chat Friends lists. Reimplemented following the Call Recents scroll pattern (scroll offset,
mouseScrolledhandler, row geometry helpers, proportional scrollbar). - Mouse sensitivity formula** — camera sensitivity now uses vanilla formula
base³ * 8.0with no extra multiplier. Removed the erroneous* 0.15factor that made sensitivity 15% of normal.
### Features
- Thai font support** — embedded TTF font at
assets/minedevice/font/font.ttf. Font definition atassets/minecraft/font/default.jsoninjects the TTF intominecraft:defaultfor automatic CJK/Thai glyph rendering. - ATM cardless mode** — new
/minedevice atm require-card <true|false>command to toggle whether the ATM requires a physical card. When disabled, players can access their account directly from the ATM block.
### Technical Changes
- PhoneMediaSurfaceRenderer refactor** — monolithic media renderer split into focused and overview sub-renderers for maintainability.
- PhoneCallStatePayload network sync** — 64-item cap applied to friend/conversation sync payloads to prevent oversized packets.
- 1.21.1 API migration fixes** (MCD-2 only):
ResourceLocation(...)→ResourceLocation.fromNamespaceAndPath(...)renderBackground(guiGraphics)→renderBackground(guiGraphics, mouseX, mouseY, partialTick)- Added
MapCodec CODEC+codec()override toLabtopBlock use(...)→useWithoutItem(...); removedplayerWillDestroyoverridesvertex()→addVertex(),setColor()API updates for 1.21.1 renderingSavedData.Factory<>constructor andHolderLookup.Providerparameters for persistence- Missing
VoicechatConnectionimport added toSvcMegaphoneVoiceHook
- Phone QR: split the "show QR to world" texture into separate Bank-app and Chat-app QR codes (phone_qr_bankapp / phone_qr_chatapp), each shown with its own held-up phone model.
- Added a Coin item and grouped the money items (banknotes / coin / ATM) in the creative tab.
- 1.21.1: completed the port so it builds and runs (Labtop block/screen/renderers, HomePhone block drop, and Simple Voice Chat megaphone hook updated to the 1.21.1 API).
- Requires Architectury API.
- Phone QR: split the "show QR to world" texture into separate Bank-app and Chat-app QR codes (phone_qr_bankapp / phone_qr_chatapp), each shown with its own held-up phone model.
- Added a Coin item and grouped the money items (banknotes / coin / ATM) in the creative tab.
- 1.21.1: completed the port so it builds and runs (Labtop block/screen/renderers, HomePhone block drop, and Simple Voice Chat megaphone hook updated to the 1.21.1 API).
- Requires Architectury API.
- Phone QR: split the "show QR to world" texture into separate Bank-app and Chat-app QR codes (phone_qr_bankapp / phone_qr_chatapp), each shown with its own held-up phone model.
- Added a Coin item and grouped the money items (banknotes / coin / ATM) in the creative tab.
- 1.21.1: completed the port so it builds and runs (Labtop block/screen/renderers, HomePhone block drop, and Simple Voice Chat megaphone hook updated to the 1.21.1 API).
- Requires Architectury API.
- Phone QR: split the "show QR to world" texture into separate Bank-app and Chat-app QR codes (phone_qr_bankapp / phone_qr_chatapp), each shown with its own held-up phone model.
- Added a Coin item and grouped the money items (banknotes / coin / ATM) in the creative tab.
- 1.21.1: completed the port so it builds and runs (Labtop block/screen/renderers, HomePhone block drop, and Simple Voice Chat megaphone hook updated to the 1.21.1 API).
- Requires Architectury API.
Fixed a bug where joining a server with MineDevice installed could disconnect you with no error message (the server would silently freeze for a moment during the join, causing your client to time out). Most noticeable on servers with large chat history or slower disks.
Fixed a bug where joining a server with MineDevice installed could disconnect you with no error message (the server would silently freeze for a moment during the join, causing your client to time out). Most noticeable on servers with large chat history or slower disks.