There have been multiple discussions in the threads of various ArduStation posts in the last few weeks about form, function, capabilities both in conjunction with and without a GCS or planner. I have joined in on some of those discussions and what came out of many of them is that we all have different approaches to what we want out of an ArduStation-like component. Some people want a simple mechanism to just decode the LAT/LON, calculate a direction and point the antenna. Some people want it to point the antenna and pass along the data stream via another communication protocol. Still others like having the screen and buttons to tune PIDs, etc. Some wanted the whole enchilada PLUS a touchscreen to do away with the old text screen and buttons...needless to say there was not a lot of consensus - so that got us talking and a modular format became a part of the discussion.
So what I would like to propose is a new project called the ArduStation HUB. A completely modular unit that will allow people to build upon it and add each component they require. So chime in, tell me what you think. Do we even need anything like this? Is my design brilliant? lunacy? Let's crowdsource the design and I wil get them built - if we come up with something truly awesome, perhaps we can get it added to the store. I know MANY of you have been working on various versions of hardware / software etc. Can we come up with the modular software to match?
Comments
I'm really upset that this thread ended here :-(
ps: the discontinued board i mention above has the same 16mhz processor as AP and runs at the same speed as APM. I guess they are selling them off at near cost $22. If you will ever want any remote sensors around your house that can send serial xbee messages then you get a lot of bang for your money with those boards. There is 80 left, they work really well. You get real time clock, xbee socket, sd card, solar and an arduino all in one.
@scott I'd love to help when I can. I also need it for a new house automation remote control :) That might sound silly but there is a point. It's good to also be able to use the kit for other things when possible. So that when we aren't spending our 10 minutes of lipo we can make use of our investment to switch on the dinner, the tv or the heating :) Actually I would like to see an extension to mavlink to support other device types.
As concerns screen. The oled was very good until the sun was on it but maybe that can be solved with the right case. A rubber housing/case manufacturer sent me one for free. The seedstudio board with the oled fits in with room to spare. an arduino mega (with oled and the number pad above) fits in perfectly. it was nice seeing the xbee arial popping out of the top. I'll try and put it back together and post a photo.
the buttons are really difficult to press on the numberic keypad above. couldn't press them and think about controlling my copter! It taught me that we need really easy to press buttons, maybe a big enough touch screen can work instead of buttons.
Processor power is really important. The arduino arm due out at xmas might do the job. Otherwise an android device with serial ports. none of the ADB stuff, it's tooo bulky but i might be dreaming :)
Liquidware do have beagle board with the oled on top but you are right it might not be big or bright enough
Finally if we stick to arduino we can create seperate librraies for each screen type so that isn't an issue
@Fab Awesome feedback! I sincerely hope you will be willing to help out on this project. I have no doubt we will be able to use your help. I love the OLED screen option because the color touchscreen I had been planning to use (which is much cheaper,) I have been told has issues with outdoor readability. My goal is to make the HUB compatible with several different screen types so people can just select their screen, load the correct code for it and go. This may be a bit more expensive, but it sure looks beautiful and bright. As far as processor goes, I am planning on using an ATMega32U4. That will be paired with whichever APM people choose to pair it with - either a 1280 or 2560 in a manner similar to the oilpan IMU, so that is 2 micors, we'll just have to figure out which one does what. I think the main reason they chose to put the Mega2560 on the scrfeen was to act as a king of GPU co-processor and a place to store image files. Anyway, if you can help out. I look forward to working with you.
Great post!
I notice the liquidware button pad and joystick I've been playing with the same along with some of their extender shields and the touchslide (oled). Actually I ended up trying to see how two of their screens would work. On one screen the stats and graphical radar etc and on the other a set of digital ap controls.
Seeedstudio make standard size arduino boards with xbee sockets but you have to watch their supported voltages. They, as with normal adruino boards, plug into the liquidware kit mentioned above. Plugging it all together without the need for a soldering iron feels a bit like that you have described in your blog. The seedstudio boards also support wireless programming of the arduino via xbee. It's nice to re-program things without need of a usb cable or programmer. They also often have sd cards and a few other things. Again I just comment on the design features and I am not suggesting these are exactly the right boards
3 Volt board - arduino format 8 mhz (pro). i think its got xbee, sd and rtc + can take power from solar
3 or 5V 16mhz arduino format with abee, rtc and sd. this is the one i use with touchslide oled screens. it's going cheap at the moment because it is discontinued. Hopefully someone can find a better replacement. Maybe a new arm board from arduino after christmas
http://www.seeedstudio.com/depot/seeeduino-stalker-atmega-328-p-600...
The liquidware touchslide oled might be too underpowered for your project but i like the design. It has its own mega2560 processor and some flash storage. So it can handle the graphics while the arduino plugged in below handles telemetry, gps etc. It's graphics work ok if you keep things simple (no big bitmaps or entire screen draws).
I love this project as a guide to what can be achieved Kurts Blog. Note: the picture of the telemetry screen in his blog is blown up. In reality the screen and his program is VERY bright and sharp.
Another thing i missed with the touchsilde is more serial ports. It has a mega2560 processor which has many serial ports. the ports are brought out to pcb pin holes but all but serial1 are partially covered by the screen so can't be used.
I downloaded the software from kirts blog and started to get ardupilot messages instead of his own. I had apm accelermoter, gps and other stats showing on the oled. BUT it was to be a big job because the screen drawing and number of apm serial messages needed more cpu power or very carefull code optimization.
I'll follow this post eagerly!
@Andy - that is exactly what I was thinking - why recreate the wheel when we can duplicate what was done on the current OilPan for this function. There should be room ans it will make a great feature.
@Peter - Good idea for some local control contacts. The APM has "lots" of bit-level i/o that could be used for either logic-level outputs or relay contacts like what is on the current Oil Pan.You could use relay contacts to then control larger switches/cox relays/whatever.
@Scott
Given the amount of time I spend going through the forums here I don't know how I missed the Android work. It looks great, Support for some form of tablet UI via Bluetooth or WFi would be a useful capability for the hub.
Andrew
@Peter, that is a great idea. This is the kind of feedback / suggestions that make projects like this so fun and cool to do. I am thinking this may need to be its own module, it will likely just depend on the space available on the board.
I think you are also on the work of the bluetooth-xbee adapter now if its possible integrate the idea to this so it can stream to PC/android/I pad then use the existing gcs on those platformm and maybe do their video streaming there. Unless the expensive video monitor is on the menu :-)