Jump to content

ClayM

Members
  • Posts

    146
  • Joined

  • Last visited

Personal Information

  • Location
    Vancouver, Canada

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Thanks Ian. Would not been able to do these things without your help, guidance and patience. Good luck Sir Clay
  2. Congrats John! I know how much work is required to get to where you are. Thanks for helping others while knee deep in your own projects. Don't stop now! Thanks for everything Clay
  3. Welcome back RK! Keep posting those updates. I still need seat arm switch also so looking forward to seeing your solution. I guess the key is to get the pivot point right so the linkage goes over center to hold it in the up position if you use a setup like Hans is suggesting. I was thinking of using a ball detent in some way but i think every thing would have to be fairly precise to get nice action. Maybe larger ball/softer spring would be better..... @ Hans Can you please post pics of your setup in the up position also? Those parts look like the real deal!! Thanks Clay
  4. Ian Can you please explain cabling requirements. Can we just use any two conductor cable for "a" and "b" lines? or should we use shielded twisted pair? if so, should we ground the shield or is it not required? What would be the most reliable/stable method to use? Thanks Clay
  5. Ian Thank you for this. Max485s going in garbage. Max487s on order. Hard to find a reason to use them now. Not worth the effort in my opinion! Thanks for making it simple. Clay
  6. Nice job on CDU Patriot! I don't think I have ever been happy with the first versions of any my panels. I think my current CMSP panel is version 6. I think your CDU looks great. I find it very hard to decided on font sizes and location until I can see the finished product and decide on what to change. Sometimes I end up changing something and it looks worse! Can you tell me what material you used for the buttons? The backlighting looks great! and PCB! Clay
  7. Thanks for the help guys! Patriot This is fantastic! Thanks! I have spent many hours trying move traces around for this PCB. Thankfully there are people here that are smarter then I am:thumbup: I think I understand your code but one question I have is did you calculate the analog input values that you use in your code or just trial and error? John and Hans Thanks for the info! I'm going to order a few of each. See how it goes. Clay
  8. Great start to MFD there. Looking forward to seeing it complete one day! I have tried to design the pcb for left mfd myself. I am using 27" monitor so I want connections on left mfd coming out of left side and opposite for the right. so two different pcbs. with encoder at bottom left it reduces number of traces i can fit in that corner so for the left mfd there are too many traces to fit in top right corner. I was thinking of trying to put a small smd multiplexer in top left corner between the rocker switch and button 1. Looks like your using individual screens so solves that problem. Heres pic of my pcb so far. If you had any advice I would greatly appreciate it. And good luck with the rest of your build! Your building great stuff! I'm always watching for your updates. Clay
  9. Laz Sorry for the late reply! I have been busy making pcb's and panels! If you are like me and don't want to spend 3 or 4 thousand dollars on a cnc just for pit building then I think 3040 is great. Mine does great on PCB and Panels. Requires a little fine tuning and adjustment. I have 1047 M3's on mine! (M3 is Gcode command for spindle start). Most of those are probably just small tests though.... My opinion is, for under $1000, its good. problems i found where bad assembly by factory. like loose backlash nuts and misaligned gantry. also the bed is not flat. These problems are easily fixed and because it is a fairly small machine the rigidity is ok. I would buy again. My bench! love the Hakko!!
  10. Very impressive John! ( I know I have said before....but WOW!) Your work always pushes me to keep going. Looking forward to see some code for that beast. Good luck and hope to see it in action soon. Clay P.S. Lets get some accurate MFDs going next!!
  11. pitbldr Thanks very much for the info! Bad news for me. Looks like I made my indicators too high so my panel is one unit too high! Looks like its back to the drawing board...... Thanks again for dimensions! Clay
  12. Thanks Ian! Changed sketch to include void setup() DcsBios::setup(); //use only one of the following memset lines uncomment your choice //use this line to set all indicators to on at power up //memset(max7219_rows, 0xff, sizeof(max7219_rows)); //use this line to set all indicators to off at power up memset(max7219_rows, 0x00, sizeof(max7219_rows)); lc.shutdown(0,false); //turn on the display lc.setIntensity(0,15);//set the brightness lc.clearDisplay(0); //clear rthe display and get ready for new data } I agree that all on at power up can be useful. For taking pictures! And confirmed all works as intended! Thanks I posted a pic at pitbldrs thread. His recently posted dimensions means my panel is wrong. His thread has great info for CLP!
  13. I'm a bit confused by my latest project. I have built a new caution light panel to replace my old version. It took a couple of months so I don't recall if my old CLP had the same behavior but now as soon I power up the arduino all the LEDs default to ON. Once I start a mission everything works perfectly. I don't remember my old panel doing this and I thought i was using the same sketch (but I have been wrong before!). Here's the sketch (Ian's work. I do not take any credit) #define DCSBIOS_IRQ_SERIAL #include <LedControl.h> #include <DcsBios.h> //pin 10 is connected to the DataIn //pin 11 is connected to the CLK //pin 12 is connected to LOAD LedControl lc=LedControl(12,11,10,1);//DIN,CLK,LOAD,# OF IC's DcsBios::ProtocolParser parser; void loop() { DcsBios::loop(); unsigned char cl_row_map[48] = { 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5 }; #define SEG_DP (1<<7) #define SEG_A (1<<6) #define SEG_B (1<<5) #define SEG_C (1<<4) #define SEG_D (1<<3) #define SEG_E (1<<2) #define SEG_F (1<<1) #define SEG_G (1<<0) unsigned char cl_mask_map[48]= { SEG_DP, SEG_B, SEG_D, SEG_F, SEG_DP, SEG_B, SEG_D, SEG_F, SEG_DP, SEG_B, SEG_D, SEG_F, SEG_DP, SEG_B, SEG_D, SEG_F, SEG_DP, SEG_B, SEG_D, SEG_F, SEG_DP, SEG_B, SEG_D, SEG_F, SEG_A, SEG_C, SEG_E, SEG_G, SEG_A, SEG_C, SEG_E, SEG_G, SEG_A, SEG_C, SEG_E, SEG_G, SEG_A, SEG_C, SEG_E, SEG_G, SEG_A, SEG_C, SEG_E, SEG_G, SEG_A, SEG_C, SEG_E, SEG_G }; unsigned char max7219_rows[8]; void setup() DcsBios::setup(); memset(max7219_rows, 0xff, sizeof(max7219_rows)); lc.shutdown(0,false); //turn on the display lc.setIntensity(0,15);//set the brightness lc.clearDisplay(0); //clear rthe display and get ready for new data } void updateCautionLights(unsigned int address, unsigned int data) { unsigned char clp_row = (address - 0x10d4) * 2; unsigned char start_index = clp_row * 4; unsigned char column = 0; unsigned char i; bool is_on; for (i=0; i<16; i++) { is_on = data & 0x01; // set caution light state (clp_row, column, is_on) if (is_on) { max7219_rows[cl_row_map[start_index+i]] |= cl_mask_map[start_index+i]; } else { max7219_rows[cl_row_map[start_index+i]] &= ~(cl_mask_map[start_index+i]); } data >>= 1; column++; if (column == 4) { clp_row++; column = 0; } } } void onDcsBiosWrite(unsigned int address, unsigned int data) { if (address >= 0x10d4 && address <= 0x10d8) { updateCautionLights(address, data); } if (address == 0xfffe) { // update MAX7219 unsigned char i; for (i=0; i<8; i++) { lc.setRow(0, i, max7219_rows[i]); } } } I have read the MAX7219 datasheet and the only thing I came up with was changing lc.clearDisplay to 1 which,in the end, made no difference. Is there a way to make leds default to off on power up? Thanks!
  14. +1 on that! Looks great RK! Keep it up! ClayM
  15. Thanks Brewnix! @DM Really?? your statement "I am not really sure what your point it or how it is a reply to previous post." Now you know why you get no feedback. I should have known better.:doh:
×
×
  • Create New...