Skip to content

Commit

Permalink
Squashed 'panda/' changes from 3cab372..c371fe6
Browse files Browse the repository at this point in the history
c371fe6 update panda readme
15bfed8 Merge pull request #49 from diamondman/feature/�J2534_windows_driver
2f036d2 fix esp flasher
4a534c8 fix setup.py for new dir structure
b74b6f2 rename panda to python because of git ambiguity
c6aa4fc J2534_WIN: Defined minimum target version as Windows 7.
86cddeb J2534_WIN: Added VC redistributable to installer. Updated Docs. Icon fix.
33f60bc J2534_WIN: Fixed spelling. Thanks palmerit.
fe35c62 J2534_WIN: Added detail to README. Fixed spelling.
c0097b1 J2534_WIN: Added README.
0a36252 J2534_WIN: Added basic class documentation.
403aeb8 J2534_WIN: ISO15765 Flow Control WAIT and ABORT support.
4d02257 J2534_WIN: Support for changing Baudrate with IOCTL.
ef65503 J2534_WIN: Combined test projects into one.
cc9010b J2534_WIN: Standardized test names.
a364e03 J2534_WIN: Fixed inconsistent test. Added more testing utilities.
b035df4 J2534_WIN: Change DLL name to a more standard name.
c41d823 J2534_WIN: Periodic message support and tests.
3683bbf J2534_WIN: Factored out test boiler plate.
f1583cd J2534_WIN: Disabled outdated test.
24f3f78 J2534_WIN: Cleanup for style and prep for better mutexes.
858119c J2534_WIN: Fixed timeout problem for ISO15765.
343f1e8 J2534_WIN: ISO15765 complies with FlowControl STmin and BlockSize reques.
dbb0f05 J2534_WIN: Fixed timestamp and timers.
731bc63 J2534_WIN: fixed ISO15765 TX with more than 16 subframes.
427e6ed J2534_WIN: Fixed queuing a multiframe message followed by another msg.
9530172 J2534_WIN: Fixed some consecutive messages not sending. Added extra test.
071859c J2534_WIN: Fixed small logical issues in ISO15765 msg.
c0f347d J2534_WIN: Fixed panda loopback by moving it to the new msg system.
c132fad J2534_WIN: Added ISO15765 multiframe messages compliant with new docs.
4431147 J2534_WIN: Enabled ISO15765 mulsiframe receives.
346ff6a J2534_WIN: Readded ISO15765 First Frame processing.
bb3052d J2534_WIN: Adapted base of ISO15765 to correct message processing api.
8e5adff J2534_WIN: Redesigning message processor to comply with new docs.
16b96a7 J2534_WIN: Updated many tests to comply with newly found part of spec.
e69df3d J2534_WIN: Added missing docs. Current implementation is wrong.
4313784 J2534_WIN: First round ISO 15765 Flow Control TX support.
3e74b23 J2534_WIN: Added FrameSet type to track multi frame messages.
f0e1c15 J2534_WIN: New playground experiments.
b735f17 J2534_WIN: STYLE CHANGES ONLY.
b7cfeed J2534_WIN: New protocol documentation snippets.
cf06b40 J2534_WIN: STYLE. Split processMessage for messages and receipts.
48df759 J2534_WIN: New Synchronization primitives, Better code reuse.
cac68e5 J2534_WIN: J2534Device sharable between threads.
779a660 J2534_WIN: ISO15765 extended address single TX/RX, multi RX. With tests.
ca30f17 J2534_WIN: ISO15765 Std addr Single Frame TX/RX, Multi Frame RX. Tests.
c1c7f92 J2534_WIN: Updated playground code to latest experiments.
da1725d J2534_WIN: ECUsim supports ISO15765 extended addresses. With tests.
353093a J2534_WIN: Pulled out common test methods for use with other tests.
41a2adb J2534_WIN: Minor cleanup.
96ce395 J2534_WIN: ECU sim supports responding with ISO15765 multi part messages.
3eaedeb J2534_WIN: Flow Control Filter implementation.
b6d86d5 J2534_WIN: Fixed bad crash.
f2f0f56 J2534_WIN: Using new panda ADC scale for VBATT.
c3a73d0 J2534_WIN: ECU simulator. HDS recognizes ISO 15765.
2da7380 J2534_WIN: Fixed RX with timeout. Added test.
de294cc J2534_WIN: Fix application hang on unexpected USB removal.
3944a81 J2534_WIN: disable ESP to cool off panda.
b4fb70d J2534_WIN: Fixed include paths of projects.
5cdf322 J2534_WIN: Adjustable CAN speed, with tests.
05a173d J2534_WIN: Correctly report firmware/driver version.
195ede4 J2534_WIN: Renamed J2534 output dll, fixed small installer issue.
71b7f94 J2534_WIN: CAN Tests.
825e21e J2534_WIN: Fixed VS output dir for project.
e6cf336 J2534_WIN: Added useful documentation clippings.
8212940 J2534_WIN: Loopback messages are no longer subject to filtering.
1edc605 J2534_WIN: Updated scratch 'playground' code for preservation.
b625334 J2534_WIN: J2534 test project with fixes to work with existing tests.
52922a8 J2534_WIN: PASS and Block message filters. Related aux features.
30615a3 J2534_WIN: STYLE ONLY. Split files for my sanity.
7036cf9 J2534_WIN: Finally got reliable async CAN reading and dispatch.
35fbee9 J2534_WIN: Basic CAN write and read.
197ba90 J2534_WIN: Added NSIS installer script.
098b703 J2534_WIN: Improved panda API. Added can listener to playground.
0c9604e J2534_WIN: Driver inf signing with self signed key.
164eb13 J2534_WIN: Organize Visual Studio projects and build order.
5be4b19 J2534_WIN: HDS recognizes the driver. Most internal plumbing complete.
fd86a3b J2534_WIN: Windows panda driver, tests, and J2534 stub library.

git-subtree-dir: panda
git-subtree-split: c371fe688dbad4c53635905d3471a01c185e811d
  • Loading branch information
Vehicle Researcher committed Dec 14, 2017
1 parent 5c7d3c5 commit a13b7ad
Show file tree
Hide file tree
Showing 126 changed files with 9,847 additions and 11 deletions.
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ To install the library:
# pip install pandacan
```

See [this class](https://github.com/commaai/panda/blob/master/panda/__init__.py#L80) for how to interact with the panda.
See [this class](https://github.com/commaai/panda/blob/master/python/__init__.py#L80) for how to interact with the panda.

For example, to receive CAN messages:
```
Expand All @@ -42,18 +42,18 @@ Software interface support

As a universal car interface, it should support every reasonable software interface.

- User space (done)
- socketcan in kernel (alpha)
- ELM327 (planned)
- Windows J2534 (planned)
- User space ([done](https://github.com/commaai/panda/tree/master/python))
- socketcan in kernel ([alpha](https://github.com/commaai/panda/tree/master/drivers/linux))
- ELM327 ([done](https://github.com/commaai/panda/blob/master/boardesp/elm327.c))
- Windows J2534 ([alpha](https://github.com/commaai/panda/tree/master/drivers/windows))

Directory structure
------

- board -- Code that runs on the STM32
- boardesp -- Code that runs on the ESP8266
- drivers -- Drivers (not needed for use with python)
- panda    -- Python userspace library for interfacing with the panda
- python   -- Python userspace library for interfacing with the panda
- tests -- Tests and helper programs for panda

Programming (over USB)
Expand Down
2 changes: 1 addition & 1 deletion __init__.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
from .panda import Panda, PandaWifiStreaming, PandaDFU, ESPROM, CesantaFlasher, flash_release, BASEDIR, ensure_st_up_to_date, build_st
from .python import Panda, PandaWifiStreaming, PandaDFU, ESPROM, CesantaFlasher, flash_release, BASEDIR, ensure_st_up_to_date, build_st
6 changes: 3 additions & 3 deletions boardesp/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@ else
endif

flashall: user1.bin user2.bin
../panda/esptool.py write_flash 0 $(SDK_BASE)/bin/boot_v1.5.bin 0x01000 user1.bin 0x81000 user2.bin 0x3FE000 $(SDK_BASE)/bin/blank.bin
../python/esptool.py write_flash 0 $(SDK_BASE)/bin/boot_v1.5.bin 0x01000 user1.bin 0x81000 user2.bin 0x3FE000 $(SDK_BASE)/bin/blank.bin

proxy-0x00000.bin: proxy
../panda/esptool.py elf2image $^
../python/esptool.py elf2image $^

proxy: proxy.o elm327.o webserver.o sha.o

Expand All @@ -42,7 +42,7 @@ obj/rsa.o: ../crypto/rsa.c
$(CC) $(CFLAGS) -c $^ -o $@

oldflash: proxy-0x00000.bin
../panda/esptool.py write_flash 0 proxy-0x00000.bin 0x40000 proxy-0x40000.bin
../python/esptool.py write_flash 0 proxy-0x00000.bin 0x40000 proxy-0x40000.bin

user1.bin: obj/proxy.o obj/elm327.o obj/webserver.o obj/sha.o obj/rsa.o
$(CC) $(CFLAGS) $^ -o a.out -L$(SDK_BASE)/ld -T$(SDK_BASE)/ld/eagle.app.v6.new.1024.app1.ld $(LDLIBS)
Expand Down
306 changes: 306 additions & 0 deletions drivers/windows/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,306 @@
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
##
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore

# User-specific files
*.suo
*.user
*.userosscache
*.sln.docstates

# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs

# Build results
Debug_x86/
Debug_x64/
Release_x86/
Release_x64/
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
bld/
[Bb]in/
[Oo]bj/
[Ll]og/

# Visual Studio 2015 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/

# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*

# NUNIT
*.VisualState.xml
TestResult.xml

# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c

# Benchmark Results
BenchmarkDotNet.Artifacts/

# .NET Core
project.lock.json
project.fragment.lock.json
artifacts/
**/Properties/launchSettings.json

*_i.c
*_p.c
*_i.h
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc

# Chutzpah Test files
_Chutzpah*

# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db
*.VC.VC.opendb

# Visual Studio profiler
*.psess
*.vsp
*.vspx
*.sap

# TFS 2012 Local Workspace
$tf/

# Guidance Automation Toolkit
*.gpState

# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user

# JustCode is a .NET coding add-in
.JustCode

# TeamCity is a build add-in
_TeamCity*

# DotCover is a Code Coverage Tool
*.dotCover

# AxoCover is a Code Coverage Tool
.axoCover/*
!.axoCover/settings.json

# Visual Studio code coverage results
*.coverage
*.coveragexml

# NCrunch
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*

# MightyMoose
*.mm.*
AutoTest.Net/

# Web workbench (sass)
.sass-cache/

# Installshield output folder
[Ee]xpress/

# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html

# Click-Once directory
publish/

# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
# Note: Comment the next line if you want to checkin your web deploy settings,
# but database connection strings (with potential passwords) will be unencrypted
*.pubxml
*.publishproj

# Microsoft Azure Web App publish settings. Comment the next line if you want to
# checkin your Azure Web App publish settings, but sensitive information contained
# in these scripts will be unencrypted
PublishScripts/

# NuGet Packages
*.nupkg
# The packages folder can be ignored because of Package Restore
**/packages/*
# except build/, which is used as an MSBuild target.
!**/packages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/packages/repositories.config
# NuGet v3's project.json files produces more ignorable files
*.nuget.props
*.nuget.targets

# Microsoft Azure Build Output
csx/
*.build.csdef

# Microsoft Azure Emulator
ecf/
rcf/

# Windows Store app package directories and files
AppPackages/
BundleArtifacts/
Package.StoreAssociation.xml
_pkginfo.txt
*.appx

# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!*.[Cc]ache/

# Others
ClientBin/
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.jfm
*.pfx
*.publishsettings
orleans.codegen.cs

# Since there are multiple workflows, uncomment next line to ignore bower_components
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
#bower_components/

# RIA/Silverlight projects
Generated_Code/

# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm

# SQL Server files
*.mdf
*.ldf
*.ndf

# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings

# Microsoft Fakes
FakesAssemblies/

# GhostDoc plugin setting file
*.GhostDoc.xml

# Node.js Tools for Visual Studio
.ntvs_analysis.dat
node_modules/

# Typescript v1 declaration files
typings/

# Visual Studio 6 build log
*.plg

# Visual Studio 6 workspace options file
*.opt

# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
*.vbw

# Visual Studio LightSwitch build output
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
**/*.DesktopClient/ModelManifest.xml
**/*.Server/GeneratedArtifacts
**/*.Server/ModelManifest.xml
_Pvt_Extensions

# Paket dependency manager
.paket/paket.exe
paket-files/

# FAKE - F# Make
.fake/

# JetBrains Rider
.idea/
*.sln.iml

# CodeRush
.cr/

# Python Tools for Visual Studio (PTVS)
__pycache__/
*.pyc

# Cake - Uncomment if you are using it
# tools/**
# !tools/packages.config

# Tabs Studio
*.tss

# Telerik's JustMock configuration file
*.jmconfig

# BizTalk build output
*.btp.cs
*.btm.cs
*.odx.cs
*.xsd.cs

# installer
*.exe
Loading

0 comments on commit a13b7ad

Please sign in to comment.