
Openpilot – open-source self-driving agent - boramalper
https://github.com/commaai/openpilot
======
kyle_martin1
I work as a lead autonomous vehicle engineer.

Here's a few thoughts:

* This isn't _really_ open-source. The most important part, the neural network perception pipeline, is closed sourced. Without the training data and the network architectures, the supporting code is not that useful.

* This system is non-deterministic, which is a no-no in critical systems like autonomous vehicle. There's no guarantee that vehicle detection or throttle/brake commands will be executed on a acceptably safe timeline.

* I think the supporting tools like Panda and Giraffe are great for those wanting to get into car hacking.

\------------------------------------------------

By the way, if you want to to become an autonomous vehicle engineer I put
together a resource guide here:
[https://becomeautonomous.com](https://becomeautonomous.com)

~~~
holoduke
What do you mean it's non deterministic? Because it is using floating point
operations? Can you elaborate?

~~~
bko
I'm not OP, but I think he means that the final decisions acted upon are not
deterministic. So given an input, it won't necessarily produce the same
decision every time.

For instance, if the model predicts with a 95% certainty to accelerate, then
5% of the time it'll do some action other than accelerating.

~~~
mgkimsal
might it also be 'non-deterministic' if it accelerates 100% of the time, but
accelerates at different speeds 5% of the time? or is that too granular a
view?

------
mgraczyk
I worked on Openpilot for around a year. Although many of the "cool" parts are
not open source, there are still lots of interesting goodies in there worth
checking out.

For example, there is a semi-standalone CAN processing library:
[https://github.com/commaai/openpilot/tree/devel/selfdrive/ca...](https://github.com/commaai/openpilot/tree/devel/selfdrive/can)

A shitload of hacks and workarounds that make the system work on dozens of
cars:
[https://github.com/commaai/openpilot/tree/devel/selfdrive/ca...](https://github.com/commaai/openpilot/tree/devel/selfdrive/car)

Saving state on devices that arbitrary drop successful file writes when the
battery dies.

[https://github.com/commaai/openpilot/blob/devel/common/param...](https://github.com/commaai/openpilot/blob/devel/common/params.py)

~~~
choppaface
The value is definitely in the platform-relevant hacks.

Stuff like this makes the reader think the authors have never seen a basic
transactional database before:
[https://github.com/commaai/openpilot/blob/devel/common/param...](https://github.com/commaai/openpilot/blob/devel/common/params.py)

------
aphextron
I've been using Openpilot in my 2018 Corolla for the past few months. Some
takeaways:

It's mind-blowingly good. Easily on par with Autopilot (That is, Autopilot's
ACTUAL capabilities, not what they show in marketing promos). For long highway
trips, it's easy to go hours without a disengagement.

The full setup costs about $800, is completely plug-and-play, and you can
order everything you need on the site (EON/Panda/Giraffe). See:
[https://www.youtube.com/watch?v=UfF9l2-orTk](https://www.youtube.com/watch?v=UfF9l2-orTk)

There's a huge active community working on adding support for more cars and
even custom forks with more advanced features like dynamic follow. Someone
even recently got a VW bus working with it.
[https://discordapp.com/invite/avCJxEX](https://discordapp.com/invite/avCJxEX)

Also it's just _really_ freaking cool to have a self driving Corolla. Can't
stress how much this thing has changed the way I view driving and going
places. It's no longer a pain, but a joy to sit in stop and go traffic. It's
not perfect, but it's pushing the border of level 3 autonomy and far better
than anything that any manufacturer besides Tesla is shipping.

~~~
notaki
Openpilot is not on par with Autopilot. There's a long list of things
Autopilot can do that Openpilot will never be able to do with existing
hardware.

~~~
andyh2
Of that long list, what do you think Tesla owners value the most? ACC+Lane
Keeping (what openpilot does) is the answer:
[https://pbs.twimg.com/media/D4y0Fb7XsAEKhFh.jpg](https://pbs.twimg.com/media/D4y0Fb7XsAEKhFh.jpg)

~~~
notaki
Well yes, of course those are valued highest. What's the point of auto lane
changing if you can't ACC and lane keep?

------
czr
For those who haven't seen Openpilot before, or recently:

* George Hotz (not "Hortz") is working on other stuff now [0], and is no longer CEO.

* While "I'm running open-source self-driving software from GitHub" sounds terrifying, the software is very good at what it does, which is very limited (LKAS / ACC / driver monitoring). Browsing test videos on YouTube ([https://www.youtube.com/results?search_query=openpilot+0.5](https://www.youtube.com/results?search_query=openpilot+0.5)) is a good way to get an impression for how well it works; the consensus I've found is that it's better and safer than any stock systems except Tesla AP and Super Cruise.

[0] [http://pixie.tech](http://pixie.tech)

~~~
hsikka
Damn, I was actually planning on applying to Comma for an internship because
George Hotz was there, just to see if I could learn anything from him.

~~~
evilolive
I've toyed with the idea of applying to comma, seemed like a good idea to
learn tons in computer vision. but if anything Hotz himself would be why I
wouldn't do it. I enjoy the roots of his f u attitude - but : we're so much
smarter than anyone else in this market, is simply not true

------
lukeqsee
One side of me thinks this is really, really cool.

The other side is running away as fast as possible. If anything shouldn't be
developed by committee, it's something that controls a few thousand pounds
hurtling down the highway at 70MPH with at best an observant human watching
over it.

Here's my reasoning:

    
    
        Mistakes in Django? Bad things happen.
        Mistakes in the Linux kernel? Potentially really bad things happen.
        Mistakes in self-driving cars? Really bad things certainly happen.
    

Oh…and it looks like anyone can install it with just a few extra electronic
parts?

~~~
djsumdog
To be fair, all self driving systems need to be fully open, to be inspected by
the public. They are way too safety critical to be closed silos controlled by
each car company.

But I agree, projects like this are also potentially dangerous. How extensive
is the testing? Where is the liability? Is that unit running a read-time OS
that will not deadlock or have thrashing which could result in a crash? I've
written about these and other concerns a few months back:

[https://penguindreams.org/blog/self-driving-cars-will-not-
so...](https://penguindreams.org/blog/self-driving-cars-will-not-solve-the-
transportation-problem/)

Drivers do need to be held to having their hands on the wheel and their eyes
on the road (I think it's the Chryslers that actually track your eye movements
and alert if your eyes aren't forward).

There is some early evidence to suggest these safety features could make
people less attentive or more likely to let themselves be distracted.

Personally I'll stick to my 2006 5-speed car with no auto-cruise or lane
assist. It forces me to stay fully aware, and I have to use all four of my
appendages constantly. It's a very active, non-passive driving experience. I
live in a city and don't drive often (I've fueled up once since December), so
I prefer driving to be engaging.

~~~
sameyolo
Your car is 13 years old and you could stand to benefit from the safety
advantages available in a modern "no auto-cruise or lane assist" vehicle. The
safety tech has advanced a lot in that time. This is a quite good way to
invest your scrip imo.

------
Bendingo
This seems mind bogglingly dangerous. At least with commercial self-driving
vehicles, there is a responsible legal entity (the car manufacturer). The
thought of thousands of amateurs and enthusiasts releasing their hacked self-
driving cars on the public roads is terrifying.

The disclaimer "YOU ARE RESPONSIBLE FOR COMPLYING WITH LOCAL LAWS AND
REGULATIONS" is nice, but I can't that stopping the mindset of "I've just
tweaked the algorithm a bit; let's see how it goes".

~~~
stale2002
There is nothing illegal about modifying your own car.

People have been doing so since cars were invented.

"Amateur" car modifications are already very wide spread.

~~~
mwfunk
Sure there is, depending on what you’re doing and where you live. There’s all
sorts of things you could do that would make a vehicle no longer street legal
and/or a danger to yourself and others. And I would hope people would take the
latter very seriously, even if what they’re doing isn’t illegal.

~~~
stale2002
And nothing described here makes a vehicle no longer street legal.

This stuff is well within the realm of perfectly legal car modifications.

~~~
Piskvorrr
Is it? IDK, IANAL.

------
solarkraft
How funny that this pops up just a few hours after I looked into it again.

It's an exciting product. Even if it has no direct use, I feel better being
driven around by an open piece of software that I could in theory inspect and
change. Closed-source stuff is just a black box expected to do magic. Doesn't
feel good.

The story behind the man is quite interesting as well. When I was 9 he was the
guy I got the jailbreaks from that would allow me to install cool tweaks and
other non-standard software Apple wouldn't allow on my iPod Touch 3G.

Apart from this, I think this rap
[[https://youtu.be/9iUvuaChDEg](https://youtu.be/9iUvuaChDEg)] he published
when he was sued by Sony for allowing alternative operating systems to be
installed onto the PlayStation 3 demonstrates his attitude quite well
(admittedly the self driving situation is more complicated, but what a
response to a law suit).

You might guess that I'm still a GeoHot fan. While I'm not sure this will be
competitive with commercial systems in the future, I'd love it. Having the
world's best self driving system be free for everyone to inspect and use in
their cars would be a societal gain similar to that of Linux.

Open Pilot will be the only self driving system retrofittable to older cars
(by consumers themselves), which is already very cool (it's just unfortunate
that none of the cars are old enough for me to consider buying).

I wish them the best of luck (and may they get the tests to a level at which
everyone is happy with them).

~~~
rightbyte
"Closed-source stuff is just a black box expected to do magic"

Open Pilot is about as much black box as all the other self driving
applications. The interfacing is open source.

The machine learning is closed source. I've looked into the repos and didn't
find any sign of the actual hard self driving parts, as it were last time I
checked comma.ai.

But sure, you can tune the steering P-controller for your Subaro if you would
like too.

[https://github.com/commaai/openpilot/blob/devel/selfdrive/ca...](https://github.com/commaai/openpilot/blob/devel/selfdrive/car/subaru/carcontroller.py)

    
    
            apply_steer = apply_std_steer_torque_limits(apply_steer, self.apply_steer_last, CS.steer_torque_driver, P)
    

Or maybe you can patch using "volatile int" for thread concurrency in the
machine model inerface (I guess it is that).

[https://github.com/commaai/openpilot/blob/devel/selfdrive/vi...](https://github.com/commaai/openpilot/blob/devel/selfdrive/visiond/visiond.cc)

~~~
cyrux004
visiond has been open sourced a few months back

------
zarrobyte
I work in AI for general usage applications.

I think that there's some valid criticism here, although I don't think the
target demographic is kept well in mind when considering the project as a
whole.

In the current iteration, a majority of commercial market consumers wouldn't
be skilled enough to perform the installation properly, or at the least,
adequately to achieve acceptable system performance. I think that the barrier
to entry is just high enough to keep Cousin Vinny from sleeping in the back of
his cab while his "self driving truck" got him from A to B.

I've personally purchased a vehicle with the explicit reason to install OP
after learning of Comma back in 2015. It's been one of the funnest, and most
rewarding personal projects I've taken on.

I never drive with my hands far from the wheel, or my eyes off the road. While
there is certainly going to be some hyperbole surrounding new technology, my
assessment is that this alpha quality, DIY solution has been adequate for my
use cases over the last 2,000 miles in various weather and road conditions.

I think that the comments here about loss of life and limb are overblown. If
someone engages in sex and uploads the video publicly to PH while mowing down
a pedestrian in the process in their "Tesla", I think that speaks more of the
driver than it does the technology. One could argue that the tech enabled them
to do so, but so what? See footnote: Gun Control Debate.

I think what Comma is doing is rather smart as a company. Keep the barrier to
entry high which naturally attracts skilled, and otherwise knowledgeable
people, build out their codebase, and eventually release (or lease) their tech
to car manufacturers that need help catching up in the marketplace. I don't
really see another way a scrappy startup could accomplish as much in the self
driving market without some risk.

I don't really lift weights, but I've disassembled my vehicle's EPS motor. I
think I have a fair chance of overpowering it, even if the controller doesn't
include "deterministic, real RTOS" or whatever flabblebabble. Commercial
release? Sure. #shipit

But for now, I'd be more concerned about people staring at their crotch while
driving browsing Instagram.

------
useful
Cool, I'd really like to use this for a small scale toy car. I'd never put it
on something that could do more than bruise an ankle.

~~~
kyle_martin1
I have two recommendations for you Duckietown
([https://www.duckietown.org](https://www.duckietown.org)) and AWS DeepRacer
([https://aws.amazon.com/deepracer](https://aws.amazon.com/deepracer)).

Hope that helps!

\-------

If you want to get more serious about robotics then check out my website
[https://becomeautonomous.com](https://becomeautonomous.com)

~~~
JustFinishedBSG
Also: [https://www.donkeycar.com/](https://www.donkeycar.com/)

~~~
diyrobocars
Also [https://diyrobocars.com](https://diyrobocars.com) and
[https://diyrobocars.com.au](https://diyrobocars.com.au) in Australia. If
anybody wants an invite to our Slack group and our "Hack and Race" meetups,
send an email with your location to the address on my profile.

------
neilv
In the first video, the voiceover tells people to buy&install the hardware,
and use this software, while showing what appears to be autonomous driving
among other vehicles on an active public road. (Not "This is for research
only, from the privacy and safety of your own driveway.")

Who thinks this is a good idea? Where in the US is this legal? In a crash,
will insurance cover it, and will there be additional civil liability and
possible criminal charges?

------
energee
I'm reading a lot of commenters criticizing their strategy and quality of
their system. Does anyone want to talk about the fact that they have 10.5
MILLION miles recorded without an at-fault accident? To me, this is quite
remarkable.

------
caafka
By the way, the CEO of comma.ai will speak at Big Data & AI conference in
Dallas, June 27-29, 2019.
[https://bigdataaiconference.com](https://bigdataaiconference.com).

------
jaimex2
Seems like a neat project to get auto-steer driver assist going on a car that
supports it. It's basically a Tesla Autopilot 1 ( Mobileye ) mod.

------
rnotaro
Are the main maintainers French-Canadian? I noticed that a lot of demos were
filmed in the province of Québec.

------
Jemm
This is going to be an interesting legal case when a vehicle using Openpilot
is involved in an accident.

------
rightbyte
This is stupid. All the demos are on public roads. George Hortz needs to chill
before he ends up in jail.

~~~
lixtra
One side of me agrees, the other thinks of the Wright brothers. Oh wait, they
got someone killed.

~~~
HALtheWise
I am genuinely interested, do you think that the Wright Brothers should not
have developed the technology that they did because of the risk that someone
would get killed? I am having trouble imagining any way (at least at the time,
but probably today as well) of inventing manned flight without anybody dying
in the process.

~~~
amptorn
Inventing manned flight without anybody dying would have been completely
possible. Use more caution, pay more attention to safety. But that's not the
right hypothetical. This is inventing manned flight without _endangering or
killing innocent bystanders_.

------
k0dede
scifi idea: stop making cars, train only

