8 ms·
My Own Car System, Rear Camera, Offline Maps and Routing with Go
- deleted 8y ago[deleted]
- squiidz 8y agoDoes your car have a custom licence plate ?
- sebtoast 8y agoFrom what I can gather by the maps, he's located in Quebec city in Canada and we didn't have custom plates until July 2018.
- huslage 8y agoWhy write a new gpsd when a mature one exists? Why not just write a Go interface to it?
- djsumdog 8y agoYea I didn't get that either. I have a Python sensor gathering app (LtSense) that uses the gpsd python bindings and it works really well. I mean if he's targeting one GPS device, this might work fine, but GPS targets a lot of devices with lots of fixes for broken protocol implementations.
- ocdtrekkie 8y agoPersonally I bought a cheap USB GPS device (GlobalSat BU-353-S4) that offers NMEA compliant strings, and I coded off the NMEA spec. I don't think for a personal project it's unreasonable to say "code for spec, and buy a GPS receiver that meets it".
- akhenakh 8y agoI've tried to explain this in part 1: I assume you talk about gpsd? or libgeoclue? gpsd is slow to start because it tries to detect the baudrate as stated in the manpage Autobauding on the Trimble GPSes can take as long as 5 seconds I didn't find any solutions to disable this behaviour. libgeoclue is a giant ecosystem relying on tons of libraries to work with and it does not work on my system.
- deleted 8y ago[deleted]
- akerro 8y agoNo, a cheap tablet with Android and install OsmAnd~
- djsumdog 8y agoThis is pretty awesome. Back in the late 90s I ran a 333Mhz Celeron in a little box under the seat of my car, with a parallel port LCD display, as my MP3 player. I've thought about building something like this, but it just seems like a ton-o-work. This project seems to have maps+camera, no media player yet. I do run/build a lot of my own stuff (my own web/email server managed via ansible/docker), I run custom Android roms and I do like building things myself, but with the time tradeoff, I just find it easier to get a Pioneer nav/media unit. (Tried the Joyen Android versions for a bit too, but it's difficult to get a good/safe car UI setup in Android).
- bronco21016 8y agoI’ve often wondered why there hasn’t been someone that developed a good Android headunit project. What is it about Android that has made it difficult to make a good/safe car UI? Couldn’t one just mimic Android Auto? Or even just run Android Auto?
- jefft255 8y agoYou can buy aftermarket Android Auto headunits: https://www.androidauthority.com/best-android-auto-head-units-791179/ https://www.androidauthority.com/best-android-auto-head-unit...
- TomMarius 8y agoYou can build your own using https://github.com/f1xpl/openauto https://github.com/f1xpl/openauto
- driverdan 8y agoYou can but that list is garbage. They just pulled a list off of Amazon so they can spam their affiliate links. Without a hands on review it's hard to know if they're any good.
- tristanb 8y agoI have one in my car - pumpkin audio. It does the job great. Talks to my back up cam - smart mirror, and i've written scripts so it takes pictures of the driver at ignition, opens my last spotify track, last google map search etc
- nabilt 8y agoGreat project. Offline mapping is a great feature addition. I'm working on a similar side project using C++ and Qt. I tinkered with Qt maps for a bit, but found it was sucking up too much of my time building a navigation app with all of the necessary features so I scrapped it. I will probably try to integrate an open source mapping app later on to make life easier. So far, I got music streaming and voice calls working over bluetooth and I'm currently working on cleaning up the UI. I'm also considering upgrading my board to the i.MX8 which recently came out. Next I''m planning on adding an LTE modem, OTA updates and some kind of basic music app.
- elboru 8y agoHow do you handle aesthetics? Sounds like a really fun project but a big challenge, at least for me, would be to make it look pretty and not like a Sunday hack.
- nabilt 8y agoHardware is the biggest challenge and what I assume you are asking about. My first approach was to get a double din computer case, which gives you an aftermarket look. The better option is to go to the junk yard and get a stock head unit and replace the internals. The problem here is finding an LCD that fits the dimensions. Another thing I've been thinking about is using a larger LCD that sticks out of the dash like the Tesla Model 3. Downside here is there is no space for physical buttons which I really like.
- akhenakh 8y agoAgree, creating something nice is challenging, 3d printings may help but I haven't started it yet, waiting to evaluate different screens first. I've decided not to dismount the car block but using a phone stand modified for my screen. It's full of ugly cables, the challenging part was to route a cable from the rear of the car to the front :)
- adreamingsoul 8y agoNow this is something I can get behind.
- ocdtrekkie 8y agoVery neat! I'm still relying on my car's built-in display for the camera, so my computer isn't doing maps or the like, but I've got a computer in my car mostly for music and GPS logging, always neat to see what other people are doing!
- wycy 8y agoDo you have any writeups/pictures/etc on your setup? I'd like to get some systems in my car but I'm not sure where to start.
- ocdtrekkie 8y agoI don't have a good comprehensive write-up, but the code is here: https://github.com/ocdtrekkie/HAController https://github.com/ocdtrekkie/HAController The README describes the modules which should give you some idea of what it's designed to do. It's built in Visual Basic and also designed to run my home automation system. It is janky and while I wouldn't mind someone else using it, I wouldn't exactly recommend it. :P In the car, I run an Intel NUC on the floor of my car, and the display I use is an Adafruit serial backpack-based unit (https://learn.adafruit.com/usb-plus-serial-backpack/overview https://learn.adafruit.com/usb-plus-serial-backpack/overview) inside a plastic enclosure along with a small USB hub and the GPS receiver. The enclosure's attached to my dashboard using the same 3M strips available for IPASS/EZPASS devices. My first question is always "what do you want to do?" What frustrations do you have, what would make your life easier to automate? A lot of times it is less than you think.
- dev_dull 8y ago> In Part I, I had to patch qtmultimedia for the camera to work, but Qt compilation is ressource hungry, same goes for the osrm compilation, the memory of the Raspberry Pi is too small I was just thinking about this today. Is it possible to set up an arm VM for “dev” and port the binaries over to the RPI?
- akhenakh 8y agoqemu is capable of emulating an ARM cpu so yes but won't be able to emulate all the real hardware, especially the opengl ES gpu. From a compilation perspective I believe using a cross compiler is way more efficient than emulating the whole system.
- microcolonel 8y ago> ...especially the OpenGL ES GPU... Does Virgil3D not work in DBT QEMU targets? Generally agree that cross-compilation is a better solution, but I think it could also be nice to have everything (except the drivers for your actual hardware) tested as delivered.
- vetrom 8y agoWith a not insane amount of work you can get a cross compile toolchain up and at least make binaries. Not a lot of packaging systems focus on the cross-compile workflow for package generation though. (I mean there are some, but it's not exactly the standard for fedora or debian.)
- inferiorhuman 8y agoCross compiling is doable and easier with the newer versions of Debian. One Qt issue I had is that a bunch of stuff is dependent upon OpenGL, which wasn't well supported with the Pi stuff when I was poking around at it. Qt is also just a beast to cross-compile. Rust is much, much nicer to cross compile but lacks a nice GUI. I've been poking at Cursive.rs for TUI stuff in an attempt to hack up my own scan tool so we'll see where that goes.
- 0xfeba 8y agoThe latest Kenwood AA units use Linux (no surprise) and Qt. Their UI is wonky af though.
- craftyguy 8y agoDo they comply with the GPL? If so, custom firmware seems like a real possibility!
- NullPrefix 8y agoQt for devices is commercial only, not GPL.
- craftyguy 8y agoMy question has nothing to do with Qt.. GP said it was using Linux, and the kernel is GPL.. so.. are they compliant? Are they releasing any/all modifications they are making to the kernel for booting it on their device?
- NullPrefix 8y agoGPL requires you to supply sources together with binaries. Is he distributing binaries to anyone?
- 0xfeba 8y agoAFAICT, they don't have a custom kernel, it just runs an application on startup.
- oulipo 8y agoAnd you can add 100% on-device and private-by-design Voice AI to your car using what we are building at https://snips.ai https://snips.ai
- ocdtrekkie 8y agoMy system is built for a conversational interface, but I don't have voice recognition in place yet. Questions: Why is a Raspberry Pi required? If a Raspberry Pi is required, why does the computer need to be either MacOS or Linux? Would it be possible to use this to, say, look for a hotword and then just always return the rest of the command to a single program, since I have my own command structure already in play? I need the on-device voice recognition and hotword detection, but not the actual assistant.
- sometimesijust 8y agohttps://snips.gitbook.io/documentation/installing-snips/on-android https://snips.gitbook.io/documentation/installing-snips/on-a...
- j88439h84 8y agoA popular choice seems to be Mycroft https://mycroft.ai/ https://mycroft.ai/ (no affiliation)
- ocdtrekkie 8y agoMycroft is again, a whole assistant setup though, I just need a good local voice recognition component. Command processing and TTS are already built-in to my own code. I'm not totally opposed to adding a Raspberry Pi, but since my existing automation code runs on Windows, I at least need something that can talk to a Windows box.
- mulmen 8y agoI’m thinking of replacing my 2010 BMW with something... simpler. Since good mechanics don’t exist I need a car I can work on myself. That means probably not much later than 2005. I see that late 90s 4-Runners are cheap now and nice vehicles but miss a lot of the fancy buttons I have become accustomed to. Early 2000s M3s are similarly priced. Both have DIN headunits. This kind of project would really fill that gap for me.
- pitaj 8y agoDoes anybody know if it would be possible to just run a standalone version of Android Auto on something like this?