@dc42 Thank you!
Could you explain what should I do to add a PWM capable pin?
I'm making a new board based on the 1LC setup.
Latest posts made by Dan_55
-
RE: IO pins on custom expansion board
-
IO pins on custom expansion board
Hello,
I'm creating a custom expansion board with IO and PWM pins only. In order for it to work I need to add a new config file for the firmware. Do I have to change anything else except the pin table?
So for example, if I'd like to add an IO number 9, I change this:// TC TCC ADC SERCOM in SERCOM out Exint PinName // Port A { TcOutput::none, TccOutput::none, AdcInput::none, SercomIo::none, SercomIo::none, Nx, nullptr }, // PA00 driver2 DIR
to this:
// TC TCC ADC SERCOM in SERCOM out Exint PinName // Port A { TcOutput::none, TccOutput::none, AdcInput::none, SercomIo::none, SercomIo::none, 9, io9.out }, // PA00
And I'm done, right?
-
RE: CAN-FD commands ?
@Danal Thank You ! The source for RRF is no use for me because I can't understand it
Till now I've been using UART communication using MAX3232, it works like a charm. Looks like CAN will have to wait until I'm better at coding. -
CAN-FD commands ?
Hi !
I'd like to develop a simple Atmega328 based printhead board, but I can't find any information about CAN communication.
How do I communicate Duet with expansion board ? I don't need anything sophisticated like motor control etc. I just want to store head specific offsets, control a fan and a servo.
Can I send regular gcodes ?Dan
-
RE: DWC Time sync
@wilriker Thanks ! I will look into that.
@dc42 Yes, I know but DWC always overrides this value when connecting. It's not a big deal, but it creates a little mess in my code and I'd like to disable it.
-
DWC Time sync
Hello,
I want to add an RTC clock to keep track of current time and send the value to Duet every time it is powered on, so that the current date can be displayed on LCD panel without the need for internet connection. My problem is that every time I connect to DWC it automatically overrides the actual date. I would like to change it and create a button for single synchronization event.
Could you guide me how the sync is done ? Which line of code is responsible for this ? I assume the code is somewhere inside dwc.js file but I can't find it.Thanks.
-
RE: Filament monitor - how it notifies filament runout ?
@dc42 Got it working thanks ! Another problem emerged though.
While the UART seems to be working fine, some of the commands are not working. I cannot check the network status with M552 or list SD files with M20 even though M20 S2 command works fine and reports JSON style info.
Is there any setting that prevents Duet from executing some of the commands or is it some kind of bug in either of the firmwares? Everything works fine when sent through USB or Web Interface.
I'm running firmware version 2.02 on Duet Ethernet v1.05.Edit : When enabling debug mode with M111 S1 P3, it seems that duet receives all the commands, but doesn't care at all. I'm pretty sure there is no bug in my firmware since it's just a few lines of code that pass data from Serial1 to Serial0 and the other way round, and most of the gcodes work without any problem.
Here is my current code, I'm sending gcodes manually from PC terminal :
void setup() { Serial.begin(57600); Serial1.begin(57600); } void loop() { if (Serial1.available()) { char inChar = Serial1.read(); Serial.write(inChar); } if (Serial.available()) { char inChar = Serial.read(); Serial1.write(inChar); } }
-
Filament monitor - how it notifies filament runout ?
Hello,
I am designing an expansion board for my printer to use custom TFT screen. I want to use Atmega2560 to communicate using UART with Duet just like the original PanelDue.
How can I tell the Atmega that the filament has run out or jammed ? I've done some tests and it seems like no info is passed to the UART as there is no info in the log, and as far as I know there is no way to run custom macro when event is detected.
I figured that when filament event is detected, monitor pauses print and information about this is sent to the log. So, I could use M591 Dx to check whether the filament event occurred every time the pause is detected, but I wonder if there is more elegant way to do this ? I'm using the rotary encoder sensor, so setting up a trigger for endstop will not work for me.
How it is done on PanelDue ?Thanks,
Daniel