Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Macpod

Pages: [1] 2 3 ... 11
3D Printers / Re: First test run
« on: August 13, 2018, 09:01:54 PM »
Hi again, I was out at defcon and wasn't checking this. Glad to hear you found your wiring problem.

For lasershark_stdin_displayimage what is your current problem? The image must be less than or equal to 4096x4096 pixels in size. If you run lasershark_stdin_displayimage with -h help will be printed out

Since you are using a ttl laser you will want to use the monochrome mode. The following will display a png named test.png at 10,000 kpps in monochrome. to use a syntax like
Code: [Select]
lasershark_stdin_displayimage -p test.png -r 10 -m

I would suggest printing a black and white checker board pattern for testing. If you have a smartphone/camera you can use a long-exposure app to get a more complete (and very neat) looking photo :)

3D Printers / Re: First test run
« on: August 04, 2018, 07:11:25 PM »
Glad you got the galvo part working but I do not think the galvo swap should have been necessary.

Are you using the pre-compiled lasershark_stdin.exe and lasershark_circlemaker.exe for windows? I'm concerned about the B channel working but the C channel not.

If you look at the circlemaker code:
Each line is drawn where A is set to 4095 (max), B is set to 4095 (max), and C is set to 1 (max) This should cause a laser connected to any of these channels to turn on.
Code: [Select]
         float_to_lasershark_xy(x_f),  float_to_lasershark_xy(y_f), 4095,4095,1,1); // x, y, a, b, c, intl_a

If you have the lasershark plugged in but not running, what is the voltage between the C channel + and GND pins? (It should be close to if not 0v).
If you pipe circlemaker into lasershark_stdin and probe, what is the voltage between the C channel+ and GND pins? (It should be close to 5v).

I will help you with the lasershark_displayimage debugging after we get this solved. Trying to diagnose displayimage without first resolving circlemaker adds unknowns which makes debugging the overall problem more complex.

3D Printers / Re: First test run
« on: August 03, 2018, 10:34:46 PM »
Quote from: sla_newbie
I have a concern in my power supply I am using  galvo drivers that takes 15V as input and the laser driver takes 12V input. So is anything wrong with the power supply I am using?
It is perfectly fine to use several voltage supplies of different values (i.e. one 15v supply for the galvos and one 12v supply for the laser diode driver board).

Quote from: sla_newbie
the laser is always ON before operation and even after operation.
The LaserShark pulls A/B/C lines low when the data buffer is empty (i.e. before  and after circlemaker is run). The laser should turn off when the ttl + line is pulled low and turn on when the ttl + line is puled high.
Are you sure the lines between the LaserShark C header and Laser A-13 TTL header are correct? I can't see what colors are going to what pins from the pictures.

Quote from: sla_newbie
1. Also when I pipe circlemaker to stdin the mirrors are moving too fast and no image is being projected (Maybe I am overdriving the mirrors like you said. I am looking to replace the galvo setup to 20kpps)
The LaserShark should still work with your galvos. No need to replace them yet. Just know they won't be as fast. In your application it may not matter.

Does your laser stay on if the ttl pins are plugged in? What image is drawn via the laser if so with circlemaker? I need to see what is being drawn (even if wrong) to diagnose the problem.

Are you using the pre-compiled lasershark_stdin.exe and lasershark_circlemaker.exe for windows?

3D Printers / Re: First test run
« on: July 31, 2018, 07:57:25 PM »
I mentioned the kpps rating as I see from your output you are running at a rate of 20,000kpps. For circlemaker that is probably fine but for the displayimage app you may need to reduce that.

1. To start diagnostics, lets focus on the laser on/off state. The laser should be off before you run circlemaker and should turn off after you stop circlemaker. If it is not, something is not wired correctly. Did you solder the provided polarized headers to the LaserShark board and connect wire? Did you verify gnd is going to gnd and the other line is going to +?

2. For diagnostics lets just stick with the circlemaker output. If everything works as expected this should draw a circle. What do you currently see drawn? Have you verified the laser is properly reflecting from one mirror to the other? If it does not draw a circle, what does the output look like?

3D Printers / Re: First test run
« on: July 29, 2018, 01:48:11 PM »
I do not believe you have been sold 20k galvos. Normally the mirrors on higher-speed galvos are smaller and trimmed at the corners to reduce weight and allow faster speed operation. I suspect these are 10/15K galvos

It is normal for galvos to heat up but not excessively so. Perhaps a better metric to determine if the galvos are being over-driven is the sound. If it sounds bad/scratchy/etc it is :)

Based on your other post I see you have compiled the lasershark host applications yourself. Have you tried piping in the circlemaker input into lasershark_stdin? This would be a good test to make sure lasershark_stdin has been compiled properly.


3D Printers / Re: Using lasershark_stdin_displayimage
« on: July 29, 2018, 01:40:49 PM »
Hi, I was on vacation. Glad you figured it out

