Propeller as a Appliance to a Freescale i.mx6 ARM processor?
I am researching hardware for an upcoming project I will be working on.
I want to tie into my vehicle and build a security and convenience system.
The hardware I will likely be using is a Freescale i.mx6 quad 1ghz ARM compatible processor with a 7" touch screen control under Android 4.02. I need something to interface into the vehicle components and the Propeller sounds like the best way to do this. I will likely try to do as much as I can with the Propeller to save programming needed on the ARM. I am looking at using 1 Propeller to replace the HVAC controller in my Truck. I will use the motor controller from Parallax to control the blower fan and will need to be able to control linear actuators to control the heat as well as relays to switch accessories on and off. Another Propeller to run the base for a very sophisticated security system. The more the Propeller can do for the security stuff the better. It will be a standard car alarm with auto start capabilities. The add on stuff includes video cameras, GPS tracking and connecting to a smart phone or PC via bluetooth, WiFi or internet but likely run from the ARM module.
I am sure I will have MANY questions as I build this project but I will start with will it be easy to connect these Propellers to the ARM setup? If so how would I do it? USB? This ARM unit has 3 USB ports but I want to try to keep them open. It does have CAN capabilities and some other automotive connections I am unfamiliar with. At this time I am unsure how many Propellers I will need but I want to only have to connect any one of them to the ARM and if there is more than one they should be connected to each other with still only one of them connected to the ARM. The Propellers should not care which one is connected to the ARM since I could configure the system to run with either or both of the listed Propeller projects here or others as this grows.
I want to make this totally configurable in case I decide to sell this in the future.
Otherwise I am planning to use this as a sort of Rolling Resume.
I am working on Degrees in Software Engineering and Computer Security. This will show my skills in writing software at different levels for different things and being able to tie them all together.
I want to tie into my vehicle and build a security and convenience system.
The hardware I will likely be using is a Freescale i.mx6 quad 1ghz ARM compatible processor with a 7" touch screen control under Android 4.02. I need something to interface into the vehicle components and the Propeller sounds like the best way to do this. I will likely try to do as much as I can with the Propeller to save programming needed on the ARM. I am looking at using 1 Propeller to replace the HVAC controller in my Truck. I will use the motor controller from Parallax to control the blower fan and will need to be able to control linear actuators to control the heat as well as relays to switch accessories on and off. Another Propeller to run the base for a very sophisticated security system. The more the Propeller can do for the security stuff the better. It will be a standard car alarm with auto start capabilities. The add on stuff includes video cameras, GPS tracking and connecting to a smart phone or PC via bluetooth, WiFi or internet but likely run from the ARM module.
I am sure I will have MANY questions as I build this project but I will start with will it be easy to connect these Propellers to the ARM setup? If so how would I do it? USB? This ARM unit has 3 USB ports but I want to try to keep them open. It does have CAN capabilities and some other automotive connections I am unfamiliar with. At this time I am unsure how many Propellers I will need but I want to only have to connect any one of them to the ARM and if there is more than one they should be connected to each other with still only one of them connected to the ARM. The Propellers should not care which one is connected to the ARM since I could configure the system to run with either or both of the listed Propeller projects here or others as this grows.
I want to make this totally configurable in case I decide to sell this in the future.
Otherwise I am planning to use this as a sort of Rolling Resume.
I am working on Degrees in Software Engineering and Computer Security. This will show my skills in writing software at different levels for different things and being able to tie them all together.
Comments
A rather complex system.
A good start would be a block diagram. With sufficient detail (number of Inputs and Output signals, and power) to all the blocks, and all the interfacing units of the vehicle. This gives you, and any others you want to review it, a quick 'picture' of your project. Something easy to review, mark up and edit as you go along.
Break the block diagram into portions if parts of the system are to be on different pcbs. Possibly some high powered portions may be more desirable separated so that the drive is close to the high powered equipment.
Just my 2¢ from some decades of engineering.
I'd be inclined to go with the lowest common denominator of a regular serial link for ARM to Prop communication.
Useable with pretty much anything.
My Guess is under 10' for all of the devices. I only see my needing a hand full of propellers unless I was going to make a fully self drivable vehicle.
Don't know if this fits your definition of "easy" but to me most other ways are too hard:
If you can use the amazingly simple forth language, propforth supports most of the stuff you need. Propforth's MCS channels allow a very fast connection between multiple props using two resistors and five wires. If you can install the GO language on your android device there is support for GO to propforth, this is the same very fast transparent connection. Otherwise you can use a regular telnet interface, or a regular serial port. We just got working cheap bluetooth modules for cable-less serial connections at 230400 baud. Then all you need is the simplest of interface drivers for the sensors and actuators attached to the prop, and they are available as resources to your android vehicle control application. You can decide what part of the application lives on the prop(s) and on the android. You don't have to use GO, either, you can use for example Python-CSP but we haven't interfaced it to the prop yet.
The documentation and examples are in the propforth download, and in the wiki pages.
Also, propforth provides a (relatively) easy path to convert your code to assembler, and allows calling assembler modules from SD, so you can have pretty much unlimited loggin and application size, as long as you make sure the individual chinks fit into a cog's memory. Since you can write scripts on the SD to chain function calls together, you will run out of application ideas before you run out of space.