Shop OBEX P1 Docs P2 Docs Learn Events
Cannot program to eeprom. - Page 2 — Parallax Forums

Cannot program to eeprom.

2»

Comments

  • alatnetalatnet Posts: 80
    edited 2019-01-12 14:27
    Let me show you thing 1:
    JPEG-20180405-122735.jpg
    JPEG-20180405-122757.jpg

    This thing is an arduino powered LED system for an RGBW 1W LED used for 3D tracking of my PSVR for a homebrew PC VR setup.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2019-01-12 14:51
    Yeah! What are all those bulky TO220s for if it is only 1W :)

    Anyway, that's the idea but if they were tinned and plated through double-sided it would be a lot stronger mechanically. See also how that hookup wire is messy because not only is it too heavy but the insulation also melts back. The Kynar wire (wirewrap) is plated so it just wants to solder whenever a soldering iron is anywhere near it, and the insulation doesn't melt either.


    There's a trick to stripping any kind of wire, including this thin Kynar wire and that is to use the flat back side of the side cutters as the leading edge as you gently nick the wire and strip. The flat edge tends to push the insulation off rather than sliding over which is what I see everyone do when they run the V side in the direction of the strip and end up stretching the insulation too. Don't forget to let your middle finger sit between the handles to control the tension.
  • alatnetalatnet Posts: 80
    edited 2019-01-13 13:22
    Those to220's are for pwm control over the LEDs.
    I didn't get logic level ones cus I didn't know but they work pretty well nonetheless.

    Edit: Correction, they are mosfets. Still not logic level though...
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2019-01-13 20:54
    If they are not logic level then they probably won't turn on fully from 3.3V, and certainly not fast due to the gate capacitance, so not only does it have higher resistance, but it also won't switch cleaning because it has a slow turn-on/off. If you find logic level devices you probably find that you can use tiny dual MOSFETs in 8-pin packs and they wouldn't even get warm or anything.

    In fact even tiny NPN transistors would probably work very well too and while you may need more current to drive them which the Prop can deliver, they will also switch cleanly even at higher PWM frequencies. When you only need to switch an amp or less, then always consider BJTs as an option. Most NPNs have very high gain and low Vce(sat) even at these currents, and even the through-hole TO92 is a lot smaller than those TO220s. I think I used to use BC337s but 2N2222s should work well too. You can even pick up 50 of them for around $1.. Just use 220r for the base.
  • Well, that board uses an arduino nano to have it work.
    The mosfets are IRFZ44N.
    While they arent logic level, they seem to work fine regardless and im able to dim the leds fine with them.
  • Got my 5Mhz crystals.
    SimpleIDE works correctly now.
  • I had also difficulties using the 24LC128 with a P8XA32 (I *did* want to order the 32KiB version, but only the 16KiB was in stock -- I thought, wth, my program won't be that large anyhow and if the boot loader reads in the same content twice, it won't matter). I couldn't get it to work. Looking at the I2C traffic with an oscilloscope it looked like the EEPROM was never written/always returned empty content. I won't admit publicly how long it too me to realize, that the IDE attempted to write 32KiB into a 16KiB EEPROM (and didn't notice that something was amiss). The latter half of my trivial test program (blinking LED) was of course empty ...
    Perhaps that could be made more clear (or better yet, the IDE made customizable for various sized EEPROMs) and a little hint added to the item in the store (#602-00013) ...
  • The lower 16K of your EEPROM will be overwritten by the upper (presumably blank) 16K of your upload, so your minimalist program will never exist in EEPROM.

    -Phil
  • The bootloader in mask ROM cannot be changed and always assumes it is a 32kB EEPROM and there is no way it can tell whether the EEPROM is smaller or larger either. The 32kB EEPROM matches the 32kB RAM from which it is first programmed and into which it loads into at reset. So IDEs cannot override the mask ROM.
    Besides 64kB EEPROMs have been fitted as standard for many years and smaller EEPROMs are harder to get and aren't much different in price. The 64kB (512kb) device I can pick up for 72 cents one off.
  • Cluso99Cluso99 Posts: 18,069
    edited 2019-07-15 03:53
    As others have said, the minimum supported is 32KB EEPROM. However, I have used smaller EEPROMs (8KB IIRC) but to use that, it is necessary to have your own program write to the EEPROM and this includes recalculating the checksum stored at $0005 IIRC.
    So, if you really want to use a smaller EEPROM then I suggest you look for the thread titled something like 25C32 EEPROM.

    BTW It is not the downloader program (PropTool, SimpleIDE, bst, etc) that actually performs the EEPROM write. They just command the prop's ROM code to copy the Hub RAM (32KB) into the EEPROM. The ROM code is fixed to copy the whole 32KB.
Sign In or Register to comment.