* main
* can_comms
* main_declarations->main_definitions
* rename this also
* can_definitions
* faults
* power_saving
* provision
* gitversion
* not included
* no include for now
* Let refactoring begin!
* Fix pedal build
* Fix pedal safety tests
* Forgot few TIM2 instances
* Try this way with misra
* More misras...
* More misras...
* Still fighting with misra blindfolded
* Almost got it!
* Last misra error..
* Last misra error..
* Misra works locally..
* Maybe this?
* Looks like it was cppcheck bug, revert changes
* Suggested changes and reverts
* File structure change
* revert includes
* remove spaces
* remove timer delay
* endings
* more typing
* rename early to early_initialization
* Remove delay_us
* Revert RTC default values
* Revert initialization sequence
* Fix quotes
* Revert
* Return TIM6EN
* Alias slow timer to TICK_TIMER
* Refactor files structure
* Remove definition of PANDA
* Abstract timers
* Fix include
* tick_timer_init
* Split usb driver
* Move LL stuff: adc
* Move LL stuff: usb
* Fix include again...
* Will check pedal builds also locally..
* Move LL stuff: CAN
* Move LL stuff: clock
* Rename common to peripherals and move
* Move board HAL
* Change include, not needed for pedal
* llgpio to gpio and new lines fix
* remove board_has_relay, not used
* Remove board_functions.h and add to board struct
* Move include
* Fk MISRA...
* has_onboard_gmlan to has_hw_gmlan
* Typos
* Move board_declarations include
* Shuffle
* More abstraction
* fix paths, fix cppcheck test
* Fix for pedal build with USB
* remove unused wifi tests
* remove that one too
* no bootmode from ESP
* clean that up
* remove two more wifi tests
* remove boardesp and esptool
* esp_gps -> gps
* missed those
* remove esptool refs
* remove esp certs
* no more wifi
* that was old
* cleanup jenkins dockerfile
* fix linter
* remove more wifi refs
* clone panda jungle from github
* no copy
* always default esp to off
* Added an initial working implementation of the register readback and applied it to the LLCAN registers. Also fixed an init bug in CAN.
* Locally disable pylint import error
* Reverted change to CAN-obj->FA1R setting
* Fixed misra compliance
* Changed hash function name
* Fixed CAN filter setting
* Added voltage health test
* Converted ADC to register functions
* Converted clock to use register setters
* Added check to see if fault status is zero after running test
* Converted DAC to use register setters
* Converted fan to use register setters
* Converted gmlan bitbanging to use register setters
* Changed over interrupt driver to use register setters. Also moved some includes and definition places for critical sections
* Fixed build
* Converted LLGPIO to use register setters
* Converted pwm to use register setters
* Fixed cold boot
* Fixed health fault check in automated tests
* Added comment for the future (issue #367)
* Converted RTC driver to use register setters
* Converted SPI to use register setters
* Converted timer driver to use register setters
* Fixed register fault on white pandas and disabled showing of fault for release
* Bump version
* Added uno
* Added usb switch support
* Added PWM and IR power functions
* Implemented bootkick
* Added uno as a new hw type
* Bumped version
* Added fan control and tach readout
* WIP: RTC support
* Working RTC
* Fixed python
* Misra compliance
* Added USB control messages for fan/IR power
* Added USB commands + tests for fan & IR control. Fixed bootstub and pedal compilation
* Added IR and fan to power saving mode
* Changed defaults
* Fix safety considering uno
* passing safety now
* Minor UNO tweaks
* Fixed version
* More minor temporary tweaks
* Removed usb load switch from uno
* Added power control for shutting down the fan completely
* Disable IR LEDs by default
* Fixed linter issue
* Linter fix#2
* make ignition logic common for all cars
* ignition_can is not a safety thing. move it to can drivers
* bump version
* gm safety passive is deprecated
* move tx 1 on logic into board specific headers.
* Jenkins test refactor and black panda addition
* Added HW types needed by previous commit
* Fixed ignition interrupts when not on EON build
* Added functions for load switches
* More test scripts for black panda
* Added NONE power mode to the code
* Fixed race condition when setting GPIO pins was interrupted.
* Added relay test script
* Fixed flashing with critical sections and GPS load switch
* Fixing critical depth after reboot
* Made the loopback test asserting
* Made critical depth a local variable to avoid race conditions
* Added GPS to power savings mode
* Fixed DFU mode on white panda and bumped version
* Fixed PEDAL_USB compilation error
* Fixed misra compliance of new critical depth code
* Cleaned up heartbeat logic in the testing code. Re-added ALL_CAN_BUT_MAIN_SILENT. Bumped version. Improved critical section code.
* Fixed DFU flashing (once again)
* Fixed VERSION
* Added relay endurance test
* Changed to alloutput on ELM mode for fingerprinting.
* Fixed minor remarks
* late usb
* Added type support for black panda
* Added harness presence and orientation detection
* harness relay driving code
* Added intercept support in black panda code. Switched around can0 and can2
* Disable ADCs after orientation detection. Ignition interrupts via harness
* WIP: Hardware abstraction layer + black panda bringup
* Fixed bootstub build
* Fixed bootstub for pedal
* Fixed infinite loops
* Got CAN buses working on white again
* Fixed pedal build and black can interfaces
* Got CAN buses working on black panda
* Finished loopback test for black panda
* Erase all flash sectors on the panda. Increased binary limit. Added extra python functions.
* Fixed python
* Made new code MISRA compliant
* Cleaned up ignition. Fixed build
* Fixed health packet
* Fixed CAN mode on black bug. Changed OBD to switch on ELM mode
* Fixes from Github review
* Fixed MISRA issue for pedal
* Fixed failing gmlan tests
* ELM327 safety: allow diagnostic on all buses
* Cleaned up EON relay code
* delete only 3 sectors instead of 11 to allow a new build to be flashed. Much faster to flash
* Removed CAN only can0 output mode. Does not make sense on black panda due to reversibility issues.
* Added heartbeat logic for EON code on panda. Go to NOOUTPUT if EON does not send a heartbeat for 5 seconds.
* Remove all CAN buses live on EON startup. Shouldn't be necessary to have this separate case
* Formatting
* Added file I forgot to push
* Added heartbeat to testing code to make sure EON tests don't fail. Should probably find a better way to do this though. Heartbeat thread didn't work, concurrent USB connection issues...
* Safety: support black panda for Honda Bosch
* Disable OBD2 if setting to NOOUTPUT mode
* Run safety tests for all hw_types
* Fail test if subtest fails
* fix safety tests
* Only turn on wifi if not eon
* Dont disable ESP in early
* Allow CAN to be turned off
- CAN is turned off via timeout
- CAN is turned on when either try to transmit or can is received
- If only transmit is asleep, all messages should send okay
- If receive is alseep, will miss first message while waking up
- Sometimes will report error on second message while CAN perif wakes up
- Saves 130mW!
* Power Saver Mode
- Gray Panda power consumption 650mw -> 325mW
- Turns off CAN, GMLAN, LIN, GPS when no activity for 10s
- No acitvity is no CAN send, CAN Recv, Write to GPS
* Fix power_saving to better turn off can
- On some cars when the can is turned off, it triggers a wakeup.
Delaying the automatic wakeup seems to fix this
* Don't save power in pedal
* Cleanup power saving