AMS & Humidity Monitoring¶
Bambuddy provides comprehensive monitoring for your AMS (Automatic Material System) and AMS-HT (High Temperature) units.
AMS Slot Status¶
Each AMS slot displays:
| Information | Description |
|---|---|
| Filament color | Visual color swatch |
| Material type | PLA, PETG, ABS, ASA, etc. |
| Remaining | Estimated filament left |
| Active | Currently feeding indicator |
RFID Re-read¶
Refresh filament information for individual AMS slots:
- Hover over an AMS slot on the printer card
- Click the menu button () that appears
- Select Re-read RFID
- A loading indicator appears while the printer reads the RFID tag
- Filament information updates automatically when complete
Availability
The re-read menu is hidden when the printer is busy (printing). Wait until the printer is idle to re-read RFID data.
When to Re-read
Use this feature when you've swapped a spool but the AMS hasn't automatically detected the change, or if filament information seems incorrect.
Configure AMS Slot¶
Manually configure AMS slots for third-party or generic filaments. This tells the printer which filament profile to use for a specific slot (temperatures, flow rate, pressure advance).
- Hover over an AMS slot on the printer card
- Click the menu button () that appears
- Select Configure Slot
- Choose a filament preset (from Bambu Cloud, local OrcaSlicer imports, or the built-in Bambu filament catalog — see preset sources)
- Select a matching K profile (pressure advance calibration)
- Optionally set a custom color using the color picker
- Click Configure Slot to apply
Color Picker Features:
- 8 basic colors shown by default (White, Black, Red, Blue, Green, Yellow, Orange, Gray)
- Click + to expand 24 additional colors
- Enter custom hex codes or color names (e.g., "brown", "FF8800")
- Live preview of selected color
User Presets
User presets that inherit from Bambu presets (e.g., "# Overture Matte PLA @BBL H2D") are fully supported. Bambuddy automatically derives the correct filament ID from the preset's base configuration.
Printer Model Filtering¶
Filament presets in the Configure AMS Slot modal are automatically filtered by the printer model. This means you only see presets that are compatible with the printer you are configuring:
- Cloud presets are matched by the model suffix in the preset name (e.g.,
@BBL X1C,@BBL P1S,@BBL H2D). Generic presets without a model suffix are always included. - Local presets are filtered by their
compatible_printersfield to show only those that list the current printer model. - The currently-configured preset for the slot is always shown in the list, regardless of model filter, so you can see what is already set even if the preset would otherwise be filtered out.
This filtering reduces clutter and prevents accidentally selecting a preset intended for a different printer.
Pre-Population for Configured Slots¶
When you open the Configure AMS Slot modal for a slot that already has a configuration, Bambuddy pre-populates the form fields so you can review or adjust the current settings without starting from scratch:
- Filament preset — The previously-configured preset is pre-selected. Bambuddy resolves this from the saved preset mapping or by matching the slot's
tray_info_idxto the corresponding preset. - Color — The color picker is pre-populated with the slot's current filament color.
- K-profile — The active pressure advance profile is pre-selected by matching the slot's
cali_idxto the available K-profile entries. - Auto-scroll — The preset list automatically scrolls to the selected item so it is visible without manual scrolling.
Quick Adjustments
Pre-population makes it easy to tweak a single setting (for example, updating just the color or K-profile) without re-selecting every field from scratch.
Multi-AMS Support¶
Bambuddy supports multiple AMS units per printer:
- Up to 4 AMS units (16 total slots)
- Each unit displayed with its slots
- Visual indication of active slot during printing
External Spool Holders¶
Printers without an AMS (or with filament loaded outside the AMS) use an external spool holder. The H2D is a dual-nozzle printer with two external spool positions — Ext-L (left) and Ext-R (right) — each feeding its respective nozzle. Bambuddy displays both external slots and supports configuring, color-setting, and K-profile assignment for each one independently.
Humidity Monitoring¶
Track humidity levels inside your AMS units:
Current Reading¶
The humidity percentage is displayed on the printer card:
| Level | Status | Action |
|---|---|---|
| < 20% | Excellent | None needed |
| 20-40% | Good | None needed |
| 40-60% | Fair | Consider drying |
| > 60% | High | Replace desiccant |
Configurable Thresholds¶
Set custom warning thresholds in Settings:
- Go to Settings > General
- Find AMS Humidity Threshold
- Set your preferred warning level
- Save changes
Filament Sensitivity
Different filaments have different humidity sensitivities. PLA is more tolerant than Nylon or PETG.
Temperature Monitoring¶
For AMS-HT (High Temperature) units, temperature is also tracked:
| Reading | Description |
|---|---|
| Current temp | Live temperature inside the unit |
| Target temp | Configured drying temperature |
| Status | Heating, holding, or idle |
Remote AMS Drying¶
Control AMS drying directly from Bambuddy — no need to use the printer's touchscreen. Start, monitor, and stop drying sessions for AMS 2 Pro and AMS-HT units.
Supported Hardware¶
Remote drying requires an AMS unit with built-in heating:
| AMS Type | Module Type | Max Temp | Supported |
|---|---|---|---|
| AMS 2 Pro | n3f | 65°C | |
| AMS-HT | n3s | 85°C | |
| AMS (original) | ams | — |
Printer Firmware Requirements¶
Not all printers support remote drying commands. The following minimum firmware versions are required:
| Printer Model | Min Firmware | Notes |
|---|---|---|
| X1 / X1C | 01.09.00.00 | |
| P1P / P1S | 01.08.00.00 | |
| H2D | 01.02.30.00 | |
| H2D Pro | Any | No version gate |
| X1E | Any | No version gate |
| P2S, A1, A1 Mini | — | Not supported |
| H2S, H2C | — | Not supported |
Unknown Models
For printers not listed above (future models), Bambuddy allows the drying command. If the printer's firmware doesn't support it, the command fails gracefully with no side effects.
Power Supply Requirements¶
AMS 2 Pro and AMS-HT units require an external power supply (PSU) to run the drying heater. Without it, the AMS can only monitor humidity — it cannot actively dry.
The printer firmware reports power constraints via the dry_sf_reason field per AMS unit. Bambuddy reads these automatically:
| Reason | Code | Description |
|---|---|---|
| Insufficient Power | 1 | Too many AMS units drying simultaneously — disconnect other units or connect a PSU |
| Need Plugin Power | 8 | No external PSU connected — plug in the AMS power adapter |
| Task Occupied | 0 | Printer is busy with another operation |
| AMS Busy | 2 | AMS is performing another operation |
| Consumable at Outlet | 3 | Filament detected at the AMS outlet |
| Initiating | 4 | Drying is already starting up |
| Not Supported in 2D Mode | 5 | Cannot dry in current mode |
| Already Drying | 6 | Drying session already active |
| Upgrading | 7 | Firmware update in progress |
When a power constraint is detected, the drying button is disabled and shows a "Power required" tooltip. This applies to manual drying, queue auto-drying, and ambient drying — the scheduler skips AMS units with active dry_sf_reason entries.
PSU Not Connected
If you see the drying button greyed out with a "Power required" tooltip, connect the external power adapter to your AMS unit. This is the most common reason drying cannot start.
HMS Error Codes (AMS Power)¶
When the AMS encounters a power-related issue, the printer reports it as an HMS (Health Management System) error. These appear in Bambuddy's HMS error panel:
AMS 2 Pro Errors:
| HMS Code | Description |
|---|---|
07XX_9200_0002_0003 | Heater fan 1 can't start — PSU not connected |
07XX_9300_0002_0003 | Heater fan 2 can't start — PSU not connected |
07XX_9800_0002_0001 | PSU voltage too low |
07XX_9800_0002_0002 | PSU voltage too high |
AMS-HT Errors:
| HMS Code | Description |
|---|---|
18XX_2500_0002_0001 | Using printer power instead of dedicated adapter — connect the AMS-HT power adapter |
18XX_9200_0002_0003 | Heater fan 1 can't start — PSU not connected |
18XX_9300_0002_0003 | Heater fan 2 can't start — PSU not connected |
18XX_9800_0002_0001 | PSU voltage too low |
18XX_9800_0002_0002 | PSU voltage too high |
HMS Code Format
XX represents the AMS unit index (00–07 for units A–H). For example, 0700_9200_0002_0003 is unit A, 0701_9200_0002_0003 is unit B.
Starting a Drying Session¶
- Find the AMS 2 Pro or AMS-HT card on the Printers page
- Click the flame icon in the AMS card header
- In the drying popover:
- Select filament type — Choose from PLA, PETG, TPU, ABS, ASA, PA, PC, or PVA
- Temperature — Auto-set from BambuStudio official presets; adjust manually with the slider or input field
- Duration — Auto-set from presets (1–24 hours); adjust as needed
- Click Start
Filament Presets
Temperature and duration defaults come from BambuStudio's official filament profiles. You can customize them in Settings > AMS Display Thresholds > Drying Presets. These presets are shared between manual drying, queue auto-drying, and ambient drying.
Monitoring Drying Progress¶
When drying is active, a status bar appears between the AMS header and slot grid:
- Time remaining — Countdown in hours and minutes (e.g., "3h 42m" or "42m")
- The flame icon in the header turns amber to indicate active drying
Stopping a Drying Session¶
- Click the × button on the drying status bar, or
- Click the flame icon (when drying is active, it acts as a stop button)
Permissions¶
| Action | Required Permission |
|---|---|
| View drying status | No permission needed |
| Start / Stop drying | printers:control |
Drying During Prints
The AMS can dry filament while the printer is idle or printing. However, drying during a print may affect the AMS temperature readings and humidity levels.
Queue Auto-Drying¶
Automatically dry AMS filament between scheduled prints. When a printer is idle and humidity exceeds the configured threshold, Bambuddy starts a drying session to keep filament in optimal condition before the next print begins.
How It Works¶
- The scheduler checks idle printers that have scheduled queue items
- For each AMS unit, it reads the current humidity level
- If humidity exceeds the Fair (orange) threshold from Settings, drying is triggered
- The drying temperature and duration are determined by the loaded filament types using the configured drying presets
- After a minimum of 30 minutes, humidity is re-checked — if it drops to or below the threshold, drying is stopped early
- When the next scheduled print is ready to start, any remaining drying is stopped and the print begins
Conservative Temperature Selection¶
When an AMS unit contains mixed filament types (e.g., PLA and PETG in the same unit), the scheduler uses conservative parameters:
- Temperature — The lowest temperature across all loaded filaments (to avoid overheating sensitive materials)
- Duration — The longest duration across all loaded filaments
Enabling Auto-Drying¶
- Go to Settings > AMS Display Thresholds
- Set the Fair (orange) ≤ humidity threshold — this is the trigger point for auto-drying
- Scroll to Queue Auto-Drying
- Enable Enable auto-drying
- Optionally enable Wait for drying to complete (blocking mode)
Blocking vs Non-Blocking Mode¶
| Mode | Behavior |
|---|---|
| Non-blocking (default) | Prints take priority. Drying stops when a print is ready to start. |
| Blocking | Queue waits until the drying session finishes before starting the next print. |
Which mode should I use?
Non-blocking is recommended for most users — it ensures prints start on time while filling idle gaps with drying. Use blocking only if filament dryness is critical for print quality (e.g., Nylon, PC) and you don't mind delayed print starts.
When Auto-Drying Stops¶
Auto-drying is stopped automatically when:
- Humidity drops below threshold — checked every scheduler cycle; once humidity is at or below the Fair value, drying stops
- A scheduled print is ready to start (non-blocking mode)
- The queue item's schedule is removed or changed to "Queue Only"
- All scheduled items are removed from the queue
- Auto-drying is disabled in Settings
Threshold works both ways
The Fair (orange) humidity threshold controls both start and stop. Drying starts when humidity exceeds the threshold and stops when it drops back to or below it — but only after a minimum of 30 minutes of drying. This prevents rapid start/stop cycling when humidity is near the threshold.
Requirements¶
- At least one scheduled queue item (items in "Queue Only" mode do not trigger auto-drying)
- AMS 2 Pro or AMS-HT unit (original AMS does not support drying)
- Supported printer firmware (see firmware requirements above)
- Humidity above the Fair threshold
No Scheduled Prints?
If you want drying to run on idle printers regardless of whether prints are scheduled, see Ambient Drying below.
Ambient Drying¶
Automatically dry filament on any idle printer whenever AMS humidity exceeds the configured threshold — no scheduled prints required. While queue auto-drying only activates when prints are scheduled, ambient drying keeps filament dry on all idle printers at all times.
How It Works¶
- The scheduler continuously monitors all idle printers
- For each AMS unit, it reads the current humidity level
- If humidity exceeds the Fair (orange) threshold from Settings, drying is triggered
- The drying temperature and duration are determined by the loaded filament types using the configured drying presets
- After a minimum of 30 minutes, humidity is re-checked — if it drops to or below the threshold, drying is stopped early
Unlike queue auto-drying, ambient drying does not require any scheduled queue items. It runs whenever a printer is idle and its AMS humidity is above the threshold.
Enabling Ambient Drying¶
- Go to Settings > Print Queue
- Find Ambient Drying
- Enable Enable ambient drying
Using Both Modes Together¶
Ambient drying and queue auto-drying can be enabled simultaneously. They complement each other:
| Mode | Triggers when | Stops when |
|---|---|---|
| Queue auto-drying | Printer is idle with scheduled prints pending | Humidity drops below threshold, or next print is ready to start |
| Ambient drying | Printer is idle (no scheduled prints required) | Humidity drops below threshold |
When both are enabled and a printer has scheduled prints, queue auto-drying takes precedence (since it is aware of print scheduling and blocking/non-blocking behavior). On printers with no scheduled prints, ambient drying takes over.
Requirements¶
- AMS 2 Pro or AMS-HT unit (original AMS does not support drying)
- Supported printer firmware (see firmware requirements above)
- Humidity above the Fair threshold
- No active power constraints on the AMS unit (see power supply requirements)
Print Farm Use Case
Ambient drying is particularly useful for print farms where printers may sit idle for extended periods. Rather than letting humidity build up, Bambuddy keeps filament dry on every idle printer automatically.
Configurable Drying Presets¶
Customize the drying temperature and duration for each filament type. These presets are used by both manual drying, queue auto-drying, and ambient drying.
Default Presets¶
Defaults are based on BambuStudio's official filament drying profiles:
| Filament | AMS 2 Pro Temp | AMS-HT Temp | AMS 2 Pro Duration | AMS-HT Duration |
|---|---|---|---|---|
| PLA | 45°C | 45°C | 12h | 12h |
| PETG | 65°C | 65°C | 12h | 12h |
| TPU | 65°C | 75°C | 12h | 18h |
| ABS | 65°C | 80°C | 12h | 8h |
| ASA | 65°C | 80°C | 12h | 8h |
| PA | 65°C | 85°C | 12h | 12h |
| PC | 65°C | 80°C | 12h | 8h |
| PVA | 65°C | 85°C | 12h | 18h |
Editing Presets¶
- Go to Settings > AMS Display Thresholds
- Find the Drying Presets table
- Edit temperature (°C) and duration (hours) for each filament type
- Changes auto-save
AMS 2 Pro Temperature Limit
AMS 2 Pro (n3f) has a hardware maximum of 65°C. AMS-HT (n3s) supports up to 85°C.
Historical Charts¶
Click on the humidity or temperature indicator to view historical data:
Time Ranges¶
- 6 hours - Recent trends
- 24 hours - Daily pattern
- 48 hours - Extended view
- 7 days - Weekly overview
Chart Features¶
- Min/Max/Avg statistics
- Threshold reference lines
- Interactive tooltips
- Zoom and pan
Data Retention¶
AMS data is stored for historical analysis:
Default Retention¶
- 30 days of humidity/temperature data
- Configurable in Settings
Configuring Retention¶
- Go to Settings > General
- Find AMS Data Retention
- Set number of days (1-365)
- Older data is automatically purged
Storage Impact
Longer retention periods increase database size. Consider your available storage.
AMS Notifications¶
Get notified about AMS conditions:
Available Alerts¶
| Event | Description |
|---|---|
| High Humidity | When humidity exceeds threshold |
| Low Filament | When filament is running low |
| AMS Error | When AMS encounters issues |
Setting Up¶
- Go to Settings > Notifications
- Add or edit a provider
- Enable AMS-related events
- Save changes
AMS-HT vs Standard AMS¶
| Feature | Standard AMS | AMS-HT |
|---|---|---|
| Humidity monitoring | ||
| Temperature monitoring | ||
| Remote drying | ||
| High-temp filaments |
AMS-HT Temperature Control¶
AMS-HT units can actively dry filament. See Remote AMS Drying for setup and usage.
Custom AMS Labels¶
Assign friendly names to your AMS units to easily identify them in multi-AMS setups.
AMS Info Card¶
Hover over any AMS label (e.g. "AMS-A") on the Printers page to see a popover with:
- Serial Number — The hardware serial from MQTT
- Firmware Version — Parsed from the printer's
get_versionresponse - Friendly Name — An editable text field for your custom label
Setting a Custom Label¶
- Hover over the AMS label on the Printers page
- Type a name in the "AMS Name" field (e.g. "Silk Colours", "Workshop AMS")
- Click Save or press Enter
- To remove a label, clear the field and save, or click Clear
Permission Required
Editing AMS labels requires the printers:update permission when authentication is enabled.
Label Persistence¶
Labels are stored by AMS serial number, so they persist when the AMS is moved to a different printer. If the AMS serial is not available (older firmware), a fallback key based on printer ID and AMS position is used.
Custom labels also appear in the Inventory page location column alongside the slot identifier, making it easy to find spools across a print farm.
Slot Numbers¶
Each filament color circle now displays a 1-based slot number with automatically inverted text contrast — black text on light filaments, white text on dark filaments.
AMS Discovery¶
Bambuddy automatically discovers connected AMS units:
- Detected during printer connection
- Updates when AMS configuration changes
- No manual configuration needed
Dual-Nozzle Wiring¶
For H2D and other dual-nozzle printers, Bambuddy displays the AMS wiring configuration:
- Which AMS units feed which nozzle
- Visual diagram of connections
- Helps plan multi-material prints
Nozzle-Aware Filament Mapping¶
On dual-nozzle printers (H2D, H2D Pro), each AMS unit is physically connected to either the left or right nozzle. When a 3MF file assigns filaments to specific nozzles, Bambuddy constrains filament matching to only AMS trays connected to the correct nozzle.
How it works:
- The 3MF file contains
filament_nozzle_mapandphysical_extruder_mapinproject_settings.config, mapping each filament slot to a target nozzle (0 = right, 1 = left) - The printer reports
ams_extruder_mapvia MQTT, indicating which AMS unit feeds which nozzle - When matching filaments to AMS slots, only trays on the correct nozzle are considered
- If no trays exist on the target nozzle, matching falls back to the full tray list
This applies to:
- Print scheduler — automatic filament matching for queued prints
- Reprint modal — filament mapping when reprinting from archives
- Queue modal — filament mapping when adding to queue
- Multi-printer selection — per-printer mapping for print farms
The filament mapping UI shows L (left) and R (right) badges next to each filament requirement for dual-nozzle prints.
Single-Nozzle Printers
On single-nozzle printers (X1C, P1S, A1, etc.), nozzle filtering is not applied. All AMS trays are available for matching as before.
Spoolman Integration¶
Sync AMS slots with Spoolman for complete filament tracking:
- Configure Spoolman integration in Settings
- AMS slots sync automatically
- Track usage across your inventory
Tips¶
Desiccant Maintenance
When humidity consistently stays high, it's time to replace or regenerate your desiccant packets.
Filament Storage
For filaments not in the AMS, store in vacuum bags with desiccant to maintain low humidity.
Historical Analysis
Review humidity charts to understand how your environment affects filament condition over time.
AMS-HT for Hygroscopic Filaments
Consider AMS-HT for moisture-sensitive materials like Nylon, PC, and PETG.
Auto-Drying Between Prints
Enable queue auto-drying to keep filament dry during long print queues, or enable ambient drying to keep filament dry on all idle printers — even when no prints are scheduled. Both use the Fair humidity threshold as the trigger point.