GithubHelp home page GithubHelp logo

Comments (14)

schmttc avatar schmttc commented on August 20, 2024 1

Yeah I'm not sure what's going on, I'll wait on other's feedback to see if there's any issues.

from easythreed-k7-stm32.

schmttc avatar schmttc commented on August 20, 2024

STM32 needs an SD card to use as EEPROM, but in this case it look like the SD card isn't being mounted on first boot.
If you insert the SD card, issue "M21" and then issue "M500" does it work?

from easythreed-k7-stm32.

real-artswan avatar real-artswan commented on August 20, 2024

I see, didn't know that it needs SD, haven't noticed that on the original firmware, by the way thanks for firmware. Printer seems work better (at least subjectively;).
Can you tell, does it read EEPROM on mounting SD or on boot only?

from easythreed-k7-stm32.

schmttc avatar schmttc commented on August 20, 2024

The original firmware was based on Marlin 1, I guess there have been some changes.
I've just had a look and I think the SD card detection pin is set wrong, in Marlin/configuration_adv.h can you change 'SD_DETECT_STATE' to 'LOW' and let me know if the SD card works on boot?

#define SD_DETECT_STATE LOW

from easythreed-k7-stm32.

real-artswan avatar real-artswan commented on August 20, 2024

You're right EEPROM doesn't work without that fix, must be #define SD_DETECT_STATE LOW.
Then M500 works as expected, it stores into file EEPROM.DAT. By the way inserting SD resets board and reads EEPROM

from easythreed-k7-stm32.

real-artswan avatar real-artswan commented on August 20, 2024

#6
by the way, extracting/inserting SD card when a printer is turned on brakes the card somehow so printer can't see it. The card need to be formatted in this case and don't forget to save and copy eeprom file back.

from easythreed-k7-stm32.

kossnikita avatar kossnikita commented on August 20, 2024

Actually, ET4000+ has I2C EEPROM. You have to activate it in config

#define IIC_BL24CXX_EEPROM
#define IIC_EEPROM_SDA                  PB7
#define IIC_EEPROM_SCL                  PB6
#define MARLIN_EEPROM_SIZE             0x800  // 2K (24C16)

from easythreed-k7-stm32.

schmttc avatar schmttc commented on August 20, 2024

Actually, ET4000+ has I2C EEPROM. You have to activate it in config

#define IIC_BL24CXX_EEPROM
#define IIC_EEPROM_SDA                  PB7
#define IIC_EEPROM_SCL                  PB6
#define MARLIN_EEPROM_SIZE             0x800  // 2K (24C16)

Thanks, that's great! I'll add it in when I get a chance to test.

from easythreed-k7-stm32.

schmttc avatar schmttc commented on August 20, 2024

Reopening because I haven't implemented EEPROM yet, and it's come up again in #10 (comment)

from easythreed-k7-stm32.

schmttc avatar schmttc commented on August 20, 2024

Actually, ET4000+ has I2C EEPROM. You have to activate it in config

#define IIC_BL24CXX_EEPROM
#define IIC_EEPROM_SDA                  PB7
#define IIC_EEPROM_SCL                  PB6
#define MARLIN_EEPROM_SIZE             0x800  // 2K (24C16)

Thanks, that's great! I'll add it in when I get a chance to test.

Adding this code to pins_MKS_ROBIN_LITE.h results in an error:

14:02:46.223 : echo:Error writing to EEPROM!
14:02:46.239 : echo:Error writing to EEPROM!
14:02:46.245 : echo:Error writing to EEPROM!
14:02:46.261 : echo:Error writing to EEPROM!
14:02:46.277 : echo:Error writing to EEPROM!
14:02:46.292 : echo:Error writing to EEPROM!
14:02:46.292 : echo:Error writing to EEPROM!
14:02:46.308 : echo:Error writing to EEPROM!
14:02:46.323 : echo:Error writing to EEPROM!
14:02:46.346 : echo:Error writing to EEPROM!
14:02:46.346 : echo:Error writing to EEPROM!
14:02:46.361 : echo:Error writing to EEPROM!
14:02:46.377 : echo:Error writing to EEPROM!
14:02:46.393 : echo:Error writing to EEPROM!
14:02:46.408 : echo:Error writing to EEPROM!
14:02:46.424 : echo:Error writing to EEPROM!
14:02:46.440 : echo:Error writing to EEPROM!
14:02:46.446 : echo:Error writing to EEPROM!
14:02:46.462 : echo:Error writing to EEPROM!
14:02:46.477 : echo:Error writing to EEPROM!
14:02:46.493 : echo:Error writing to EEPROM!
14:02:46.493 : echo:Error writing to EEPROM!
14:02:46.509 : echo:Error writing to EEPROM!
14:02:46.524 : echo:Error writing to EEPROM!
14:02:46.546 : echo:Error writing to EEPROM!
14:02:46.546 : echo:Error writing to EEPROM!
14:02:46.562 : echo:Error writing to EEPROM!
14:02:46.578 : echo:Error writing to EEPROM!
14:02:46.593 : echo:Error writing to EEPROM!
14:02:46.609 : echo:Error writing to EEPROM!
14:02:46.625 : echo:Error writing to EEPROM!
14:02:46.640 : echo:Error writing to EEPROM!
14:02:46.647 : echo:Error writing to EEPROM!
14:02:46.662 : echo:Error writing to EEPROM!
14:02:46.678 : echo:Error writing to EEPROM!
14:02:46.678 : echo:Error writing to EEPROM!
14:02:46.694 : echo:Error writing to EEPROM!
14:02:46.709 : echo:Error writing to EEPROM!
14:02:46.725 : echo:Error writing to EEPROM!
14:02:46.747 : echo:Error writing to EEPROM!
14:02:46.747 : echo:Error writing to EEPROM!
14:02:46.762 : echo:Error writing to EEPROM!
14:02:46.778 : echo:Error writing to EEPROM!
14:02:46.794 : echo:Error writing to EEPROM!
14:02:46.809 : echo:Error writing to EEPROM!
14:02:46.825 : echo:Error writing to EEPROM!
14:02:46.825 : echo:Error writing to EEPROM!
14:02:46.847 : echo:Error writing to EEPROM!
14:02:46.863 : echo:Error writing to EEPROM!
14:02:46.878 : echo:Error writing to EEPROM!
14:02:46.894 : echo:Error writing to EEPROM!
14:02:46.894 : echo:Error writing to EEPROM!
14:02:46.909 : echo:Error writing to EEPROM!
14:02:46.925 : echo:Error writing to EEPROM!
14:02:46.947 : echo:Error writing to EEPROM!
14:02:46.947 : echo:Error writing to EEPROM!
14:02:46.963 : echo:Error writing to EEPROM!
14:02:46.979 : echo:Error writing to EEPROM!
14:02:46.994 : echo:Error writing to EEPROM!
14:02:47.010 : echo:Error writing to EEPROM!
14:02:47.025 : echo:Error writing to EEPROM!
14:02:47.041 : echo:Error writing to EEPROM!
14:02:47.048 : echo:Error writing to EEPROM!
14:02:47.063 : echo:Error writing to EEPROM!
14:02:47.079 : echo:Error writing to EEPROM!
14:02:47.094 : echo:Error writing to EEPROM!
14:02:47.094 : echo:Error writing to EEPROM!
14:02:47.110 : echo:Error writing to EEPROM!
14:02:47.126 : echo:Error writing to EEPROM!
14:02:47.148 : echo:Error writing to EEPROM!
14:02:47.148 : echo:Error writing to EEPROM!
14:02:47.163 : echo:Error writing to EEPROM!
14:02:47.179 : echo:Error writing to EEPROM!
14:02:47.195 : echo:Error writing to EEPROM!
14:02:47.210 : echo:Error writing to EEPROM!
14:02:47.226 : echo:Error writing to EEPROM!
14:02:47.226 : echo:Settings Stored (6 bytes; crc 39375)
14:02:47.226 : Error:EEPROM datasize error.

from easythreed-k7-stm32.

kossnikita avatar kossnikita commented on August 20, 2024

Do you have an oscilloscope or logic analyzer? I would like to know if there is at least some signal on the eeprom chip.

Unfortunately I no longer have this board. So I can't debug from my side. But I still had the Marlin project, which worked.

pins_MKS_ROBIN_LITE.h

#if ANY(NO_EEPROM_SELECTED, I2C_EEPROM)
  #define IIC_BL24CXX_EEPROM              
  #define IIC_EEPROM_SDA                  PB7
  #define IIC_EEPROM_SCL                  PB6
  #define MARLIN_EEPROM_SIZE             0x800  // 2K (24C16)

  #undef NO_EEPROM_SELECTED
#endif

from easythreed-k7-stm32.

schmttc avatar schmttc commented on August 20, 2024

No scope, but after some playing around I have found the following code works for me

#if NO_EEPROM_SELECTED
  #define I2C_EEPROM                              // AT24Cxx
  #define MARLIN_EEPROM_SIZE              0x800  // 2K (24C16)
#endif

from easythreed-k7-stm32.

schmttc avatar schmttc commented on August 20, 2024

Resolved by #17

from easythreed-k7-stm32.

kossnikita avatar kossnikita commented on August 20, 2024

Pretty weird. I'm sure I2C_EEPROM didn't work for me.

from easythreed-k7-stm32.

Related Issues (13)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.