Skip to content

Commit

Permalink
Update fw_kobraOS.md
Browse files Browse the repository at this point in the history
  • Loading branch information
1coderookie authored Feb 6, 2025
1 parent f159a01 commit 3a70d82
Showing 1 changed file with 326 additions and 2 deletions.
328 changes: 326 additions & 2 deletions docs/firmware/fw_kobraOS.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,12 @@
---

# KobraOS (Stock)
The official stock firmware for the **Kobra 2 Plus** is called "Kobra OS".
Even though it's based on Klipper, sources haven't been published yet.
The official stock firmware for the **Kobra 2 Plus** is called "Kobra OS". Even though it's based on Klipper, sources haven't been published yet.
KobraOS is locked, you can't access the settings or configuration files (at least not without using 'tools' or workarounds). Furthermore, the USB ports don't allow a local connection to a computer and the printer can't be accessed directly via local WiFi either, one has to use the APP and cloud service of Anycubic.

It has to be noted that there are different revisions of the mainboards that are being used (please see the according chapter "Mainboard"), as they use different versions and configurations of the KobraOS. One probably wouldn't notice a difference if using them side by side, but there is one huge difference: besides different `printer.cfg` settings, the KobraOS for the "Trigorilla Spe **B**_v1.0.x" seems to be the same as the one being used in the Kobra 3 - and for that one there is a modded KobraOS available. With that modified KobraOS, you gain access to the printer via your regular Mainsail UI or Fluidd UI, can access and change the `printer.cfg`, control the machine etc.

So when looking at the following sections, either about the settings of the stock `pritner.cfg`, tools to access the KobraOS or even about the modified KobraOS version I mentioned, always make sure to *check the type of mainboard* that's being used in your particular printer before you attempt any further steps.

---

Expand Down Expand Up @@ -1045,5 +1049,325 @@ For being able to transfer the data of the bedmesh to a graphical output, one ha

---

## Settings "Trigorilla B v1.0.x"
The specific settings of the machine are -due to the fact that it's closed source now- supposed to be 'unknown'.


