Pontiac Solstice Forum banner
41 - 60 of 97 Posts

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #41 ·
OK I just finished coding the GUI for the display. This is what is going to provide the ability to see if there is an error on one of the projectors and what axis the error is happening on. It is also going to allow the user to adjust the "trim" up/down and left/right so the beams can be centered properly. The portion of the firmware that I wrote and is what controls the headlamps is a total of 6110 lines of code. If I include the base firmware (operating system) the total lines of code chimes in at 209,201 lines, this is per headlamp assembly. This a decent sized project to get running. The gauge cluster thing I am working on is at 134,440 lines of code that I have written and will be well over 250,000 when I have completed it.

I have been fighting with an issue with the servos. well 2 issues. The first issue is "servo slop" or play in the gearing in the servo. I have come up with a way of dealing with this and my initial tests are successful. on the x axis servo the issue was easily handled by putting an aluminum plate between the servo and the servo horn that the y servo attaches to. I drilled a hole in the plate that is just a smidge over the diameter of the lower portion of the servo horn. what I did essentially is turned the plate and the servo horn into a slide bearing. this increases the force needed to turn it, not by much just enough to eliminate any play that could happen from vehicle movements. The y axis was a little bit tougher, I couldn't do the same thing as the X axis because there is no way to secure the plate. So I came up with using an RC Truck shock that is made from aluminum. I had to modify the shock so it was able to provide force in both directions of travel. I did this by putting springs inside of the shock tube. One on either side of the plunger that is attached to the end of the piston. so the shock is always trying to be in the center. no matter if I pull or push it. I have one projector assembly fitted with the shock, I have to do the next one.

The second problem I have is the servos have free movement when powered off. So I will not know the starting position if they move when powered down. and they will move. So I have decided to power them down so the x is centered as this is not likely to move and the y i set so they are pointed down. This changes some things in my design. instead of simply being able to be powered on and off I am not going to be able to power down the processor. It is going to have to go into a deep sleep mode, it draws < 1 ma when in this state so current draw is a non issue. I do however have to add a relay into the mix to cut power to the rest of the sensors and to the servos. The servos draw to much power at an idle state to leave on all the time the 8 servos would total 80ma or so at idle and this is high enough to be a parasitic load coupled with the current draw from the vehicle computers this would place the load above 0.1 amps. That would kill a battery pretty quickly.
The relay I am going to add is not a typical relay. The one I am going to use has no moving parts, it is solid state. This will be less prone to failure.

There is a way to solve all of the above issues at once and is something I will probably do once I get a prototype working. There is a single company that makes a worm gear servo that is as small as I need and has PWM control. With a worm gear servo the slop problems do not exist , and also when the servos are powered down they will hold position on their own and will not move at all. I will still have to do the sleep state and relay thing in order to save the last known position when external power ha been removed. These servos cost $70.00 a piece and needing 8 of them ($560.00) brings the cost to build up a HUGE amount. The purpose to doing this is to keep the price tag down. The other thing is it takes 2 months to get them.

I just thought of something.. instead of having to do the whole process of having to get an ignition wire and keeping the power supply hot all the time to supply the 5volts I can either do a single power supply to handle both headlamp assemblies or put a power supply in each lamp. either way they would be able to be switched on and off with the ignition. I can use a 5.5 volt 2.5 farad supercap to give 2 seconds time at 2 amps draw to park the lenses. The servos have the ability to move 60 degrees in 0.12 seconds. I would move them quite a bit slower then this but 2 seconds is more then enough time to move at most 30 degrees to park them. I can set up a pin so it detects if the power supply has been switched off. to run the code that parks the lamps. this would solve the problem of knowing the startup location so when it powers on the lamps do not jump to center, I can control how fast they will center because I know where the starting position is. A 2.5 farad 5.5 volt supercap is less then 1" tall and 1/2 inch wide and a 1/4" thick. small enough to add in without getting in the way. ohhh I am liking this, so no need to worry about parasitic current draw. Best part is they are only $4.00 a piece.

This is the reason why I have long posts. helps me to think of solutions to problems.
 

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #42 ·
Oh and as far as the finish is concerned. I didn't want a flat finish on the housings, so I went with a gloss, that was a mistake. It ended up being so shiny it looked like a pair of patent leather shoes. It was WAYYY to shiny. I still didn't want to do flat. So what I did was I intentionally contaminated the surface of the housings with alcohol. I only waited until it flashed off then sprayed them. This caused the new layer of paint to wrinkle a bit. it wrinkled evenly across the entire housing so it looks like the chrome textured area on the bezel that goes inside the headlamps. This toned down on the shiny by quite a bit. It looks really good.. I will post some photos in a few days.
 

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #43 ·
OK so I am now onto the second headlamp. I am in the process of extending the housing. This one is going to move along a lot faster. I started working on it around 3:pM today and have maybe 3 hours into it so far. I am almost done with the temporary extension of the housing. I will then fill it with Bondo to make a mold. do some adjustment and cleanup on the mold and then I vacuum form the final piece and weld it into the housing.

I have been fighting with the software that is going to run each headlamp. I have 110K of ram to work with and I can probably get it to work if I compile my code into the operating system. doing that is going to use less memory for my program but I will not be able to update the program using WiFi, I would have to do it via USB. So I ordered up a new processor for each headlamp. Same setup just more memory 4096K of ram instead of 110K. That is going to solve my memory issues. I decided to scrap using a screen and having buttons on the housing for adjusting the position of the lights. I coded up a web GUI for it instead. connect using WiFi from a cell phone or laptop and make the adjustments. The angles of the bulbs can also be viewed real time as well. and also the pitch and roll of the car..

In order to simplify things I wrote a DHCP server program so all that is going to need to be done is to connect to the WiFi. no need to dink about with IP settings. I am probably going to code up a rudimentary DNS server as well so a nice friendly name can be used to access the GUI webpage.
 

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #44 ·
OK so I did a test fit of the housings and made some small adjustments. I am waiting on a dc to dc step down (power supply) and some 3 volt relays. I started the wiring on one of the lamps and have the servos mounted and the projectors installed. I wired up the projectors last night so I will be testing them today to see what the lights look like. I am racking my brain to come up with a design for a DRL/Switchback turn signal. I know I am going to mount some LED's at the very back of the lens where there is a pattern, these will be for turn signals so big a$$ SUV's will be able to see that my turn signal is on if they are right next to me.

I have a bunch of 1/2" plexiglass that I am going to use to make a diffuser for the switch back DRL's. I may have to add a second CAN interface to talk to the low speed network in order to turn on the low beams. The low beams and the DRL lights on the solstice are the same circuit and I need to be able to separate the 2.

I will post some photos of the one housing when I get the lights in it fired up for testing.
 

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #45 ·
Well I just lit up the first housing. The high/low works perfect, both HIDs are lit up all the time, what I did was for the dedicated high beam I made the shade larger to cover the entire beam. So the dedicated high has a glow to it so it lights up the shroud. When I turn the high beam on the shades in both the low beam and the high beam drop giving me 2 high beams in each lamp assembly. once I add in the 6000 lumen worth of fog lights to the 4400 lumen per HID that will be a total of 23,600 lumen. Those sphincter spelunkers that have the pickup trucks with the "all on" module added and the light bar are going to get a taste of what bright is.

The stock headlights put out about 1200 lumen. so I think the jump to 8800 lumen is pretty decent. Most HIDs are 35 watt and produce about 2400 lumen. I have 2 55 watt projectors in each housing putting out 4400 lumen per projector.
 

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #46 ·
OK, So I m almost done wiring up the first headlamp housing. I used all stainless steel socket cap screws, washers and nuts to tie down the modules, I used brass computer standoffs under the modules. This is a dry run and so i can test everything. I will have to remove it all and make a second set for the other headlamp. I also have to do the finish work on it and get the cosmetics looking good.

The modules seen

bottom left lower: MCP2515 CAN interface
bottom left upper: ESP32 WROVER micro controller; 2 cores @ 240mHz, 4mb of RAM, Blueteeth and WiFi
top left upper: MPU9250 9 DOF (9 axis) position sensor, consists of a MPU6500 6 axis sensor (3 axis accelerometer, 3 axis gyroscope) and a AK8963 sensor (3 axis magnetometer)
top left lower: PCA9685 16 channel PWM servo interface
top right: self built power distribution with power interrupt relay
top center upper: 5 amp DC to DC step down
top center lower: self built voltage dividers (step down) for ignition, low beam/drl, high beam and turn signal

I am using SPI and I2C communications protocols to handle talking to the interfaces

It has been a real challenge getting everything to fit. I couldn't make the housing much larger because it would come into contact with the fender liner. This has been a real task getting the projectors to move without hitting each other and keeping the space as small as possible with offering the most range of motion.

headlamp.jpg
112024
112025
 
  • Like
Reactions: shabby

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #48 ·
I forgot to mention that I still have to squeeze in the led strip and diffuser for the sequential switchback DRL/turn signal. I don't care for the halo/angel eye look to much and it would also increase the size of the projectors by adding them. I am going to run a strip of LED's along the front edge of the housing with a diffuser made from plexiglass on top of them. the diffuser is going to have notches in it that I will polish up so they glow differently. I am planning on having the notches tilted at the top to the outside of the the car and they will get further apart as they get closer to the middle of the car.

I have to track down some small heat sinks that I am going to have to have attached to the back side of the LED strip and comes out the bottom of the housing. I need to have the heat sinks so I don't fry the LED's when I set them to full bright white for the DRL's during the day. At night I am only going to have it at 75% brightness or lower depending on how it looks.
 

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #49 ·
@shabby

It's a lot of engineering and a lot of research. I could have gotten the mechanicals to b even smaller had I designed and built the servos from scratch. This would have been a large undertaking for a single person to get done and tested. The largest problem is lens wobble. Because of how the solstice lenses are I am only able to secure the projectors from the bottom. In a vehicle designed with adaptive/active headlamps the projectors are attached above and below. If I had the ability to do that I could have used a potentiometer for position and used a micro stepper motor to turn a screw that had a finger that stuck up into the bottom of the projector. so as the screw turned the finger would move causing the projector to turn. and the tilting would have been a matter of using the same kind of an idea except the screw would tilt a platform that everything was sitting on

To get everything lined up properly and so it wouldn't bind or have excessive wear over a short period of time would be hard for me to do. I do not have a CNC machine or a water jet cutting machine. These are the things that would be needed to be able to design something like that from the ground up.

I did manage to get rid of the wobble in the projectors by using bolts springs and flat washers to make friction points that also help to stabilize. The x axis wobble took me a while to come up with a solution for. This was also where the wobble was the worst. How I got rid of the wobble was by making a larger area that the y axis servo and project sat on. so instead of the mount point being the small spline coming out of the top of the servo it actually now rests against an aluminum "deck" that covers the entire bottom of the housing.


You can see from this photo There is also a large amount of up/down range of motion as well. You can also see that aluminum "deck".
112026



Here is that aluminum deck. under the deck are the 2 servos that control the left/right movement. The spline that sticks up out of the top of the servo sticks into holes drilled in the deck. There is what is called a servo horn that slides on top of the spline and provides a place to attached whatever it is you are wanting to move. Servo horns are usually a plastic arm or a plastic star. I tracked down servo horns that are a complete circle and they are also machined aluminum instead of plastic. The deck is sandwiched between the servo horn and the top of the servo. This increases the mount point from 5mm's to about 20mm's. it also removes lateral stress from the spline and the gearing inside of the servo. I used a thin nylon washer between the horn and the deck as a slide bearing.

112027

The black brackets on the sides that go up to the projectors have covers that go over them made from aluminum. it gives a nice finished look. I used 1/8" thick aluminum to do this so the socket cap screws are recessed into the aluminum. It looks real nice when they are attached. The appearance of all of the mechanicals when finished is going to be 2 tone, mirror polished aluminum and black. well... and the stainless steel fasteners some of them I am going to spray with black epoxy.



This shows you how large the deck is. It adds a nice finished look to the bottom of the housing. I used 1/8" thick aluminum and the deck is 3" wide so it's super rigid and not going to allow the projectors to wobble at all.
112028
 
  • Like
Reactions: shabby

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #50 ·
I am using a cordless drill to drill holes, that is the only power tool I have used to build these things.. well that and a vacuum cleaner. everything else has been files, hacksaws and screwdrivers. Even the polishing of the aluminum is done by hand. Wet sanding using these grits 220, 320, 400, 800, 1000, 1500, 2000, 2500, and 3000; and then hand rubbing a paste made from Barkeepers friend and water as the "cutter" to finish out the polishing.

In the photos they look like crap because I have scratched some of them and also because there is dust and fingerprints all over everything. I will be polishing and then taping everything before I do the final assembly. when everything is assembled I will remove the tape.

I still have to drill the access hole in the back of the housing. I haven't come up with an air tight cap solution yet. Any thoughts on this would be really helpful. The opening needs to be large enough to get the bulbs out. I will have a positioning routing that will move each projector into a position where it is going to be closest to the opening. The projectors are an H11 style, so they have the wire spring flip deal that has to come out before the bulb is able to come out. The largest diameter opening I can make is 3" and that still leaves a little bit of an edge for a seal.
 

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #52 ·
OK so an update. The left/right level of the aluminum deck is too far off for my liking so I am going to cut the bottom of the housing out and lower the side that is closest to the middle of the car. It is hard to get a point of reference for me to mark out what the position of the headlamp is when it is installed into the vehicle. I think I am going o have to break out the laser level and shoot both headlamps and mark where level is from left to right. The front to back is not that far off and I can adjust it using spacers.

I am going to tack weld the new bottom in place so I can reposition it if I need to.
 

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #53 · (Edited)
Another update.

I had to order a couple of things I expect to get them tomorrow. I ran out of solder 😢, one of the things I am getting tomorrow. I also ordered 1/2 watt 1% tolerance resistors. I have 1/4 watt 5% but I wanted larger leads on them and also the better tolerance. I am using the resistors to make voltage dividers to drop 14 volts for the ignition, turn signal, parking light, high beam and low beam down to < 3.6v. 3.6v is the maximum input tolerance on the processor. using a 330 ohm resistor and a 100 ohm resistor it drops 15v down to 3.488v so within the tolerance.

Call me anal but I had to order more brass standoffs because I didn't want to stack them. I only want to use one standoff per spot...

I also ordered the butyl rubber rope to seal the lenses up.

The housings for both sides are finished, I do have to say they look really good. Better then what I thought they would come out like. It has taken me 5 months and many "versions" to get the right shape. There is one modification to the car that had to be done. The metal bar that crosses under the headlight assembly and attaches to the bumper cover had to be cut. I put 2 cuts in the metal and folded it over. The housings themselves sits right on top of that bar, the servos that come out of the bottom are what was hitting it. I am actually happy that I managed to get it to fit with that being the only modification to the car that needed to be done.

All of the mechanical components are done. I have 4 pieces to make that are for "dress up". I do have to shoot a couple of the pieces with black paint, not to big a deal to do...

I am in the process of designing and building one of the PCB's. This board is going to handle the conversion of the voltages between the car and the electronics. it is also going to handle turning on and off the HID's , parking lights, turn signals and the high beam shutters.

Here is a 3D rendering of the boards. the relays are not shown in this rendering.
112789




And here are some photos of one of the housings. The photos really don't do any justice.

112785
112786


112787


112788


I still have to put the wiring in. I haven't decided on what I am going to use to hold the wiring in place. I still have to get the lid for the access hole ordered and also build the mounts for the HID ballasts.

I already have the side markers already done. I put 11 individually addressable LED's in each one. They are going to be combination parking lights and turn signals. I still have to come up with a plan for adding turn signals inside the housings. There is a place along the bottom edge that I am thinking of using for the placement of the turn signals. I will have to make some kind of a lens for them to diffuse the light. I have some 1/2" plexiglass that I could use to do this. I have to check but I think this place might be below the bumper cover which would be fantastic if it is then I can make the lens so it is a really thin line that shows above the bumper cover. The headlight lens also has the texture along the outside edge of it and the turn signal lights should light that up as well.

The turn signals are going to be switchback sequential style. So they will be DRL's when the parking lights are off, and parking lights when they are on and turn signals well when I want to turn.
 
  • Like
Reactions: shabby and HHGadget

·
Premium Member
2008 Pontiac Solstice GXP - Mysterious
Joined
·
678 Posts
Looking amazing KG.
Love to see a photo of the cut on the support bar you had to make.
I don’t have remotely that kind of fearlessness to cut into the car. Kudos to you sir.
 

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #55 ·
It is the support for the fender liner and the side of the bumper cover. The thing is enormous and I put 2 cuts in it about 1.5" and folded the metal over. When you open the hood you can see it easily. The wiring harness for the turn signal/fog light is clipped to the top of it. It is the top that I cut and folded over. I am going to cut the piece I folded over off and I am going to bolt in a piece of L channel to add the strength back into it.

The piece I cut is #16, just the top where it is flat. That is there to keep the metal from twisting easily so If I bolt in a piece of 1" x 1" x 1/8" aluminum L channel about 1" below it that will keep it from twisting easily. That bracket is pretty thin metal.

112790


I'll snap some photos of it tomorrow showing how I cut it and also with the L channel bolted in place.

It's also not a fearless thing. Trust you me I spent some time looking it over and figuring out what needed to be done and how to add the support back into it. Even tho the L channel is going to be aluminum and it is at least 2 times thicker, I think it is closer to 2.5 times thicker. The general rule of thumb is aluminum has to be 1.5 times the thickness of the steel it is replacing, so the strength of the piece of aluminum I am replacing the steel with is not going to be a problem. With steel being 2.5 times heavier then aluminum there is going to be a small weight increase, couple of ounces maybe.

I still have to order the matching clips for the headlights and also for the turn signals/fog lights. I am going to see if I can track down the part numbers for the clips, pins and seals right now.
 

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #56 ·
Damned connectors and pins are out of stock everywhere. I was going to use the same 4 pin connector for other wiring but I changed my mind.

I did order the male h13 connectors and also the female pins for the 4 pin connectors. I figured I could reuse the original connector.

I also ordered 2 of these
112791


This is going to be a nice connection to the housing and all of the wires will be done up nice and neat. That connector will support wire sized from 12 AWG to 20 AWG. There is going to be quite a bit of wiring for each headlamp.

1 - 12V: in
2 - ground: in
3 - 12v HID ballast 1: out
4 - ground HID ballast 1: out
5 - 12v HID ballast 2: out
6 - ground HID ballast 2: out
7 - high beam: in
8 - low beam: in
9 - turn signal: in
10 - parking lights: in
11 - ignition: in
12 - 5v marker lights: out
13 - ground marker lights: out
14 - data marker lights: out
15 - sync marker lights: out
16 - HSCAN high: in
17 - HSCAN low: in
18 - HID bulb 1 +: in
19 - HID bulb 1 -: in
20 - HID bulb 2 +: in
21 - HID bulb 2 -: in

This will make it so that the cover for the access to the bulbs is not going to need to have any wires sticking out of it. This is going to make it a whole lot easier to get to the bulbs. The headlights have WiFi built in, so I wrote a web server for it that will provide an administrative page. This page will show current angle and it will also allow the user to adjust the position of the beams. It also shows the temperature inside of the housing and if any errors have happened. I also coded in a bulb change position so I can tell it what bulb I need to replace and it will position the back of that projector so it can be accessed easier through the access hole in the back of the housing.

