export type AccessoryBrand = 'unitree' | 'pudu'; export type AccessoryGroup = | 'dexterous-hand' | 'robotic-arm' | 'sensor' | 'dispatch' | 'docking' | 'attachment' | 'iot-integration'; export interface Accessory { id: string; slug: string; brand: AccessoryBrand; brandLabel: string; name: string; tagline: string; group: AccessoryGroup; description: string; features: string[]; image: string; accent: string; officialUrl?: string; compatibility?: string[]; } export const GROUP_LABELS: Record = { 'dexterous-hand': 'Dexterous Hands', 'robotic-arm': 'Robotic Arms', sensor: 'Perception & Sensors', dispatch: 'Dispatch & Calling', docking: 'Docking & Charging', attachment: 'Modular Attachments', 'iot-integration': 'IoT & Building Integration', }; const GOLD_CHAMPAGNE = '#DEE0F0'; const GOLD_BRAND = '#273F94'; const GOLD_BRONZE = '#8891C7'; export const ACCESSORIES: Accessory[] = [ // ============ UNITREE DEXTEROUS HANDS ============ { id: 'unitree-dex2-5', slug: 'unitree-dex2-5', brand: 'unitree', brandLabel: 'Unitree', name: 'Dex2-5 Dexterous Hand', tagline: 'Tendon-driven 5-finger hand with 100,000+ fatigue cycles tested.', group: 'dexterous-hand', description: 'A 5-finger, 10-DOF tendon-driven dexterous hand for G1 and R1 humanoids. Gear-tendon drive with hidden internal wiring, 365 g lightweight design, and full perceptual feedback at 1 kHz.', features: [ '10 DOF total (2 actuated), 5 fingers', '365 g, 151×70×63 mm', '0.5 s full fist clench', '100,000+ fatigue cycles tested', 'Survived 100+ drop tests', '1000 Hz sensor / comm rate', ], image: '/images/accessories/unitree-dex2-5.jpg', accent: GOLD_CHAMPAGNE, officialUrl: 'https://www.unitree.com/Dex2-5', compatibility: ['Unitree G1', 'Unitree R1'], }, { id: 'unitree-dex5-1', slug: 'unitree-dex5-1', brand: 'unitree', brandLabel: 'Unitree', name: 'Dex5-1 Dexterous Hand', tagline: 'High-DOF dexterous hand with 94 tactile sensors for RL workflows.', group: 'dexterous-hand', description: 'A 20-DOF (16 actuated) dexterous hand with 94 tactile sensors and backdrivable joints designed for reinforcement-learning workflows. ±22° four-finger lateral swing and operation from –20 °C to 60 °C.', features: [ '20 DOF (16 active + 4)', '94 tactile sensors', '1100 g, –20 °C to 60 °C', '3.5 kg palm-down / 4.5 kg palm-side load', '±22° four-finger lateral swing', 'Backdrivable, low-damping reducers', ], image: '/images/accessories/unitree-dex5-1.png', accent: GOLD_BRAND, officialUrl: 'https://www.unitree.com/Dex5-1', compatibility: ['Unitree G1', 'Unitree H1', 'Unitree H2', 'Research arms'], }, { id: 'unitree-dex3-1', slug: 'unitree-dex3-1', brand: 'unitree', brandLabel: 'Unitree', name: 'Dex3-1 Dexterous Hand', tagline: 'Power-control 3-finger hand with hybrid force/position control.', group: 'dexterous-hand', description: 'A 3-finger, 7-DOF dexterous hand with 33 tactile pressure sensors and hybrid force/position control. Designed to pair with the G1 humanoid for general-purpose manipulation.', features: [ '7 DOF, 3 fingers', '33 tactile pressure sensors', '±2 mm fingertip repeatability', '500 g payload', '12–58 V operating voltage', '1 kHz communication rate', ], image: '/images/accessories/unitree-dex3-1.png', accent: GOLD_BRONZE, officialUrl: 'https://www.unitree.com/Dex3-1', compatibility: ['Unitree G1'], }, { id: 'unitree-dex1-1', slug: 'unitree-dex1-1', brand: 'unitree', brandLabel: 'Unitree', name: 'Dex1-1 Embodied AI Gripper', tagline: 'Two-finger embodied-AI gripper with optional 1080p camera.', group: 'dexterous-hand', description: 'A two-finger gripper with 90 mm stroke, 0.1 mm resolution, and 5–120 N adjustable force. Available in Standard and Advanced (with 1080p camera) variants, compatible with G1, H2, R1, or standalone use.', features: [ '90 mm stroke, 5–120 N adjustable force', '0.1 mm fingertip resolution', '0.24 s full-stroke close', '20 kg form-fit grasp payload', '6 Mbps RS485 communication', 'Advanced version includes 1080p camera', ], image: '/images/accessories/unitree-dex1-1.png', accent: GOLD_CHAMPAGNE, officialUrl: 'https://www.unitree.com/Dex1-1', compatibility: ['Unitree G1', 'Unitree H2', 'Unitree R1', 'Standalone'], }, // ============ UNITREE ROBOTIC ARMS ============ { id: 'unitree-z1', slug: 'unitree-z1', brand: 'unitree', brandLabel: 'Unitree', name: 'Z1 6-Axis Manipulator', tagline: 'Onboard 6-axis manipulator for mobile robotics platforms.', group: 'robotic-arm', description: 'Z1 Air (4.3 kg) and Z1 Pro (4.5 kg) 6-axis robotic arms for mobile robots in logistics, retail, and research. 740 mm reach, 2–3 kg payload, ~0.1 mm repeatability. Designed for AlienGo and B1 mounting.', features: [ '6-axis, 740 mm reach', '4.3 kg (Air) / 4.5 kg (Pro)', '2–3 kg payload', '~0.1 mm repeatability', 'Joint force control + collision detection', 'Position + force control modes', ], image: '/images/accessories/unitree-z1.png', accent: GOLD_BRAND, officialUrl: 'https://www.unitree.com/z1', compatibility: ['Unitree AlienGo', 'Unitree B1', 'Mobile platforms'], }, { id: 'unitree-d1-t', slug: 'unitree-d1-t', brand: 'unitree', brandLabel: 'Unitree', name: 'D1-T Teleoperation Arm', tagline: 'Teleoperation robot arm for embodied-AI data collection.', group: 'robotic-arm', description: 'Dual-arm or quad-arm teleoperation kit with 2.37 kg ultra-light aluminum design. Bus servos featuring position/velocity/force control for embodied-AI data collection. 7-DOF (6-axis + gripper), 670 mm reach, 500 g payload.', features: [ '7-DOF arm (6-axis + gripper)', '2.37 kg, 670 mm reach, 500 g payload', 'Ultra-precision force-controlled servos', 'Dual-arm / Quad-arm configurations', 'Camera & mobile-chassis ready', '24 V (2.5 A standard / 5 A max)', ], image: '/images/accessories/unitree-d1-t.png', accent: GOLD_BRONZE, officialUrl: 'https://www.unitree.com/D1-T', compatibility: ['Embodied AI research', 'Data collection'], }, // ============ UNITREE PERCEPTION & SENSORS ============ { id: 'unitree-l2', slug: 'unitree-l2', brand: 'unitree', brandLabel: 'Unitree', name: '4D LiDAR L2', tagline: '4D LiDAR with built-in IMU and open-source SLAM (POINT-LIO).', group: 'sensor', description: 'A 4D LiDAR sensor with built-in 6-axis IMU and open POINT-LIO SLAM stack. 360°×96° ultra-wide field of view at 64,000 pts/s with 2 cm accuracy. 230 g compact form, 30 m range at 90% reflectivity.', features: [ '360°×96° ultra-wide FOV', '64,000 pts/s, 2 cm accuracy', '30 m @ 90% reflectivity', 'Built-in 6-axis IMU', '230 g compact form', 'Open POINT-LIO SLAM stack', ], image: '/images/accessories/unitree-l2.png', accent: GOLD_CHAMPAGNE, officialUrl: 'https://www.unitree.com/L2', compatibility: ['Unitree Go2', 'Unitree quadrupeds', 'Third-party robots'], }, // ============ PUDU DISPATCH ============ { id: 'pudu-pager', slug: 'pudu-pager', brand: 'pudu', brandLabel: 'Pudu', name: 'PUDU Pager', tagline: 'Restaurant table pager that triggers delivery cycles.', group: 'dispatch', description: 'A compact table-side pager that calls BellaBot, KettyBot, HolaBot, and PuduBot to specific tables on demand. Wireless, long battery life, and integrates with the Pudu Link cloud platform.', features: [ 'Wireless table-side calling', 'Long battery life', 'Pudu Link cloud integration', 'Multi-robot fleet support', 'Multiple device pairing', 'Customizable call zones', ], image: '/images/accessories/pudu-pager.png', accent: GOLD_BRONZE, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['BellaBot', 'BellaBot Pro', 'KettyBot', 'HolaBot', 'PuduBot 2'], }, { id: 'pudu-4g-watch', slug: 'pudu-4g-watch', brand: 'pudu', brandLabel: 'Pudu', name: '4G Watch', tagline: 'Wrist-worn 4G dispatcher for managing service robots from anywhere.', group: 'dispatch', description: 'A wearable 4G watch for staff to dispatch and manage service robots from anywhere on the property. Real-time fleet status, table-to-robot routing, and call/cancel actions on-wrist.', features: [ 'Wrist-worn dispatch control', '4G connectivity', 'Real-time fleet status', 'Call / cancel actions', 'Multi-robot management', 'Pudu Link integration', ], image: '/images/accessories/pudu-pager.png', accent: GOLD_BRAND, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['All Pudu service robots'], }, // ============ PUDU DOCKING & CHARGING ============ { id: 'pudu-docking-station', slug: 'pudu-docking-station', brand: 'pudu', brandLabel: 'Pudu', name: 'Docking & Charging Station', tagline: 'Auto-charging dock for continuous robot operation.', group: 'docking', description: 'Auto-charging station for continuous robot operation. Product-specific variants for CC1, T300, FlashBot Max, BellaBot Pro, and other Pudu platforms.', features: [ 'Auto-docking and charging', 'Product-specific variants', 'Fleet-ready multi-robot support', 'Indoor and semi-outdoor models', 'Status indicators', 'Pudu Link cloud integration', ], image: '/images/robots/pudu-sh1.png', accent: GOLD_CHAMPAGNE, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['CC1', 'T300', 'FlashBot Max', 'BellaBot Pro', 'PuduBot 2'], }, { id: 'pudu-self-cleaning-dock', slug: 'pudu-self-cleaning-dock', brand: 'pudu', brandLabel: 'Pudu', name: 'Self-Cleaning Docking Station', tagline: 'Heavy-duty CC1 dock with self-cleaning water station.', group: 'docking', description: 'A heavy-duty dock for CC1 with metallic structure and a self-cleaning water station. Automatic refill, wastewater drain, and detergent dosing for fully autonomous cleaning cycles.', features: [ 'Self-cleaning water station', 'Metallic heavy-duty frame', 'Automatic refill + drain', 'Detergent dosing', 'Indoor commercial environments', 'Fleet-ready', ], image: '/images/accessories/pudu-self-cleaning-dock.png', accent: GOLD_BRONZE, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['CC1', 'CC1 Pro'], }, { id: 'pudu-mobile-water-station', slug: 'pudu-mobile-water-station', brand: 'pudu', brandLabel: 'Pudu', name: 'Mobile Water Station', tagline: 'Portable water + detergent station for cleaning robots.', group: 'docking', description: 'A portable water and detergent station for CC1 / SH1 cleaning robots. Easy refill anywhere on site, with on-board detergent dosing for flexible cleaning programs.', features: [ 'Portable water + detergent', 'On-site refill anywhere', 'On-board detergent dosing', 'Compatible with CC1 / SH1', 'Modular tank', 'Cleaning-ready operation', ], image: '/images/accessories/pudu-mobile-water-station.png', accent: GOLD_BRAND, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['CC1', 'SH1'], }, // ============ PUDU MODULAR ATTACHMENTS ============ { id: 'pudu-protection-case', slug: 'pudu-protection-case', brand: 'pudu', brandLabel: 'Pudu', name: 'Protection Case', tagline: 'Snap-on protective covers for delivery robots.', group: 'attachment', description: 'Snap-on protective covers for BellaBot Pro, KettyBot Pro, T300, and FlashBot Max. Protects exteriors during high-traffic operation while preserving cameras and sensors.', features: [ 'Snap-on covers', 'Product-specific fit', 'Easy install / removal', 'Preserves sensors', 'Available colors', 'Heavy-traffic ready', ], image: '/images/accessories/pudu-protection-case.png', accent: GOLD_CHAMPAGNE, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['BellaBot Pro', 'KettyBot Pro', 'T300', 'FlashBot Max'], }, { id: 'pudu-retractable-tray-baffle', slug: 'pudu-retractable-tray-baffle', brand: 'pudu', brandLabel: 'Pudu', name: 'Retractable Tray Baffle', tagline: 'Retractable side rails preventing dish slippage on trays.', group: 'attachment', description: 'Retractable side rails for BellaBot Pro / KettyBot Pro trays. Keeps dishes, glassware, and parcels stable during high-speed delivery and turns.', features: [ 'Retractable side rails', 'Dish + glass stability', 'Easy retract for unloading', 'Compatible with multi-tray setups', 'High-traffic delivery ready', 'Quick install', ], image: '/images/accessories/pudu-retractable-tray-baffle.png', accent: GOLD_BRONZE, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['BellaBot Pro', 'KettyBot Pro'], }, { id: 'pudu-tray', slug: 'pudu-tray', brand: 'pudu', brandLabel: 'Pudu', name: 'Modular Tray', tagline: 'Spare modular tray for delivery robots — configurable 3–7 levels.', group: 'attachment', description: 'Spare modular trays for Pudu delivery robots. Configurable from 3 to 7 levels with infrared tray sensors and adjustable heights for trays, dishes, and parcels.', features: [ 'Configurable 3–7 level stack', 'Infrared tray sensors', 'Adjustable height', 'Heavy-load support', 'Quick swap', 'Multiple finishes', ], image: '/images/robots/pudu-pudubot2.png', accent: GOLD_BRAND, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['BellaBot', 'BellaBot Pro', 'KettyBot Pro', 'PuduBot 2'], }, { id: 'pudu-conveyor-single-layer', slug: 'pudu-conveyor-single-layer', brand: 'pudu', brandLabel: 'Pudu', name: 'T300 Conveyor — Single Layer', tagline: 'Single-level conveyor attachment for T300 AMR.', group: 'attachment', description: 'Single-level conveyor attachment for the T300 industrial AMR. Enables in-line pickup and dropoff for manufacturing material handling, light goods transport, and back-of-house logistics.', features: [ 'Single-level conveyor', 'In-line pickup / drop', 'Manufacturing material handling', 'Quick attach', 'Heavy-duty rollers', 'Conveyor IoT integration', ], image: '/images/accessories/pudu-conveyor-single-layer.png', accent: GOLD_CHAMPAGNE, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['PUDU T300'], }, { id: 'pudu-towing-device', slug: 'pudu-towing-device', brand: 'pudu', brandLabel: 'Pudu', name: 'T300 Towing Device', tagline: 'Towing attachment converting T300 to a tow tractor.', group: 'attachment', description: 'T300 towing attachment for hauling trailers, carts, and totes. Modular hitch with safe coupling, ideal for warehouse train operations and back-of-house logistics.', features: [ 'Modular hitch', 'Trailer / cart towing', 'Safe coupling sensors', 'Warehouse train ops', 'Tool-less install', 'IoT route planning', ], image: '/images/robots/pudu-d7.png', accent: GOLD_BRONZE, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['PUDU T300'], }, { id: 'pudu-lifting-rack', slug: 'pudu-lifting-rack', brand: 'pudu', brandLabel: 'Pudu', name: 'T300 Lifting Rack', tagline: 'Lifting platform attachment for shelf pick-and-place.', group: 'attachment', description: 'T300 lifting-platform attachment for shelf pick-and-place operations. Modular adjustable rack heights for parts kitting, restocking, and just-in-time material flows.', features: [ 'Powered lift platform', 'Adjustable rack heights', 'Shelf pick-and-place', 'Just-in-time material flow', 'Safe motion sensors', 'Tool-less install', ], image: '/images/robots/pudu-d9.png', accent: GOLD_BRAND, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['PUDU T300'], }, { id: 'pudu-carpet-vacuuming-assembly', slug: 'pudu-carpet-vacuuming-assembly', brand: 'pudu', brandLabel: 'Pudu', name: 'Carpet Vacuuming Assembly', tagline: 'CC1 attachment switching from hard-floor to carpet vacuum.', group: 'attachment', description: 'A CC1 attachment that converts the platform from hard-floor cleaning to dedicated carpet vacuuming. Quick swap for mixed-surface venues like hotels, offices, and lounges.', features: [ 'Carpet vacuum head', 'Quick swap kit', 'Mixed-surface support', 'Suction optimized for carpet fibers', 'Easy filter access', 'Hotel / office ready', ], image: '/images/accessories/pudu-carpet-vacuuming-assembly.webp', accent: GOLD_CHAMPAGNE, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['CC1', 'CC1 Pro'], }, { id: 'pudu-reflective-post', slug: 'pudu-reflective-post', brand: 'pudu', brandLabel: 'Pudu', name: 'Reflective Post', tagline: 'Floor markers and reflectors for SLAM positioning support.', group: 'attachment', description: 'Reflective posts and floor markers that assist SLAM positioning in challenging environments. Ideal for venues where visual texture or LiDAR returns are weak.', features: [ 'SLAM-assist reflectors', 'Floor markers', 'Weak-texture environment support', 'Quick install', 'Long-life reflective surface', 'Indoor / semi-outdoor use', ], image: '/images/accessories/pudu-reflective-post.png', accent: GOLD_BRONZE, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['All Pudu service + delivery robots'], }, { id: 'pudu-flashbot-vending-machine', slug: 'pudu-flashbot-vending-machine', brand: 'pudu', brandLabel: 'Pudu', name: 'FlashBot Vending Compartment', tagline: 'Hotel mini-bar / vending compartment compatible with FlashBot.', group: 'attachment', description: 'A vending compartment kit compatible with FlashBot and FlashBot Max. Stocks snacks, drinks, amenities, or hotel mini-bar items for in-room or in-corridor delivery on demand.', features: [ 'Mini-bar style compartments', 'In-room / corridor delivery', 'Secure access', 'Stock management via Pudu Link', 'Multi-compartment layout', 'Compatible with FlashBot family', ], image: '/images/robots/pudu-flashbot-max.png', accent: GOLD_BRAND, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['FlashBot', 'FlashBot Max'], }, // ============ PUDU IoT & BUILDING INTEGRATION ============ { id: 'pudu-elevator-control-module', slug: 'pudu-elevator-control-module', brand: 'pudu', brandLabel: 'Pudu', name: 'Elevator Control Module', tagline: 'IoT module enabling robots to call and operate elevators autonomously.', group: 'iot-integration', description: 'A hardware module enabling Pudu delivery robots to call and operate elevators without elevator-side modifications. Supports major elevator brands and integrates cleanly with building systems.', features: [ 'Cloud + hardware elevator control', 'No elevator modification required', 'Major elevator brand support', 'Multi-floor autonomous routing', 'Secure access integration', 'Pudu Link cloud', ], image: '/images/accessories/pudu-elevator-control-module.png', accent: GOLD_CHAMPAGNE, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['FlashBot', 'FlashBot Max', 'PuduBot 2', 'SwiftBot'], }, { id: 'pudu-gate-control-module', slug: 'pudu-gate-control-module', brand: 'pudu', brandLabel: 'Pudu', name: 'Turnstile & Automatic Door Control', tagline: 'IoT module for autonomous turnstile and automatic-door passage.', group: 'iot-integration', description: 'IoT module enabling Pudu robots to pass autonomously through turnstiles and automatic doors. Supports access control integration for secure premises and multi-zone routing.', features: [ 'Turnstile autonomous passage', 'Automatic door integration', 'Access control linkage', 'Multi-zone routing', 'Secure facility ready', 'Pudu Link cloud', ], image: '/images/accessories/pudu-gate-control-module.png', accent: GOLD_BRAND, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['FlashBot', 'FlashBot Max', 'SwiftBot', 'PuduBot 2'], }, { id: 'pudu-telephone-system', slug: 'pudu-telephone-system', brand: 'pudu', brandLabel: 'Pudu', name: 'Telephone Integration', tagline: 'Voice intercom linking guest phones to robot dispatch.', group: 'iot-integration', description: 'A telephone system integration linking guest or customer phones to robot dispatch. Voice intercom on the robot enables direct conversations during delivery or reception.', features: [ 'Voice intercom on robot', 'Guest phone integration', 'Direct conversation during delivery', 'PBX-friendly setup', 'Hospitality + corporate ready', 'Pudu Link cloud', ], image: '/images/robots/pudu-kettybot.png', accent: GOLD_BRONZE, officialUrl: 'https://www.pudurobotics.com/en/accessory', compatibility: ['FlashBot', 'FlashBot Max', 'SwiftBot'], }, ]; export function getAccessoryBySlug(slug: string): Accessory | undefined { return ACCESSORIES.find((a) => a.slug === slug); } export function getAccessoriesByGroup(group: AccessoryGroup): Accessory[] { return ACCESSORIES.filter((a) => a.group === group); } export function getAccessoriesByBrand(brand: AccessoryBrand): Accessory[] { return ACCESSORIES.filter((a) => a.brand === brand); }