<!--
However, when the first `update.swu` file became available, it was possible to access and investigate the files `printer.cfg` and `unmodifiable.cfg`.
??? info "Special Thanks To [lpi](https://github.com/lpi)!"
At this point I have to say a huge "Thank You!" to [lpi](https://github.com/lpi) for providing the content of the `update.swu` file to me!
I won't share the files, but I'll quote the content of the two config files here in the following.
However, if you want to access the files by your own, you can do so by unzipping the file `update.swu` and then mount the main directory with `squashfs`.
There are two Klipper-specific config files that can be found:
- the file `printer.cfg` which contains the pin assignments and specific settings for the Klipper configuration and
- the file `unmodifiable.cfg` which seems to contain additional settings for the auto leveling and the probe.
I won't share any of the files, but I'll quote the content of the two config files here in the following.
??? info "Files Of The Kobra 2 Plus & Max"
Just in case you own a Kobra 2 Plus or Max, you can find the content of the belonging files quoted in expandable textboxes below.
Besides that, if you own a Kobra 2 Plus, check out my comprehensive [Kobra2Plus Insights](https://1coderookie.github.io/Kobra2PlusInsights/) infosite instead.
-->

---

### Printer.cfg
The following lists the content of the file `printer.cfg` for the "Trigorilla Spe **B** v1.0.5" mainboard of a Kobra 2 Pro.
I'll leave the settings uncommented as this point, because we can't do anything to improve the settings anyway right now.

```
[virtual_sdcard]
path: /useremain/app/gk/gcodes/
[mcu]
serial : /dev/ttyS3
restart_method : command
baud : 576000
[printer]
kinematics : cartesian
max_velocity:500
max_accel:20000
max_accel_to_decel:20000
square_corner_velocity:20.0
max_z_velocity:16
max_z_accel:5000
device_type: Anycubic Kobra 2 Pro
print_size: 220*220*250mm
[stepper_x]
step_pin : PA5
dir_pin : PA4
enable_pin : !PC3
microsteps : 16
full_steps_per_rotation:200
rotation_distance :32
position_endstop :-5
position_min : -5
position_max : 230
homing_speed : 30
homing_retract_dist:10
second_homing_speed:15
endstop_pin : ^!PA6
[stepper_y]
step_pin : PC4
dir_pin : !PA7
enable_pin : !PC3
microsteps : 16
full_steps_per_rotation:200
rotation_distance :32
position_endstop : -8
position_min : -8
position_max : 230
homing_speed : 30
homing_retract_dist:10
second_homing_speed:15
endstop_pin : ^!PC5
[stepper_z]
step_pin : PC9
dir_pin : !PC6
enable_pin : !PC3
microsteps : 16
rotation_distance :8
full_steps_per_rotation:200
endstop_pin : probe:z_virtual_endstop
position_min :-12
position_max : 252
homing_speed: 8
homing_retract_dist:8
second_homing_speed: 4
[extruder]
max_extrude_only_distance : 100.0
step_pin : PC14
dir_pin : PC15
enable_pin : !PC3
microsteps : 16
full_steps_per_rotation:200
rotation_distance :6.848
nozzle_diameter : 0.400
filament_diameter : 1.750
max_extrude_cross_section:50
heater_pin : PA1
sensor_type : NTC 100K MGB18-104F39050L32
sensor_pin : PC1
control : pid
pid_Kp : 12.206120
pid_Ki : 0.517208
pid_Kd : 72.016108
min_temp : -200
min_safe_temp : 185
min_extrude_temp : 170
max_safe_temp : 260
max_temp : 275
pressure_advance: 0.02
[heater_bed]
heater_pin : PA0
sensor_type : NTC 100K MGB18-104F39050L32
sensor_pin : PC0
control : pid
pid_Kp : 54.027
pid_Ki : 0.770
pid_Kd : 248.182
min_temp : -200
min_safe_temp : 45
max_safe_temp : 110
max_temp : 120
[tmc2209 stepper_x]
uart_pin : PA3
uart_address : 3
run_current : 1.4
hold_current:0.7
sense_resistor: 0.0750
stealthchop_threshold :0
interpolate : True
[tmc2209 stepper_y]
uart_pin : PA3
uart_address : 1
run_current : 1.5
hold_current:0.8
sense_resistor: 0.075
stealthchop_threshold :0
interpolate : True
[tmc2209 stepper_z]
uart_pin : PA3
uart_address : 2
run_current : 1.2
hold_current:0.7
sense_resistor: 0.0750
stealthchop_threshold : 99999
interpolate : True
[tmc2209 extruder]
uart_pin : PA3
uart_address : 0
run_current : 0.8
hold_current:0.4
sense_resistor: 0.0750
stealthchop_threshold : 99999
interpolate : True
[probe]
pin : PB8
x_offset:24.0
y_offset:13.35
speed : 4.0
final_speed : 4.0
lift_speed : 8.0
samples: 2
sample_retract_dist: 15
samples_result: weighted
samples_tolerance: 0.1
samples_tolerance_retries:2
[bed_mesh]
speed: 60
horizontal_move_z:15
mesh_min: 19,19
mesh_max: 205,210
probe_count: 5,5
mesh_pps: 3,3
algorithm: lagrange
[safe_z_home]
home_xy_position: 40,207
speed: 150
z_hop: 5
z_hop_speed: 8.0
[verify_heater extruder]
max_error: 120
check_gain_time:30
hysteresis: 5
heating_gain:1
[verify_heater heater_bed]
max_error: 120
check_gain_time:300
hysteresis: 5
heating_gain:1
[controller_fan controller_fan]
pin : PB10
fan_speed : 1
[heater_fan extruder_fan]
pin : PB2
[custom_temperture_fan]
[fan]
pin : PB1
[output_pin power_pin]
pin:PB4
value:1
shutdown_value:0
[pid_calibrate]
homing_first: 1
move_xy_position: 50,50
move_z_up: 5
fan_speed : 1
[lis2dw12]
spi_speed: 5000000
cs_pin: PB12
spi_software_sclk_pin:PB13
spi_software_mosi_pin:PB15
spi_software_miso_pin:PB14
rate:400
axes_map: z,x,y
[lis2dw12 bed]
spi_speed: 5000000
cs_pin: PD2
spi_software_sclk_pin:PC12
spi_software_mosi_pin:PC10
spi_software_miso_pin:PC11
rate:400
axes_map: x,y,z
[resonance_tester]
accel_chip_x: lis2dw12
accel_chip_y: lis2dw12 bed
probe_points:110, 110, 20
min_freq : 1
max_freq : 140
accel_per_hz : 150
test_freq_start: 70
test_freq_end: 80
[pause_resume]
pause_position: 200,200
z_up: 10
[filament_switch_sensor filament_sensor]
pause_on_runout: False
switch_pin: ^!PC13
[buttons]
[leviQ2]
base_button_position: 60,240
wiping_position: 20.0,-5.0
button_push_down_count: 2
platform_offset: 25
bed_temp: 60
extru_temp: 210
extru_end_temp: 140
to_zero_speed: 100
extru_out: 50
extru_out_speed: 3
extru_in: 5
extru_in_speed: 10
button_push_down: 5
calibration: 0
z_up: 15
z_offset_factor: 0.13
leviQ2_pin: PA8
[ota]
fw_max_size: 40960
fw_sector_size: 8192
fw_ota_sector_offset: 22
[gcode_arcs]
resolution:1.0
[input_shaper]
shaper_freq_x: 72.2
shaper_freq_y: 58.0
shaper_type_x: mzv
shaper_type_y: 2hump_ei
```

---


### MOD: Rinkhals (Modified KobraOS)
[jbatonnet](https://github.com/jbatonnet) came up with a modded KobraOS of the Kobra3 called [Rinkhals](https://github.com/jbatonnet/Rinkhals), which seems to also work fine with the Kobra 2 Pro/Plus/Max printers that use the newer board revisions, labeled as "Spe **B** v_1.0.x".
Rinkhals allows you to e.g. access your printer via your local network and the regular Mainsail or Fluidd UI, change settings of the `printer.cfg`, create and display bedmeshes etc. Basically you'll have a KobraOS without the limitations of the KobraOS.

!!! warning "Only Suitable For Trigorilla B v1.0.x Boards!"

Before attempting to flash and use the modified KobraOS, make sure to check which kind of mainboard your printer is using!
It is crucial that you have a type "Spe B" board, please see the chapter "Mainboard" for further information!

---

[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/U6U5NPB51)

0 comments on commit 3a70d82

Please sign in to comment.