For others who search this topic these errors indicate functions necessary for the program to operate were not found and this is because they were not compiled. There is a Makefile included and this should be used to compile. Ideally you should use a Linux vs Windows OS too.

Hi CupOfTea,

Thanks for posting your modified code for others to review/modify! Those are some interesting print lines. :)

3D Printers / Re: LaserShark Wiring Questions
« on: June 25, 2018, 08:46:30 PM »

Your wiring looks like you have everything OK. In case you missed them, check the lasershark packaging for connectors for the galvos, they should have been wrapped in blue painter tape. Also, it is fine if you connect the ttl input to port A. B is also fine too.

3D Printers / Re: New to lasers and SLA and need some info
« on: March 31, 2018, 05:46:47 PM »

Maybe I should phrase this differently. Since you have a much stronger knowledge of galvos, and coding and all the areas where I'm lacking, if someone came to you and said "I have this galvo head (the one I included the manual for in the last post) can you turn it into a laser sla 3d printer?" How would you go about it? Would you prefer a digital or analogue head since it can come as either one? What are the missing components and where would I source them in order to pull it all together.

With my limited knowledge and experience it seems like the best way would be to find some way to reconfigure a basic marlin/repetier firmware to drive a galvo instead of steppers on the XY axis, and swap the extruder bits for laser ttl on/off commands, and just use a ramps board to do it all. But I have no idea how to go about doing that, and I don't want to have to manually modify massive amounts of Gcode manually before doing a print. The solutions are definitely out there because people are doing it fairly inexpensively. I just keep running into brick walls, so maybe I need to take a whole new approach all together.
I would probably go with a digital head if it wasn't significantly more money and after I determined the speed would be sufficient (vs an analog head). Before I purchased anything I would make sure software existed and if not write the software.

There are two software approaches, one is to modify a slicer to export images, then draw pixel by pixel. The other means is to make a g-code to x-y point converter and use that in conjunction with either an xy2-100 head (easier and already integrated in) or lasershark board attached to an analog head (maybe faster).

3D Printers / Re: New to lasers and SLA and need some info
« on: March 29, 2018, 11:56:39 PM »
Sorry, I totally forgot to include the datasheet/manual they sent me with the stats on it. It seems like if it can interpret the digital signals, that it would already have a similar board type thing in the head, but I could be wrong. If not, I think going to the lasershark route is definitely the best and simplest way to go. I'm probably going to be purchasing the CW software license since that looks like the smoothest way to itegrate everything since I'm already way out of my knowledge base on this one.
It should for a digital head. The logic board I am referring to that would attach to an Arduino/etc would be for the purpose of level shifting (think 3.3v to 5v TTL Level conversion or TTL to RS232.. very simple/common) vs a processing or analog to digital module.

Before purchasing a copy of CW make I would encourage you to reach out to the developer to verify it still supports the LaserShark. CW used to be freely downloadable and supported the LaserShark but this support was removed and the product went to a license-based model. According to another post on this forum the LaserShark is not supported by the latest CW.

It looks like something changed with gcc and I'll need to update the code to have it compile.

In the meantime in the Makefile you can remove "lasershark_twostep" from the following line and run make again. This should build everything fine:
all: lasershark_jack lasershark_stdin lasershark_stdin_circlemaker lasershark_stdin_displayimage lasershark_twostep

I'll try and fix this gcc issue this weekend but since you probably don't have a twostep board the result likely won't matter much for you

edit: I have removed the inlines and corrected some code that was throwing warning too as a bonus :)

3D Printers / Re: New to lasers and SLA and need some info
« on: March 28, 2018, 01:11:58 AM »
Actually, the original company got back to me and they suggested another product they have that is a galvo scanner with the housing, the f-theta lens for a 405nm laser, set up for a 300x300mm scan area, all the mirrors, and galvo bits and a laser that mounts up to the head, and they said they could do that one for $700 total. That's about the cost of just the lens from other companies I've seen, and these guys sell tons and tons of scanners and their reviews look pretty solid. I think I'm going to go this route as long as you think it should work for a high accuracy 3d printer set up. I'm going to attach the manual for your to review and let me know what you think.
It sounds interesting for everything and having a pre-assembled head with galvo/power supply/galvo amplifiers/laser/controller could save you headaches. I couldn't comment on if there were any areas of concern without a datasheet but hopefully from my first reply you know about some of the things to look out for (i.e. monotonicity/linearity)

Also, it turns out they can do it in either a digital, or analogue. Which option would be easier to integrate into the software? If I went the digital route rather than analogue with a lasershark board would I need some kind of usb dongle to send the xy coordinates out to the galvo motors? Could I use a standard arduino set up of some kind like an fdm printer? But rather than sending steps to a stepper driver, it's basically sending steps to a galvo motor? I've got a lot to learn before I'm able to make this happen so I appreciate whatever help I can get.

