mirror of
https://github.com/maziggy/bambuddy.git
synced 2026-10-19 07:33:18 +02:00
**Configure AMS Slot**
Manually configure AMS slots for third-party or generic filaments: 1. Hover over an AMS slot on the printer card 2. Click the menu button (:material-dots-vertical:) that appears 3. Select **Configure Slot** 4. Choose a filament preset from your Bambu Studio cloud presets 5. Select a matching K profile (pressure advance calibration) 6. Optionally set a custom color using the color picker 7. Click **Configure Slot** to apply **Color Picker Features:** - Enter custom hex codes or color names (e.g., "brown", "FF8800") - Live preview of selected color - Expandable color picker in Configure AMS Slot modal: - 8 basic colors shown by default - 24 additional colors available via expand button - Tests for ConfigureAmsSlotModal component - Tests for AMS change callback - Updated README with AMS slot configuration feature - Wiki documentation for Configure AMS Slot feature - Multi plate issue where plate names showed incorrect. #93 - Items from Queue end up as "source" files in archive. #107 - Added env variable support to change network port. #108 Docs -> https://wiki.bambuddy.cool/getting-started/docker/?h=port#custom-port
This commit is contained in:
@@ -1814,6 +1814,7 @@ export const api = {
|
||||
plates: Array<{
|
||||
index: number;
|
||||
name: string | null;
|
||||
objects: string[];
|
||||
has_thumbnail: boolean;
|
||||
thumbnail_url: string | null;
|
||||
print_time_seconds: number | null;
|
||||
@@ -2139,6 +2140,57 @@ export const api = {
|
||||
request<{ success: boolean }>(`/printers/${printerId}/slot-presets/${amsId}/${trayId}`, {
|
||||
method: 'DELETE',
|
||||
}),
|
||||
configureAmsSlot: (
|
||||
printerId: number,
|
||||
amsId: number,
|
||||
trayId: number,
|
||||
config: {
|
||||
tray_info_idx: string;
|
||||
tray_type: string;
|
||||
tray_sub_brands: string;
|
||||
tray_color: string;
|
||||
nozzle_temp_min: number;
|
||||
nozzle_temp_max: number;
|
||||
cali_idx: number;
|
||||
nozzle_diameter: string;
|
||||
setting_id?: string;
|
||||
kprofile_filament_id?: string;
|
||||
kprofile_setting_id?: string;
|
||||
k_value?: number;
|
||||
}
|
||||
) => {
|
||||
const params = new URLSearchParams({
|
||||
tray_info_idx: config.tray_info_idx,
|
||||
tray_type: config.tray_type,
|
||||
tray_sub_brands: config.tray_sub_brands,
|
||||
tray_color: config.tray_color,
|
||||
nozzle_temp_min: config.nozzle_temp_min.toString(),
|
||||
nozzle_temp_max: config.nozzle_temp_max.toString(),
|
||||
cali_idx: config.cali_idx.toString(),
|
||||
nozzle_diameter: config.nozzle_diameter,
|
||||
});
|
||||
if (config.setting_id) {
|
||||
params.set('setting_id', config.setting_id);
|
||||
}
|
||||
if (config.kprofile_filament_id) {
|
||||
params.set('kprofile_filament_id', config.kprofile_filament_id);
|
||||
}
|
||||
if (config.kprofile_setting_id) {
|
||||
params.set('kprofile_setting_id', config.kprofile_setting_id);
|
||||
}
|
||||
if (config.k_value !== undefined && config.k_value > 0) {
|
||||
params.set('k_value', config.k_value.toString());
|
||||
}
|
||||
return request<{ success: boolean; message: string }>(
|
||||
`/printers/${printerId}/slots/${amsId}/${trayId}/configure?${params}`,
|
||||
{ method: 'POST' }
|
||||
);
|
||||
},
|
||||
resetAmsSlot: (printerId: number, amsId: number, trayId: number) =>
|
||||
request<{ success: boolean; message: string }>(
|
||||
`/printers/${printerId}/ams/${amsId}/tray/${trayId}/reset`,
|
||||
{ method: 'POST' }
|
||||
),
|
||||
|
||||
// Filaments
|
||||
listFilaments: () => request<Filament[]>('/filaments/'),
|
||||
|
||||
Reference in New Issue
Block a user