As much as I wanted to mount the ballasts for the HID's on the outside of the housing I am not going to be able to. I want to route all of the wiring through that 22 pin connector so the headlights can be removed easily. If I have the ballast wiring going through that connector and then attached to the housing I would have to take the ballasts off the housings before taking the headlight out. I have extension cables for the bulb to ballast connections so I shouldn't have an issue mounting the ballasts down between the bumper cover and the wheel well liner. I will check out how I am going to mount the ballasts later today.
 

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #57 ·
I am going to have a jolly good time cracking open the under hood fuse box to add 2 fuses in it. I need to add a fuse for each headlamp. I would jumper across the existing high beam and low beam relays but then I would have to add 2 relays to flip the polarity of the trigger coming from the BCM, I would want the relays in the fuse box so it really wouldn't save me any work anywho. So may as well leave the existing relays in place and add the fuses for the 12 volt feeds to each headlamp. I have to double check to see what the current draw is on the ballasts, then I have to order up some PET loom, a couple more rolls of tape, proper size wire and some crimp connectors to glue into the fuse box for the fuses to make contact with. I may not glue the connector into place is I have the same plastic in a rod. If I have the correct plastic I will weld closed the underside where I push the connector into place. This would hold the connector better then using glue.

I have to figure out how I can get rid of heat generated by the LED's. The inside of the housing is going to be hot when the headlights are on so I need to figure out a way of transferring as much heat from the LEDs as possible to the outside of the housing. I am thinking of 1/20" thick aluminum strip that I can attach the LEDs to and have a screw under each pixel (4 LEDs) that goes through the housing and into a heat sink mounted on the outside. I would have to get aluminum flat head screws so the thermal bridge will be as best as it can get. There is going to be 28 pixels in each housing so a total of 112 LEDs.

I am gonna need a bigger power supply in each headlamp. 5 amps is not gonna cut it. Each servo has a max current draw of 1 amp @ 5volts. I figure that they are going to draw about 0.5 amps max per servo. and 1 amp for the rest of the electronics excluding the LED's so that puts me at 3 amps. Each LED is rated at 20 milliamps and there are 4 leds to each pixel and there are 28 pixels in the housing plus 11 in the side marker. The most I will be lighting each led up is 78% of it's maximum. So that brings the current draw down to 15.6 milliamps per LED, 62.75 milliamps per pixel totaling 2.477 amps @ 5 volts. That is still actually higher then what would be drawn. Only the 28 LEDs would actually be lit up like that, so the draw would be 1.68 amps... This puts be right on the line with my power supply. I know I am over estimating the draw from the electronics, it should be closer to half an amp. It is still pushing that power supply pretty hard, I will have to wait and see how much the voltage drops out of the thing. as long as it stays above 3.9 volts everything should work. The servos will move slower but that wouldn't be such a bad thing considering they can move something like 60° in 0.16 seconds.
 

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #58 ·
OK so I have the wiring all ordered up and the loom and tie downs for inside the lights. I have to take a look at the relays I got to see if they can handle the inrush from the HID's turning on. The hard part is going to be locating a high current relay that has a 3.3 volt trigger. I might have to go solid state relays which is gonna be expensive.
 

·
Registered
2008 Pontiac Solstice GXP
Joined
·
2,768 Posts
Discussion Starter · #59 ·
Here is the revised version of the PCB I have to make. I went with larger relays, ones that can handle 10 amps each. I also add an additional relay to each board so now each ballast has it's own dedicated relay the shutters in the projectors (high beam) has a relay and a relay for powering down everything when the car is turned off. Everything gets powered down except for the processor and that goes into an ultra deep sleep mode where only the headlights, parking lights, hazards and ignition will wake the processor up. The only time the rest of the boards get power is when ignition is provided.

112800
 
41 - 60 of 97 Posts
Top