This will be dependent on the software you are integrating with and the speeds needed. If starting from scratch digital would be easier. Going digital may increase you price estimates as the equivalent of a Lasershark will need to be integrated into the head but even so it may be worth it.

If you go the digital route you will still need something to output XY2-100 protocol. An Arduino could be sufficient or in conjunction with line level shifting/etc according to the head's input requirements.

It looks like you are missing twostep_common_lib.h and twostep_common_lib.c . Did you remember to initialize and checkout the github submodules?

cd ~/Desktop
git clone cd lasershark_hostapp
git submodule init
git submodule update

Hi Wan-anong,

What problem are you encountering specifically?

How do you plan to use the jack application too? I ask as there may be easier ways to accomplish your goal

3D Printers / Re: New to lasers and SLA and need some info
« on: March 19, 2018, 11:33:55 PM »

1. Laser power? I'm assuming approx 150 mw would be plenty?
405nm 50mW-150mW lasers seems popular for SLA printers. Would those work? Maybe...
This is a challenging question to answer without other system details. Some of these include:
-accounting for resin cure characteristics
-how fast the laser will be scanned
-beam focus
-beam diameter.
I see you plan to use an f-theta lense and that will help minimize some variable complexities.

2. digital or analogue galvo? I'm assuming analogue, but I haven't done a whole lot of research on how exactly I'll be driving the galvo? Will I need a separate galvo control board in addition to the ramps 1.4 I was planning on using? Can I control it directly from a raspberry pi? Again, totally new to galvos and how they work and all that, so feel free to enlighten me as to the electronics necessary to pull this off.
I suspect they are asking if you need a digital scanning head or analog scanning head vs galvo. If you purchase a digital scanning head I presume it will use the XY2-100 protocol and you will not need a LaserShark (nor will the LaserShark be compatible/make sense). If you purchase an analog scanner head you will need an analog controller board such as the LaserShark but first you will need to determine if the input characteristics of the heads input match. I would expect most things would follow the ILDA standard so this would be true but you would need to confirm this. I do not see analog specifications in the attached document.

3. connecting table? Not even sure what they mean by this, but hopefully someone here knows what they're talking about?

The documents suggest this might be a poor translation and correspond to the mounting interface between the scanning head and laser.

The supplier is a company from and the model they're offering is a Model JD2203 Galvanometer, with a 405nm laser and an f-theta lens lens specifically designed for a 405nm laser and a 300mm x 300mm working area. I'm expecting the total scanning head to come in around $500 or so, which is insanely cheap compared to the other options I've found online from American Suppliers. It's a big enough savings that I'm happy to drop the $500 on one of these scanners and give them a shot. Any feedback or input of any kind would be greatly appreciated since I'm in way over my head on this build.
That is quite low in cost. Generally this is an indicator that R&D costs could be avoided or that the product has been cost-optimized. I would be curious to know the KPPS rating of his scanning head as well as the stability characteristics in comparison other companies around the world.

I'm also trying to figure out exactly HOW all the components will play together. I've been hunting around for some info about what the lasershark board actually does, correct me if I'm wrong, and it looks like it essentially scans an image, line by line, and converts it translates that into movements so the laser will draw the image that is sent (via usb) to the board. So in this instance, it will essentially be working like a DLP Projector. Whatever control software I'm using (would love recomendations for slicers and control software for sla set up) would tell the stepper to move the Z axis up/down, then send an image (rather than a series of gcode commands for all the movements of an FDM printer) to the lasershark board and it will "project" the image onto the resin. Does this mean I could use software designed for DLP printers such as NanoDLP or others if I'm using a lasershark board to control the laser?
The lasershark driver (that runs on your computer) accepts x/y coordinates and power intensities for the laser channels, stuffs these into buffers and sends them over usb to the LaserShark. The lasershark in turn prints out these coordinates at the designated kpps rate you configured the points to be displayed at.

the lasershark_hostapp github repo provides two means to use this:
1. You can use lasersharklib to integrate the lasershark libraries into your codebase and drive the LaserShark as fast as possible
2. You can compile lasershark_stdin and pipe samples in a simple text format into the application. This latter approach is less efficient, but much easier as you do not have to learn how to use libusb/etc.

In this repo are two examples of how to use lasershark_stdin. One is lasershark_stdin_circlemaker. If you pipe this into lasershark_stdin, a circle will be drawn. The other is lasershark_stdin_displayimage which will line-by-line display a png image if you pipe the output into lasershark_stdin.

Your software would need to control the z-stepper motor (i.e. you could write a python app that controls this between layers). If you can get software to present you with a png image of each layer you could theoretically adapt it, but you would need to have some integration glue on and (all of which you should be able to confirm before buying any hardware).

Pages: [1] 2 3 ... 11