Sovol SV07 Plus
Sovol SV07 Plus.
- method: FDM
- nozzle: 1
- nozzle diameter: 0.4 mm
- nozzle temperature <= 300 degrees Celsius
- build volume: 300 x 300 x 350 mm
- recommended printing speed <= 250 mm/s
- printing accuracy: +- 0.1 mm
- bed: heated bed
- bed temperature <= 100 degrees Celsius
- supported materials: PLA, ABS, PETG, TPU, WOOD
- material diameter 1.75 mm
- power input: 115 V / 230 V 50 / 60 Hz
- power output: 24 V (DC)
- Power: MeanWell 600W / 24V
other pages: assembly, printing,
back to 3D printers
Links
Klipper, Klipper Configuration reference, Github Klipper3d/klipper, DangerKlipper, Fluidd, KIAUH, mainsail, Moonraker, KlipperScreen,
archive.org How to use external camera on SV07,
Slicers OrcaSlicer, PrusaSlicer,
PrusaSlicer Arc Overhang,
Printables SV07 Plus Slicer Additions, CV's OrcaSlicer Presets V1.5 for SV07/Plus & klipperized SV06/Plus, Klipper Printer Additions 3.0b4.1 - More Than Boring Start-G-Code,
Teaching Tech 3D Printer Calibration First Layer,
History
2024-08-13: started printing parts / accessories for Skådis pegboard. The printer behaves, things work.
2024-04-01: crowsnest - changed camera resolution to 1280x720. Now I get 4 - 5 fps in fluidd, and 5 - 6 fps in mainsail.
2024-04-01: mainsail - webcam - getting the webcam to work was as simple as changing from "Adaptive MJPG streamer" to "MJPG Streamer" in Settings, Webcams.
2024-03-29: camera mount - today the camera got knocked off by the bed. It seems that the "pins" holding the mount to the lower slot on the printer has bent outwards from the pressure. The result is that the mounting is loose. I need to fix this.
2024-03-28: extruder - rotation_distance - I measured and calibrated rotation distance using the Easy E-Steps & Rotation Distance Measurement Tool + Instructions from printables. A bit back and forth, but in the end I ended up changing it from
rotation_distance: 4.59
to
rotation_distance: 4.58
2024-03-27: crowsnest - camera with 1280x960 for camera, fluidd reports 01 - 02 fps, so not to good.
2024-03-26: armbian - motd config
mks@mkspi:~$ more /etc/default/armbian-motd # add space-separated list of MOTD script names (without number) to exclude them from MOTD # Example: # MOTD_DISABLE="header tips updates" # ONE_WIRE="yes" show 1-wire temperature sensor if attached # PRIMARY_DIRECTION="rx" show daily traffic stats, options: "rx", "tx", "both", "off", vnstat needs to be installed MOTD_DISABLE="" ONE_WIRE="" HIDE_IP_PATTERN="^dummy0|^lo" PRIMARY_INTERFACE="$(ls -1 /sys/class/net/ | grep -v lo | egrep "enp|eth" | head -1)" PRIMARY_DIRECTION="rx" STORAGE=/dev/sda1 # Temperature offset in Celcius degrees CPU_TEMP_OFFSET=0 # Define where red color is used CPU_TEMP_LIMIT=60 HDD_TEMP_LIMIT=60 AMB_TEMP_LIMIT=40
the scripts are in
mks@mkspi:~$ ll /etc/update-motd.d/ total 32 -rwxr-xr-x 1 root root 2239 Mar 2 2022 10-armbian-header -rwxr-xr-x 1 root root 9993 Mar 2 2022 30-armbian-sysinfo -rwxr-xr-x 1 root root 816 Dec 25 2021 35-armbian-tips -rwxr-xr-x 1 root root 886 Dec 25 2021 40-armbian-updates -rwxr-xr-x 1 root root 895 Dec 25 2021 41-armbian-config -rwxr-xr-x 1 root root 554 Dec 25 2021 98-armbian-autoreboot-warn
2024-03-26: camera - I updated ~/printer_data/config/crowsnest.conf
and changed camera settings from
resolution: 640x480 # widthxheight format max_fps: 15 # If Hardware Supports this it will be forced, otherwise ignored/coerced.
to
resolution: 1280x960 # see if this works max_fps: 30
and restarted crowsnest. I have to test while printing to see if it is better or worse now.
2024-03-26: camera - the crowsnest log file (~/printer_data/logs/crowsnest.log
) shows this about my camera
03/14/24 21:23:06] crowsnest: INFO: Detect available Devices [03/14/24 21:23:06] crowsnest: INFO: Found 1 total available Device(s) [03/14/24 21:23:06] crowsnest: INFO: Found 1 available camera(s) [03/14/24 21:23:06] crowsnest: /dev/v4l/by-id/usb-HD_WebCam_C270_HD_WebCam_C270_SN0001-video-index0 -> /dev/video4 [03/14/24 21:23:07] crowsnest: Supported Formats: [03/14/24 21:23:07] crowsnest: [0]: 'MJPG' (Motion-JPEG, compressed) [03/14/24 21:23:07] crowsnest: Size: Discrete 1280x960 [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.033s (30.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.050s (20.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.067s (15.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.100s (10.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.200s (5.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.033s (30.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.050s (20.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.067s (15.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.100s (10.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.200s (5.000 fps) [03/14/24 21:23:07] crowsnest: Size: Discrete 1280x720 [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.033s (30.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.040s (25.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.050s (20.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.067s (15.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.100s (10.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.200s (5.000 fps) [03/14/24 21:23:07] crowsnest: Size: Discrete 1024x768 [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.033s (30.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.050s (20.000 fps) [03/14/24 21:23:07] crowsnest: Interval: Discrete 0.067s (15.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.100s (10.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.200s (5.000 fps) [03/14/24 21:23:08] crowsnest: Size: Discrete 800x600 [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.033s (30.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.040s (25.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.050s (20.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.067s (15.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.100s (10.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.200s (5.000 fps) [03/14/24 21:23:08] crowsnest: Size: Discrete 640x480 [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.033s (30.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.040s (25.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.050s (20.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.067s (15.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.100s (10.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.200s (5.000 fps) [03/14/24 21:23:08] crowsnest: Size: Discrete 640x360 [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.033s (30.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.050s (20.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.067s (15.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.100s (10.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.200s (5.000 fps) [03/14/24 21:23:08] crowsnest: Size: Discrete 320x240 [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.033s (30.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.040s (25.000 fps) [03/14/24 21:23:08] crowsnest: Interval: Discrete 0.050s (20.000 fps) [03/14/24 21:23:09] crowsnest: Interval: Discrete 0.067s (15.000 fps) [03/14/24 21:23:09] crowsnest: Interval: Discrete 0.100s (10.000 fps) [03/14/24 21:23:09] crowsnest: Interval: Discrete 0.200s (5.000 fps) [03/14/24 21:23:09] crowsnest: Size: Discrete 1280x960 [03/14/24 21:23:09] crowsnest: Interval: Discrete 0.033s (30.000 fps) [03/14/24 21:23:09] crowsnest: Interval: Discrete 0.050s (20.000 fps) [03/14/24 21:23:09] crowsnest: Interval: Discrete 0.067s (15.000 fps) [03/14/24 21:23:09] crowsnest: Interval: Discrete 0.100s (10.000 fps) [03/14/24 21:23:09] crowsnest: Interval: Discrete 0.200s (5.000 fps) [03/14/24 21:23:09] crowsnest: Interval: Discrete 0.033s (30.000 fps) [03/14/24 21:23:09] crowsnest: Interval: Discrete 0.050s (20.000 fps) [03/14/24 21:23:09] crowsnest: Interval: Discrete 0.067s (15.000 fps) [03/14/24 21:23:09] crowsnest: Interval: Discrete 0.100s (10.000 fps) [03/14/24 21:23:09] crowsnest: Interval: Discrete 0.200s (5.000 fps)
(there is more, but that is YUYV, not MJPG)
[03/14/24 21:23:11] crowsnest: Supported Controls: [03/14/24 21:23:11] crowsnest: [03/14/24 21:23:11] crowsnest: User Controls [03/14/24 21:23:11] crowsnest: [03/14/24 21:23:11] crowsnest: brightness 0x00980900 (int) : min=-64 max=64 step=1 default=0 value=0 [03/14/24 21:23:11] crowsnest: contrast 0x00980901 (int) : min=0 max=64 step=1 default=32 value=32 [03/14/24 21:23:11] crowsnest: saturation 0x00980902 (int) : min=0 max=128 step=1 default=68 value=68 [03/14/24 21:23:11] crowsnest: hue 0x00980903 (int) : min=-40 max=40 step=1 default=0 value=0 [03/14/24 21:23:11] crowsnest: white_balance_automatic 0x0098090c (bool) : default=1 value=1 [03/14/24 21:23:11] crowsnest: red_balance 0x0098090e (int) : min=0 max=0 step=0 default=0 value=0 flags=inactive [03/14/24 21:23:11] crowsnest: blue_balance 0x0098090f (int) : min=0 max=0 step=0 default=0 value=0 flags=inactive [03/14/24 21:23:11] crowsnest: gamma 0x00980910 (int) : min=72 max=500 step=1 default=100 value=100 [03/14/24 21:23:11] crowsnest: gain 0x00980913 (int) : min=0 max=100 step=1 default=0 value=0 [03/14/24 21:23:11] crowsnest: power_line_frequency 0x00980918 (menu) : min=0 max=2 default=1 value=1 [03/14/24 21:23:11] crowsnest: 0: Disabled [03/14/24 21:23:11] crowsnest: 1: 50 Hz [03/14/24 21:23:11] crowsnest: 2: 60 Hz [03/14/24 21:23:11] crowsnest: hue_automatic 0x00980919 (bool) : default=0 value=0 [03/14/24 21:23:12] crowsnest: white_balance_temperature 0x0098091a (int) : min=2800 max=6500 step=1 default=4600 value=4600 flags=inactive [03/14/24 21:23:12] crowsnest: sharpness 0x0098091b (int) : min=0 max=6 step=1 default=4 value=4 [03/14/24 21:23:12] crowsnest: backlight_compensation 0x0098091c (int) : min=0 max=8 step=1 default=2 value=2 [03/14/24 21:23:12] crowsnest: [03/14/24 21:23:12] crowsnest: Camera Controls [03/14/24 21:23:12] crowsnest: [03/14/24 21:23:12] crowsnest: auto_exposure 0x009a0901 (menu) : min=0 max=3 default=3 value=3 [03/14/24 21:23:12] crowsnest: 1: Manual Mode [03/14/24 21:23:12] crowsnest: 3: Aperture Priority Mode [03/14/24 21:23:12] crowsnest: exposure_time_absolute 0x009a0902 (int) : min=1 max=5000 step=1 default=157 value=157 flags=inactive [03/14/24 21:23:12] crowsnest: exposure_dynamic_framerate 0x009a0903 (bool) : default=0 value=1 [03/14/24 21:23:12] crowsnest: pan_absolute 0x009a0908 (int) : min=-36000 max=36000 step=3600 default=0 value=0 [03/14/24 21:23:12] crowsnest: tilt_absolute 0x009a0909 (int) : min=-36000 max=36000 step=3600 default=0 value=0 [03/14/24 21:23:12] crowsnest: zoom_absolute 0x009a090d (int) : min=0 max=9 step=1 default=0 value=0 [03/14/24 21:23:12] crowsnest: zoom_continuous 0x009a090f (int) : min=0 max=0 step=0 default=0 value=0 flags=write-only [03/14/24 21:23:12] crowsnest: pan_speed 0x009a0920 (int) : min=0 max=0 step=0 default=0 value=0 [03/14/24 21:23:12] crowsnest: tilt_speed 0x009a0921 (int) : min=0 max=0 step=0 default=0 value=0 [03/14/24 21:23:12] crowsnest: INFO: No usable CSI Devices found.
2024-03-26: web server - nginx runs both fluidd and mainsail
mks@mkspi:~$ systemctl status nginx ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2024-03-14 21:23:00 CET; 1 weeks 5 days ago Docs: man:nginx(8) Process: 1364 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Process: 1429 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 1457 (nginx) Tasks: 5 (limit: 990) Memory: 15.8M CGroup: /system.slice/nginx.service ├─1457 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; ├─1458 nginx: worker process ├─1459 nginx: worker process ├─1461 nginx: worker process └─1466 nginx: worker process Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.
available sites
mks@mkspi:~$ ll -F /etc/nginx/sites-available/ total 12 -rw-r--r-- 1 root root 2412 Nov 22 2022 default -rw-r--r-- 1 root root 2709 Aug 29 2023 fluidd -rw-r--r-- 1 root root 2785 Aug 29 2023 mainsail
enabled sites
mks@mkspi:~$ ll /etc/nginx/sites-enabled/ total 0 lrwxrwxrwx 1 root root 33 Feb 26 2023 fluidd -> /etc/nginx/sites-available/fluidd lrwxrwxrwx 1 root root 35 Jul 18 2023 mainsail -> /etc/nginx/sites-available/mainsail
2024-03-17: camera - printed Logitech C270 adapter for SV07 webcam mount and mounted the camera. Time will tell if having a front mounted camera is a good thing or not.
2024-03-14: camera - now I only have to print a bracket to mount the camera properly.
2024-03-14: I plugged the web camera into a free usb port on the controller. It shows up in lsusb output
mks@mkspi:~$ lsusb -d 046d:0825 Bus 004 Device 002: ID 046d:0825 Logitech, Inc. Webcam C270
and there are some video devices
mks@mkspi:~$ ls -l /dev/video* crw-rw---- 1 root video 81, 0 Mar 2 18:17 /dev/video0 crw-rw---- 1 root video 81, 1 Mar 2 18:17 /dev/video1 crw-rw---- 1 root video 81, 2 Mar 2 18:17 /dev/video2 crw-rw---- 1 root video 81, 3 Mar 2 18:17 /dev/video3 crw-rw---- 1 root video 81, 4 Mar 14 20:34 /dev/video4 crw-rw---- 1 root video 81, 5 Mar 14 20:34 /dev/video5
and after I rebooted the controller (I had to do it from the KlipperScreen, couldn't figure out how to do it from mainsail or fluidd interface) the camera shows up in fluidd. For some reason, it shows 0 (zero) fps in mainsail interface.
2024-03-14: I got a pick-up message and fetched the package with the web camera from pickup point Extra Trondheimsveien on my way home from work.
2024-03-10: I ordered a Logitech C270 web camera to use as a camera for the printer for NOK 228.- plus NOK 79.- in shipping. NOK 308.- in total.
2024-03-03: I printed SOVOL SV07 PLUS Extruder Cable Bracket at 0.2 mm layer height and mounted it. The extruder cable now doesn't drag along the bed anymore. If the X axis is near the top of the printer, the cable and bracket might come into conflict with the top beam of the frame. We shall see.
2024-03-03: Slicers - a blog entry about OrcaSlicer,
2024-03-02: PrusaSlicer - managed to get a working profile for the SV07 Plus by configuring it from scratch and adding this Start G-code
M190 S{first_layer_bed_temperature[0]} ; Setting bed temperature M109 S{first_layer_temperature[0]} ; Setting hot-end temperature START_PRINT ; Running macro from klipper
but it oozes a bit, I should move the hotend to a drip zone first. end G-code is just
END_PRINT
2024-03-02: and the firmware version of the controller (the one you see if you go config, system on the touch screen) is
mks@mkspi:~$ cat ~/.DebVersion Version: 1.0.8-07P
that's one less mystery.
2024-03-02: the controller (mkspi) is running
root@mkspi:~# lsb_release -a No LSB modules are available. Distributor ID: Debian Description: Debian GNU/Linux 10 (buster) Release: 10 Codename: buster
and
root@mkspi:~# cat /etc/debian_version 10.13
kernel
root@mkspi:~# uname -a Linux mkspi 5.16.20-rockchip64 #trunk SMP PREEMPT Fri Aug 4 13:50:11 CST 2023 aarch64 GNU/Linux
armbian
root@mkspi:~# cat /etc/armbian-release # PLEASE DO NOT EDIT THIS FILE BOARD=mkspi BOARD_NAME="mkspi" BOARDFAMILY=rockchip64 BUILD_REPOSITORY_URL=git@github.com:armbian/build BUILD_REPOSITORY_COMMIT=ed589b248-dirty VERSION=22.05.0-trunk LINUXFAMILY=rockchip64 ARCH=arm64 IMAGE_TYPE=user-built BOARD_TYPE=conf INITRD_ARCH=arm64 KERNEL_IMAGE_TYPE=Image BRANCH=edge
os-release
root@mkspi:~# cat /etc/os-release PRETTY_NAME="Armbian 22.05.0-trunk Buster" NAME="Debian GNU/Linux" VERSION_ID="10" VERSION="10 (buster)" VERSION_CODENAME=buster ID=debian HOME_URL="https://www.debian.org/" SUPPORT_URL="https://www.debian.org/support" BUG_REPORT_URL="https://bugs.debian.org/"
2024-02-25: I unpacked the box and started assembling the printer, see the assembly page.
2024-02-25: I created this page.
2024-02-21: This afternoon, I got a notice to pick up my package, and did so later in the evening at PIB Extra Trondheimsveien. The box was large and weighed about 14 kg. I had to pay NOK 901.- in MVA (value added tax) and NOK 270.- in handling fee, a total of NOK 1171.-
2024-02-13: the package was shipped.
2024-02-11: I ordered a Sovol SV07 Plus from the Sovol EU store. Price was USD 329.-, shipping USD 15.- USD 344.- in total. NOK 3810.95 when converted by PayPal.