@glynhudson glynhudson released this Jun 1, 2018 · 10 commits to master since this release

Assets 5

Full change log:

20180523 SCL
- when RTC not defined, g++ bug pops out:
	open_evse:2384: error: unable to find a register to spill in class 'NO_REGS'
  -> add GPPBUGKLUDGE
	
D5.0.0 20180518 SCL
- implement $F1 RAPI command to simulate front panel short press
- SAFETY: don't allow $SC to raise current capacity during over temperature event
- SAFETY: SetCurrentCapacity() -> when nosave set, don't allow current capacity to be
	raised above EEPROM value
	-> don't allow $SC with V to raise current capacity above value in EEPROM
	-> don't allow PP to set current capacity higher than EEPROM
- PP code cleanup
- don't allow SetCurrentCapacity() to go above PP value
- implement over current protection. if OVERCURRENT_THRESHOLD is set,
	then if EV draws >= OVERCURRENT_THRESHOLD amps for >=
	OVERCURRENT_TIMEOUT ms -> hard fault

@glynhudson glynhudson released this Mar 18, 2018 · 80 commits to master since this release

Assets 3

@glynhudson glynhudson released this Apr 4, 2018 · 80 commits to master since this release

Assets 4
  • revert change from D4.12.0: delay timer would always wait for EV finish charging before ending.
    -> timer will go to sleep at end of specified time window unless charge or time limit set -> charge or time limit will still override timer end. Fixes lincomatic#85
  • cleanup of time/charge limit zeroing code: fix $ST bug couldn't set with all leading zeros lincomatic@03a689c

@glynhudson glynhudson released this Mar 8, 2018 · 90 commits to master since this release

Assets 3
  • Refresh LCD every 2min (required for EMC certification) to restore LCD after static discharge
  • Set L2 32A default
  • 32A Max

@glynhudson glynhudson released this Feb 10, 2018

Assets 4

Known bug with delay timer: lincomatic#85

  • Fixed in V4.13.0

D4.12.3 20180209 SCL

  • display HIGH TEMP and turn LCD red during over temp event and keep display that way until button press or EV disconnected. No change to display during overtemp panic, which causes hard fault lincomatic#81

D4.12.2 20180206 SCL

  • revamp time limit code to base on seconds instead of millis(). time limit
    fix in D4.12.1 was completely wrong. in existing code time limit was
    getting reset every time entering sleep state

D4.11.1 20180108 SCL

  • Use wdt_delay() instead of delay() when delay is > watchdog timer

D4.12.0 20180206 SCL

  • restructure skip limits code
  • don't allow RAPI to set charge/time limits when not allowed ($SH/$S3)
    -> return $NK if not allowed
  • add new clock icon for time limit 79a1357
  • delaytimer changes/fixes:
    fixes problems when delay timer enabled:
    a) press sleep button during timer charging session -> would not stay sleeping.. wakes up again instantly
    -> fixed: stays sleeping w/ timer temporarily disabled until end of timer awake interval or EV disconnected.. then timer re-enabled automatically
    b) wake up EVSE between timer sessions, set time or charge limit -> EVSE goes into READY state after EV disconnected
    -> fixed.. stays sleeping with timer enabled after EV disconnected
    c) timer is near end of charging session window.. plug in car, set time or charge limit which requires EV to charge beyond timer's charging session -> timer can kick in and stop charging even though charge/time limit not met
    -> fixed.. EVSE wont' stop charging until charge/time limit met. timer temporarily disabled until limit met or EV is unplugged
    code changes:
    1. don't save EVSE settings when enable/disable (why were we doing that???) - to save life of EEPROM
    2. don't save EVSE settings when setting start/end time (why were we doing that???) - to save life of EEPROM
    3. when timer enabled and manualoverride, don't wake from sleep after time/charge limit reched and EV disconnected
    4. don't CheckTime() in Enable() - superfluous
    5. if wake from sleep via short press, temporarily disable timer (ManualOverride) until EV disconnected or if short press back to sleep, enable timer again. while timer temporarily disabled, timer icon no longer shown on LCD
      -> lets charge start before normal timer start, and run until EV fully charged, even if timer stop time reached
      -> if already charging, short press sleep/wake allows charge to proceed past normal timer stop time. timer re-enabled at end of charging or EV disconnect
    6. if charge/time limit set or cancelled while timer enabled, timer temporarily disabled until limit reached or EV disconnected or short press sleep
    7. don't need skip SetLimitSleep() @ end of charge/time limit if timer turned on ... new code will automatically make it sleep again after wake when EV disconnected

See full change log

Assets 3
  • rewrite Gfi::SelfTest() so that it doesn't hang when the test pin has hardware failure lincomatic@220e5c8
  • clear elapsed charging time only when EV is disconnected and then reconnected (previously would reset every time charging stopped) lincomatic@ee0f1b3 fixes lincomatic#79
Assets 3
  • session energy counter is now reset and value saved to EEPROM when car is unplugged then re-plugged when charging timer is active lincomatic#76
  • Improve accuracy of energy counter lincomatic#77

sudo avrdude -p atmega328p -c avrispmkII -P usb -e -U efuse:w:0x04:m -U hfuse:w:0xDF:m -U lfuse:w:0xFF:m -U flash:w:open_evse.D4.10.4.EU.hex

Assets 3

UK / EU specific changes

  • Enable MENNEKES_LOCK
  • Disable AUTOSVCLEVEL (autodetection is designed for split-phase and does't work on single-phase systems)
  • Set charging level default to L2
  • Set MAX_CURRENT_CAPACITY_L2 32 amps (recommended limit for single-phase charging in UK/EU)
  • Append .EU to version number

Note: Mennekes Lock requires external 12V motor driver e.g Polulu 1451. Pins D11 (MOSI) , D12 (MISO) are used for the lock.

Other changes compared to V4.8.0:

  • Remove 10A minimum current limitation, restore 6A minimum (J1772)
  • RAPI $FF command and deprecates all other enable/disable commands, i.e. SD/SE/SF/SG/SR/SV
    • RAPI API version V3.0.1 > V4.0.0
  • For all changes see CHANGELOG
Jan 20, 2017
AUTH_LOCK fix + $G0