just in case OP is still interested: I posted my working config here
https://forum.duet3d.com/topic/37868/smart-orbiter-3-setup-filament-sensor-rgb-and-hotend-led

Posts made by phoenix
-
RE: Orbiter V3.0, Can the "smart" hardware be used with Duet2/RRF?
-
Smart Orbiter 3 setup (filament Sensor, RGB and hotend LED)
Encouraged by the post by @cdoe on setting up the Orbiter 2 filament sensor, I gave it a hard try to set up the Smart Orbiter 3. All features are working and I come amazed at the power of RRF
The Smart Orbiter 3 has 8 connections at the base, containing a RGB Matrix LED connection, a simple hotend LED and 2 outputs (FS for sensing if filament is present) and FTU (outputs if filament is tangled or filament unload button is pressed). (check the website https://www.orbiterprojects.com/so3/ in section 3.3 Integrated Smart Features for polarity: I spent a day trying to figure out why nothing was working only to discover that blue and red wires are NOT GND and 3V
)
Similar to the Orbiter 2 Sensor, the set up is slightly more elaborate than just a sensor since both outputs have 2 functions and logic is not straightforward as well. FS output works as expected as in changing state when filament is present or runs out, FTU output only changes state if filament is already present.
I am running a e3d toolchanger with Duet 2 Wifi and DueX5. I connected the cables to the pins 1 -6 of the LCD connector. (all works just fine on 3.3V) and reused triggers developed by @cdoe for things to work.
This is a section in config.g
; Filament Sensor & Smart H2 M950 J3 C"^connlcd.enca" ; define logical input for filament auto load M581 P3 T5 S1 R0 ; define trigger for filament auto load triggers trigger5.g M581 P3 T2 S0 R0 ; define trigger for filament sensing triggers trigger2.g M950 J4 C"^connlcd.encb" ; define logical input for filament unload M581 P4 T6 S1 R0 ; define trigger for filament auto unload triggers trigger6.g M950 P5 C"connlcd.rs" ; define logical output for hotend LED M950 E0 C"connlcd.5" T1 U1 ; create a RGB Neopixel LED strip on the LCD Connector 5 port (RRF 3.5 and later) M98 P"0:/macros/h2led" ; Set LED Colour according to state of H2 M42 P5 S0 ; Turn Hotend LED off
Obviously the most important part is getting the matrix LED to work
with a macro I called h2led.g
; Sets MatrixLED according to filament Sensor status if sensors.gpIn[3].value = 1 M150 E0 R000 U255 B000 P255 ; set LEDs to green, full brightness else M150 E0 R255 U000 B000 P128 ; set LEDs to red, half brightness
Triggers 2, 5 & 6 reuse the macros developed for the smart orbiter
; trigger2.g if state.status == "processing" M300 S2000 P100 ; play beep sound M291 P"Ran out of filament while printing" S0 T3 ; display message M25 elif state.status == "pausing" || state.status == "paused" M291 P"Retriggered filament sensor during pause" ; display message else M300 S2000 P100 ; play beep sound M291 P"Ran out of filament" S0 T3 ; display message
For the load and unload triggers, I am using a single printer macro for all toolheads for loading and unloading. As such, I pass on a parameters representing the toolhead to the macro for addressing the right toolhead. And then obviously triggering the color LED macro at the end of it to adjust LED according to status.
; trigger5.g M150 E0 R000 U000 B255 P128 ; set LEDs to blue, half brightness M98 P"0:/macros/filament-load" X2 ; Load Filament for T2 M98 P"0:/macros/h2led" ; Set LED Colour according to state of H2 T-1 ; Park tool
; trigger6.g if state.status = "processing" M300 S2000 P100 ; play beep sound M291 P"Filament is stuck or filament unload button pressed" S0 T3 ; display message M150 E0 R000 U000 B255 P128 ; set LEDs to blue, half brightness M25 else M150 E0 R000 U000 B255 P128 ; set LEDs to blue, half brightness M98 P"0:/macros/filament-unload" X2 ; Call Unload Macro and pass Tool number using X parameter M98 P"0:/macros/h2led" ; Set LED Colour according to state of H2 T-1
Hope this helps somebody else - it's a nifty little extruder and I'm stoked the electronics are now fully integrated!
-
Passing Parameters - unknown variable
Hello, I am trying to create a filament load macro, that gets called by the respective filament load button, or if called manually (which hotend was pressed is unknown) asks for which hotend to work with.
I can't crack one final step - when running the macro (triggered, or called manually), I get an error: when triggered by the button it returns
Error: in file macro line 4 column 23: meta command: unknown variable 'hotendselect'The sequence is first that the button triggers the trigger5.g file to pass on the value "2" :
; trigger5.g M98 P"0:/macros/filament-load" X2 ; Load Filament for T2
then, the error is in Line 4 of the filament-load macro:
;Autoload filament macro. Press button then insert filament to load if exists(param.X) ; Parameter X was passed set var.hotendselect = param.X echo "Autoload for Extruder " ^ var.hotendselect else ; Parameter X was NOT passed, display screen for selecting one of the hotends M291 R"Unload Filament" P"Request for Extruder #" S4 K{0,1,2,3} J1 set var.hotendselect = {input} endif T{var.hotendselect} ; Select Tool as passed on M300 S2000 P100 ; play beep sound M291 P"Insert filament in Tool!" S0 T3 ; display message M302 P1 ; enable cold extrusion G4 S5 ; wait for 5 seconds to insert filament G1 E15 F500 ; load filament inside the gears M109 S235 T0 ; set hotend temperature and wait G1 E100 F300 ; extrude 100mm, you may need to reduce speed for very soft TPU M104 S0 T0 ; set hotend temperature to 0 M302 P0 ; disable cold extrusion M291 P"Filament autoload complete!" S0 T3 ; display message unset var.hotendselect ; Erase variable
Apologies with what I assume is a noob question - I tried search, the GCode manual and chatGPT to no avail...
-
RE: Orbiter V3.0, Can the "smart" hardware be used with Duet2/RRF?
@dbenhart said in Orbiter V3.0, Can the "smart" hardware be used with Duet2/RRF?:
I'm wondering whether anyone made progress on this topic, connecting a Smart Orbiter 3 to a Duet board. I have a Duet3 MB6HS and am trying to with up the SO3 to it. Specifically, I'm trying to connect the filament sensor and LED. I've got it wired up to IO4, with the yellow/LED being on IO4.out, and brown/filament-sensing being on io4.in. I've got blue/GND and red/+5v wired up to the corresponding pins on IO4 as well. I'm not getting anything from the LED, and the voltage change on the filament sensor doesn't make any sense either. I'm using a multimeter to measure IO4.in to GND, but the voltage change is only 0.1V when I put filament in. Anyone have any thoughts on this?
Have you been able to make any sense of this? I just finished mounting the SO3 to my Toolchanger, and now need to tackle the electronic side: printing works, but would be nice to have the filament sensor working. I understand that the LED matrix is not addressable in Duet2 but hopefully the triggers/button can be read?
-
RE: Orbiter filament sensor v2 setup
Just want to say thanks - this works a treat!!
-
RE: Bed temperature dropdown does not match setting
@jay_s_uk The first screenshot in my original post shows the Machine Settings Tab: on the bottom you see the presets (90 / 85 / 65 / 60). The dropdown (250 /235 / 220 /205 / 195 / 160 / 120 ) is what I get as choices when I go to set Bed temperature
-
RE: Bed temperature dropdown does not match setting
@jay_s_uk thanks - deleted the file but it came back the same way
-
RE: Bed temperature dropdown does not match setting
@Phaedrux Sorry I forgot to mention... 3.5.3 both
-
Bed temperature dropdown does not match setting
Hello, I have noticed that in the Web interface, the dropdown for Bed temperatures does not match its preset list: instead it lists the same temperatures as for the Tools. I assume there's a config file that has failed to update - can somebody point me in the right direction?
The "Machine Specific Settings":
-
RE: Is my DuetWifiServer.bin properly updated?
@Phaedrux @droftarts on Channel 13 now (Europe, and much less congested than 11 or 6).
I believe it's gotten slightly better, but I still see disconnects at random (frequent) intervals. If i understand you right, this is caused by EMF? Is my last resort an external antenna?
-
RE: Input shaper v3.5.0 -rc4 not showing motion profile
@droftarts I didn't even think the accelerometer showed up in M122?
Here's the latest, but I can't spot an Accelerometer mention?
M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.5.0-rc.3 (2024-01-24 17:56:24) running on Duet WiFi 1.02 or later + DueX5 Board ID: 08DGM-917DA-G4MS8-6J9FL-3SN6N-TVVR9 Used output buffers: 2 of 26 (26 max) === RTOS === Static ram: 23224 Dynamic ram: 77824 of which 0 recycled Never used RAM 11832, free system stack 138 words Tasks: NETWORK(1,ready,12.4%,221) ACCEL(6,nWait 5,0.0%,346) HEAT(3,nWait 5,0.1%,327) Move(4,nWait 5,0.0%,261) DUEX(5,nWait 5,0.0%,24) MAIN(1,running,85.9%,742) IDLE(0,ready,1.6%,30), total 100.0% Owned mutexes: === Platform === Last reset 00:00:52 ago, cause: power up Last software reset at 2024-02-11 15:48, reason: User, Gcodes spinning, available RAM 8392, slot 1 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x04 Aux0 errors 0,0,0 MCU temperature: min 18.2, current 23.4, max 23.6 Supply voltage: min 24.1, current 24.3, max 24.6, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Events: 0 queued, 0 completed Driver 0: ok, SG min 148 Driver 1: ok, SG min 153 Driver 2: standstill, SG min 0 Driver 3: standstill, SG min n/a Driver 4: standstill, SG min n/a Driver 5: standstill, SG min n/a Driver 6: standstill, SG min n/a Driver 7: standstill, SG min 0 Driver 8: standstill, SG min n/a Driver 9: standstill, SG min n/a Driver 10: Driver 11: Date/time: 2024-03-28 07:56:16 Cache data hit count 1959708808 Slowest loop: 24.28ms; fastest: 0.17ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 8 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest read time 2.7ms, write time 0.0ms, max retries 0 === Move === DMs created 83, segments created 11, maxWait 39308ms, bed compensation in use: none, height map offset 0.000, max steps late 0, ebfmin 0.00, ebfmax 0.00 next step interrupt due in 104 ticks, disabled Moves shaped first try 1, on retry 0, too short 0, wrong shape 0, maybepossible 0 === DDARing 0 === Scheduled moves 5, completed 4, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state 3 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 === GCodes === Movement locks held by HTTP HTTP is idle in state(s) 2 0 15, running macro Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Q0 segments left 0 Code queue 0 is empty === DueX === Read count 1, 1.13 reads/min === Network === Slowest loop: 24.42ms; fastest: 0.00ms Responder states: HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) HTTP sessions: 1 of 8 === WiFi === Interface state: active Module is connected to access point Failed messages: pending 0, notrdy 0, noresp 0 Firmware version 2.1beta6 MAC address ec:fa:bc:2d:df:4f Module reset reason: Turned on by main processor, Vcc 3.39, flash size 2097152, free heap 43064 WiFi IP address 192.168.178.30 Signal strength -52dBm, channel 13, mode 802.11n, reconnections 0 Clock register 00002002 Socket states: 0 0 0 0 0 0 0 0
-
RE: Is my DuetWifiServer.bin properly updated?
@Phaedrux Version 1.27 does not bring any relief unfortunately.
I understand @droftarts point - I'll change the channel to 6 or 11 on the home wifi. Crossing my fingers !
-
RE: Input shaper v3.5.0 -rc4 not showing motion profile
@droftarts Ian, it was connected directly to the Duex TempDB connector.
While moving it to Duet, I noticed that the INT1 pin wasn't fully aligned. Changed the plug and reset all cables, I now see values!
Thank you so much for your patience guiding me through it
-
RE: Is my DuetWifiServer.bin properly updated?
@droftarts Version is now showing 2.1beta7.
No change in the behavior. It's mostly annoying when doing config work, as randomly the interfaces loses connection (and reconnects within a second), but it closes the edited config file wihtout saving obviously. -
RE: Input shaper v3.5.0 -rc4 not showing motion profile
@droftarts Thanks Ian, unfortunately even with S = 1 nothing comes but "Failed to collect data from accelerometer"
-
RE: Is my DuetWifiServer.bin properly updated?
@droftarts Thank you for the pointer - I have updated it but can't see a difference.
-
RE: Input shaper v3.5.0 -rc4 not showing motion profile
@gloomyandy Thanks for the pointer - I just did the following from the console
So nothing seems to go wrong, but the file is still empty:
Sample,X Failed to collect data from accelerometer
is there a more descriptive way to query manually?
-
RE: Input shaper v3.5.0 -rc4 not showing motion profile
@gloomyandy said in Input shaper v3.5.0 -rc4 not showing motion profile:
So for some reason the data collection is not working.
Reply
Thanks - if the Accelerometer connects and shows up reliably - what could be causing this? Are we back to cable issue (despite double shielded USB3?)?
-
Is my DuetWifiServer.bin properly updated?
Hello,
trying to troubleshoot another problem I discovered a possible cause to a recurring annoyance of mine: the connection to the webinterface tends to reset itself every so often. Haven't bothered so far as more pressing things, but here's what I have: at random intervals I see this in the logs:Digging in, I find that the while everything else is at RRP 3.5.0-rc3, the Wifi system is listed DuetWiFiServer 2.1beta6. I can't find what the exact last version needs to be, but I downloaded the Duetwifiserver.bin listed in RRP 3.5.0-rc3 and uploaded it (using webinterface): when restarting it stays at v2.1beta6
Can you tell me what version there should be?
Thanks!
M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.5.0-rc.3 (2024-01-24 17:56:24) running on Duet WiFi 1.02 or later + DueX5 Board ID: 08DGM-917DA-G4MS8-6J9FL-3SN6N-TVVR9 Used output buffers: 9 of 26 (26 max) === RTOS === Static ram: 23224 Dynamic ram: 77664 of which 0 recycled Never used RAM 12256, free system stack 182 words Tasks: NETWORK(1,ready,13.4%,221) ACCEL(6,nWait 5,0.0%,346) HEAT(3,nWait 5,0.1%,327) Move(4,nWait 5,0.0%,360) DUEX(5,nWait 5,0.0%,24) MAIN(1,running,86.0%,742) IDLE(0,ready,0.5%,30), total 100.0% Owned mutexes: === Platform === Last reset 00:02:58 ago, cause: power up Last software reset at 2024-02-11 15:48, reason: User, Gcodes spinning, available RAM 8392, slot 1 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x04 Aux0 errors 0,0,0 MCU temperature: min 20.3, current 27.0, max 27.2 Supply voltage: min 24.1, current 24.3, max 24.4, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Events: 0 queued, 0 completed Driver 0: standstill, SG min n/a Driver 1: standstill, SG min n/a Driver 2: standstill, SG min n/a Driver 3: standstill, SG min n/a Driver 4: standstill, SG min n/a Driver 5: standstill, SG min n/a Driver 6: standstill, SG min n/a Driver 7: standstill, SG min n/a Driver 8: standstill, SG min n/a Driver 9: standstill, SG min n/a Driver 10: Driver 11: Date/time: 2024-03-27 08:02:25 Cache data hit count 4294967295 Slowest loop: 15.30ms; fastest: 0.19ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 10 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest read time 2.5ms, write time 0.0ms, max retries 0 === Move === DMs created 83, segments created 0, maxWait 0ms, bed compensation in use: none, height map offset 0.000, max steps late 0, ebfmin 0.00, ebfmax 0.00 no step interrupt scheduled Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0 === DDARing 0 === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 === GCodes === Movement locks held by null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Q0 segments left 0 Code queue 0 is empty === DueX === Read count 1, 0.34 reads/min === Network === Slowest loop: 15.13ms; fastest: 0.00ms Responder states: HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) HTTP sessions: 1 of 8 === WiFi === Interface state: active Module is connected to access point Failed messages: pending 0, notrdy 0, noresp 0 Firmware version 2.1beta6 MAC address ec:fa:bc:2d:df:4f Module reset reason: Turned on by main processor, Vcc 3.39, flash size 2097152, free heap 43068 WiFi IP address 192.168.178.30 Signal strength -44dBm, channel 1, mode 802.11n, reconnections 0 Clock register 00002002 Socket states: 0 0 0 0 0 0 0 0