Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

changes made for railcom and CV programming changes #139

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

kaster14
Copy link
Collaborator

@kaster14 kaster14 commented May 1, 2018

Had to make some adjustments for Wifi params, railcom timing, and CV programming menu on the throttle

kaster14 and others added 2 commits May 1, 2018 11:27
* master: (350 commits)
  Updates targets that we broken by linker changes.
  Moves the usb interrupt vector number reference internal to the usb cdc serial driver.
  Simplify some of the code.
  Refactors CAN driver for pic32mx to have a header and be instantiated in the hw_init.cxx.
  Updates some of the interrupt generating code and makefile includes.
  Moves ISRWrapper.
  Move ISRwrapper.S over to the generic directory.
  Updates the suffix of the multibin make target for 091
  Adds interrupt generation code for the mx530.
  Adds a generated file, one for each freertos interrupt. The output .o files from these will be pulled in when a given  symbol is referenced from c++. Once the .o is pulled in, the specific interrupt trampoline is linked into the main program.
  Moves the reset_data in ram0.
  Makes sure we detect duplicate interrupt vector table entry.
  Adds documentation.
  Stores the interrupt vector (internal) number for the uart module.
  Adds freertos isr wrapper macro.
  Moves ISRWrapper to the freertos drivers directory.
  Removes obsolete linker script.
  Switches over lccbuffer compilation to use shared linker script.
  Adds memory map for MX530.
  Updates symlinks.
  ...

# Conflicts:
#	src/openlcb/TractionCvSpace.hxx
@@ -945,13 +945,13 @@ TivaDCC<HW>::TivaDCC(const char *name, RailcomDriver* railcom_driver)

unsigned h_deadband = 2 * (HW::H_DEADBAND_DELAY_NSEC / 1000);
unsigned railcom_part = 0;
fill_timing(RAILCOM_CUTOUT_PRE, 6 - railcom_part, 0);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The code here has an invariant that railcom_part is always set to the absolute microsecond that the sum of the previous RAILCOM_CUTOUT_XXX segments represent. This is used to compute the length of next part by a simple subtraction.
You broke this invariant, and after your changes it is impossible to reason what this code does. Please restore this invariant so we can merge this code.

@kaster14
Copy link
Collaborator Author

kaster14 commented Feb 1, 2019

We should consider adding wifiparams.c to to the gitignore.

Also I should double check the timing I made, I think it only effects the tail end of the cutout, testing so far with current timing has had no adverse effects on Railcom performance however, it may just be that the packets I've used have not used the full channel 2 time window so it hasn't been an issue yet.
I will have to scope this up and take some measurements

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants