You are not logged in.

#1 Re: Help and Support » Servo moving problem » 2017-12-27 16:30:32

rob

Have you bridged external power supply GND to RPI GND?

#2 Re: Help and Support » Servo problem when i send gcode in terminal. » 2017-12-27 15:38:19

rob

You can create any new file under /etc/udev/rules as long as it follow the same name structure ("NN-your_rule_name.rules", where NN is a two digit number). In any case, I would use a high one (you might even edit 99)

By the way, seems like this could be a power supply issue which force RAMPS to reset when activating servos. How are you powering the servo? Directly from RAMPS or Raspberry PI? Servo motors can drain a lot of current when moving (or holding torque). These usually really short time frames with high current requirement may exceed your power supply rating and cause a voltage drop, resetting RAMPS or RPi.
Try using an external power source for the servo (remember to also connect ground to your RAMPS or rpi ground) and check if the problem persist. If you are using 5V servos, which I suppose, you can use a spare 5V phone charger, for example.

#3 Re: Bug Reports » Last image do not show on dashboard while not printing » 2017-12-18 18:02:43

rob

I can also confirm that selecting "Save all images" on the current build (1749) is not taking any picture during print (actual selection is one every layer, printing calibration plate). Manual shot generates the picture under /shots" folder but do not generate the symlink.

#4 Re: Bug Reports » Last image do not show on dashboard while not printing » 2017-12-18 14:18:05

rob

I have been experimenting a little more.
I added a customized button which does the following:

[[Net http://127.0.0.1:8080/camera/take]]
[[Exec ln -sf "$(find /home/pi/printer/public/shots/ -maxdepth 1 -name '*.jpg' |sort -t_ -nk2,2|tail -n1)" /home/pi/printer/public/shot.jpg]]

It succeed to update the symbolic link, but taking photo using net function do not work. I guess it might be related with password protection. Would it be possible to selectively disable password if requests come from 127.0.0.1?

Thanks in advance for the help! smile

#5 Re: Bug Reports » Last image do not show on dashboard while not printing » 2017-12-18 11:30:18

rob

printer .log shows the following when I hit "Take a Photo"

2017/12/18 12:22:54.071195 {"Layer":"1","module":"Camera","level":"Notice","msg":"Taking Photo [] <nil>"}

ln -sf actually works if I issue it from ssh and the image is updated. Looks like the program is not issuing ln -sf, at least when taking photo manually.
I'm on build 1749.

#6 Re: Help and Support » Marlin 1.1.x with Z synchronization support » 2017-12-18 11:03:24

rob

I will try adding it to the official marlin docs in the next days.
Short version:
To enable it, you need to enable a couple of options/flags in config_adv.h before compiling Marlin source code. (Other options should be configured according to your printer, please check your previous config).
At the end of config_adv.h you will find:

  • define NANODLP_Z_SYNC : uncomment this one to enable Z_move_comp output for the following commands:

    • G1: only if command includes Z axis;

    • G4: always;

    • G28: only if homing Z or all axis;

  • define NANODLP_ALL_AXIS: uncomment also this line if you want Z_move_comp output from the following commands:

    • G1: always;

    • G4: always;

    • G28: always.

PS: if it's not too much effort and cost to set up and maintain, have you considered the possibility of a wiki? This might help the community to contribute to documentation. You made a great work, but first approach is often a bit hard as there is no extended documentation. We have the forum, which is great, but sometimes you have to read though many topics to understand features. A wiki might help to resume all that info spread across the forums.

#7 Feature Requests » Ramps crash/restart detection to pause print » 2017-12-16 18:44:04

rob
Replies: 1

After direct experience of the problem due to an excessive current consumption on 5V rail from external device, I realized that could be useful (both for debugging and for process integrity) if NanoDLP could detect ramps failure (not responding or reset), pause the print and warn the user.
Reset detection should be easy enough (looking for "start" keyword from RAMPS).

Also I think it would be better to wait for "ok" response after each command before issuing the following one. This way printing will stall if something goes wrong and dashboard status info would actually be useful.
Right now, when there is some problem with RAMPS connection, print execution continues at least till the next "WaitForDoneMessage".

#8 Re: Bug Reports » Last image do not show on dashboard while not printing » 2017-12-16 10:19:47

rob

I will test it again as soon as possible, but seems like ln -sf fails/do not work, at least when taking photos manually. If I delete it before hitting the button, shot.jpg is not generated at all. I guess it should when printing, but I should confirm using it.
Gonna try new beta if available.

About caching problem: yesterday I found that using chrome (at least on Windows, gonna try more combinations next week) makes caching problem worst. Hitting refresh is not enough you will need to hold Shift down while pressing refresh button to force the cache to clean or old photo/plates will keep showing.

#9 Re: Help and Support » Marlin 1.1.x with Z synchronization support » 2017-12-16 10:03:21

rob

Glad to announce that first Marlin stable release (v 1.1.7) including NanoDLP is officially available for download from Marlin website.

The feature is officially part of Marlin and will be included in all releases >=1.1.7 (including future 2.0 version).

PS: I would suggest to put this info here: https://www.nanodlp.com/download/.

#10 Re: Bug Reports » Last image do not show on dashboard while not printing » 2017-12-14 14:19:27

rob

I just noticed that you also need to force refresh (F5) in order to show correct plate preview during printing if you change something in a plate and repeat a print.
For example I regenerated the calibration plate using less time values (less pillars) and the preview still showed the old ones as being exposed. Checking on the printer revealed that the updated plate was being actually projected.
I was wondering why and try to check /public/plates directory, where layers where actually updated; then I just hit F5 and the correct images started to display in the UI. Seems like a caching  problem.

#11 Re: Bug Reports » Last image do not show on dashboard while not printing » 2017-12-14 13:55:43

rob

When I hit "Take a photo" a shot is taken and saved in /public/shots/<picturename>.jpg.
Nonetheless dashboard will not update, neither hitting F5.
Seems like dashboard shows the content of "/public/shot.jpg", which is not updated when storage mode is set to "All images".
If there is a previously generated "shot.jpg" in /public, dashboard will keep showing it. It is the case when you switch from "Only Last image" to "All images".
If I remove the old shot.jpg, no picture is shown no matter how many new shots I take (all saved in /public/shots/ folder).

Furthermore, I noticed that in any case you need to force a page refresh (F5) in order for the photo to update in the dashboard. I mean, shot is taken but dashboard keeps displaying the old image till you hit F5.
This seems related to a similar bug during printing, where new photo is shown for a fraction of second before switching back to an old one. (This happened when having old photos in /public/shots and "Only last image" setting selected, I will investigate it further with the other setting).

#12 Re: Bug Reports » Last image do not show on dashboard while not printing » 2017-12-12 07:54:22

rob

I just find out it only works if "Save last image only" is selected, not working if saving all image.
Is it possible to check it out?
Thanks in advance. smile

#14 Re: Help and Support » Lamp hours update through external program » 2017-11-28 20:52:21

rob
Shahin wrote:

Each time printer start printing. It will be more reliable if it could be read once.

So I will use ExecReturn to get the value for the formula, thanks.
About being able to visualize it, any chance to show ExecReturn value in a pop-up when pressing a Button? Or otherwise to update it manually? I could not find where the value is stored.

#15 Bug Reports » Last image do not show on dashboard while not printing » 2017-11-28 20:10:37

rob
Replies: 12

Hi Shanin,

I tried it under different OS/browser combination (Win10-IE,Win10-Chrome,Ubuntu-Firefox,Ubuntu-Chrome), but I could not have last picture to show up on dashboard while not printing. It works while printing.
Camera command is default.

-w 1296 -h 972 --timeout 700 --awb sun

I actually checked that "~/printer/shot.jpg" is updated every time I press "Take Photo" Button (or a new "printer/shots/.....jpg" is generated if "Storage mode" is set to "All images".
Images are correct as well as resolution. Could you please check it out? I have no idea how to debug it further.
Thanks in advance!

PS: Out of curiosity: when "All images" is selected, what do the pictures name stands for?  For example, in "0_-1_1511899569820418896".jpg: I guess the long "1511899569" is unix epoch time. What about the initial "0_-1_" and the latter "820418896"?

#16 Re: Help and Support » Using 4K UHD with NanoDLP » 2017-11-28 14:09:30

rob
harlandraka wrote:

Hi rob, how do I check HDMI settings?

The commands were just for that. smile

harlandraka wrote:

It seems that 4K isn't listed here, even with the changes made to config.txt... Is there a way to add this resolution?

It seems the problem is on Raspberry Pi side (or at least raspbian OS) and not NanoDLP.
You first need to get HDMI output at 4K resolution. No experience case, maybe someone else might help.

Just out of curiosity, do the screen succeed to configure at 4K with a normal PC? Use the same cable to try, just in case.
Edit: did you try running the same commands without changing default config?

#17 Re: Help and Support » Using 4K UHD with NanoDLP » 2017-11-28 01:01:26

rob

Did you try to check HDMI settings (current and avail)?
Try to post outputs of the following commands from console:

tvservice -s
tvservice -m DMT
tvservice -m CEA

with current config and with unmodified config.

#18 Re: Tips, Tricks and Tutorials » Z axis page » 2017-11-24 13:35:54

rob

You have two partition in the SD:

  1. Boot partition, FAT32

  2. Linux partition (Ext3 or ext4, I guess)

Main filesystem is on n.2, while you are probably looking at n. 1. You will need to access it from a linux system or install a windows driver. Otherwise, if you enable it, you can just SSH into your device and make changes from command line or remotely connect through SFTP and explore folders.

#19 Re: Feature Requests » .SVG better than .PNG? » 2017-11-24 12:34:24

rob
Stevehoo wrote:

But surely, HDMI can take 4k, why would it crush my double sized slice? Wouldn't that be up to the end user - the LCD's GPU? Is there no hope? Can I not lie to the Pi's GPU, tell it to send 4k, and let the LCD's GPU to sort it out? Sigh, I'm out of my depth here, telling lies to a computer is not my area of expertise.

HDMI can support up to 4K, but the limitation depends on what you plug in (i.e your screen). When HDMI sets up upon connection, it asks the external device which operating modes (aka resolution+freq+other setting combination) it supports, then choose the best option. On RPi you can manually override it, but always choosing between the available ones (or port will not sync and you will have no valid signal). So, AFAIK, there is no way you can output to a screen with a higher resolution than its maximum supported.

You can check all combination supported by your screen issuing the commands:

tvservice -m DMT
tvservice -m CEA

and current selected mode with

tvservice -s

(CEA and DMT are two different standards. For projectors I would recommend DMT as black level is represented as 0 while in CEA is 16, which might lead to background ilumination on black areas.)

#20 Re: Feature Requests » .SVG better than .PNG? » 2017-11-24 11:44:36

rob
Stevehoo wrote:

Rob, yes there are always grey pixels on a sliced png from NanoDLP. Here is the top slice from the 3dSLA_Test, the model that is giving me this angst. The top is with anti-aliasing on, bottom off. The dots are vertical cylinders, but still, there are solid pixels and grey pixels. Even in the walls of this model, there are halftones in the AA version, which result in my model looking a little soft, out of focus.

You are right, sorry for the big mistake. I can only access the printer when at lab, but usually I find time to post here when not there. I should have double checked but I never downloaded the plate images. So I was relying on visual memories, and without being able to zoom the image enough from the UI. Thanks for the clarification.

Stevehoo wrote:

I've not yet been able to print my theory of doubling the screen resolution in NanoDLP's set up page, along with a similar 'cheat' in the profile's 'R D Override X/Y Resolution.' I think my troubling dots/tiny cylinders would come out better, they look better in the above slice, this surely would allay my woes. Though I'm sure there will be a gotcha somewhere, otherwise, you would have designed NanoDLP to do it this way: 'better rubbish in, better rubbish out.'

In theory, doubling resolution might help only with diamond oriented pixels. In practice, by the way, I guess it should not work. I try to explain why, please correct me if I am wrong.
HDMI port will be set at a given resolution, your display maximum. So, even if projecting a bigger image, NanoDLP outputs it to HDMI; this means it goes through Raspberry Pi GPU which will adapt it to HDMI resolution, making a first anti-aliasing. I guess there is no way to send a double resolution image to your LCD without being first rasterized to its maximum resolution.

#21 Re: Bug Reports » Dashboard user login not working » 2017-11-24 11:10:56

rob

Build 1737: now works as expected.
Dashboard user can access dashboard only, admin user has full access.
Thanks for solving it so quickly.

#22 Re: Feature Requests » .SVG better than .PNG? » 2017-11-23 23:38:42

rob
Shahin wrote:

Rob,
As Steve mentioned it is same as AA. Or atleast result should be very close.
Any vector (SVG/STL etc) graphics will get converted to raster format before could be displayed on GPU.
However the way raster get converted to raster format could effect image/print quality.

Yes, I get the point but I would like to be sure about how NanoDLP works. I will explain how I understood it, correct me if I got any part even slightly wrong.

You push STL to NanoDLP and slicer generates the Plate (a stack of images, -PNG I guess-). All images in the stack would have the same resolution of the projector setting (let's say 1920x1080).
In that case, when using a projector with straight-oriented pixels (non-diamond oriented) PNG pixels will coincide with projector ones.
So I ask, do generated image only have black and white pixels or are there different grayscale values to achieve subpixel resolution? Something like in this example:
subpixel resolution
If images are only B/W, could the same effect be obtained by increasing resolution of projected image (so GPU will anti-alias border pixels making them different grayscale value)?

#23 Re: Feature Requests » live video » 2017-11-23 23:08:19

rob
Shahin wrote:

It already display last layer. If you have issue with that let me know.

I mean it works while printing, but when idle Dashboard never shows anything, neither if I press "Take a photo". To make it work while printing I had to add "-o cam.jpg" option in the camera command box; might this influence behaviour? should I choose a different path?

#24 Re: Help and Support » Lamp hours update through external program » 2017-11-23 12:11:25

rob

Just a clarification: if using USB/serial projector, is lamp hour updated each time the variable [[LampHours]] is evaluated (every layer print)? Or it is just at slicing time? Or during some events, like before printing start? Or only manually?

If any of the latter, it would be good to have a way to update the LampHours value from GCode (Something like [[LampHoursSet N]]). This way value could also be cheked from the interface.
Right now I can have the actual value from external program with something like [[ExecReturn ./getLampHours]] and use the expression in a formula to get exposure time for the layer. But I think running the external program as many times as layers in the print might slow things down and increase the number of steps which depends from external programs.
Being able to set it once before printing might more reliable option.

#25 Re: Feature Requests » .SVG better than .PNG? » 2017-11-23 10:21:54

rob

Not sure if all I am going to say applies to LCD technology, as all I have read is about DLP, but in theory should.
With DLP you just have an array of pixels (micromirrors) , so projected matrix of pixels should match in theory.
What can be happening is that your pixels have diamond-orientation (45º inclination relative to the matrix frame). I think this is more common on general purpose screen/projectors, as they can give a visual perception of better resolution.
In this case the projector usually remaps the input image to your screen (Great simple explaination in this video). This give the kind of aliasing you are seeing.
Some projector have a "pattern mode", so you can directly control each pixel value even if diamond-oriented. Anyway I am not sure changing input image could solve the problem.Not at a physical level at least, you will always have a remapping of your HDMI video output to the real screen matrix.

PS: I take the chance to ask, in case Shahin will answer the post: does NanoDLP make use of grayscale to obtain sub-pixel resolution? Would it be possible to add this option to the slicer or use an external slicer and upload it as a plate? I mean something like this.

Board footer

Powered by FluxBB