d0f9f46f9c
Store the configuration on the SD card
2015-08-13 14:10:09 +00:00
53a8072424
Remove old header file and add more missing header files
2014-11-23 20:31:13 +00:00
4f171f3023
Add missing file and tidy up somewhat.
2014-11-23 20:20:48 +00:00
8b3ff9feba
Add preliminary support for HMC5883L magnetometer and MPL3115A2 altimeter.
...
Logging only, at this stage.
2014-11-23 18:54:11 +00:00
56de69735f
The weighting mechanism to only consider accelerations roughly
...
in line with gravity wasn't working too well. Let's consider
all readings equally for now.
2014-05-17 12:35:20 +00:00
9d5e6da3bf
Yes, we do actually want I2C to run fast.
2014-05-17 12:33:47 +00:00
e8adff93c1
Bye bye Wii Motion Plus, hello MPU6050. Also, increase control loop
...
to 200Hz, add SD card logging, and a number of other changes.
2014-05-06 21:03:48 +00:00
b482b85ffd
Firmware changes to match rewired control board.
...
This is a bit more difficult than just reassigning pins as the usage
of the timers has changed to the point of using 16 bit timers where 32 bit
timers would have been ideal. This makes the use of the prescaler necessary,
and we need to cope with a different prescaler value being used on different
timers.
2013-05-25 19:24:39 +00:00
b9c08d88b1
Implement CPPM reception. Keep it as an option for now.
...
Recalibrate the radio, as the timings have changed.
And, it seems a couple of channels are now swapped with the new radio. Or
rather, unswapped. So fix the channel map to match.
2013-04-07 01:39:36 +00:00
2fa58944fa
New radio, new calibration values.
...
Oh, and code to make the calibration easier/possible.
2013-04-07 00:17:31 +00:00
17a2289eff
Revert PID values. They were a bit too aggressive and unstable.
2013-02-04 15:32:29 +00:00
b7e7fea6ba
Add ESC calibration mode, activated by holding down the button at startup.
2012-12-10 23:20:14 +00:00
274805c2a0
Limit integral windup, some new PID values and linearise thrust.
2012-12-08 12:31:17 +00:00
999e129e2c
Improve handling of arming, providing LED blink codes if the arming fails.
...
Also, implement a software watchdog to make sure that the main real-time
modules are actually being run. Provide a panic facility, also giving blink
codes to indicate the panic reason.
2012-09-22 12:08:07 +00:00
e36ec4d5b1
Let's have an LED driving module so that we can output different patterns for
...
status indications etc.
2012-08-30 14:04:33 +00:00
3f12132231
Lots of development of new features. Radio input, motor output, PID control
...
loops, boot-time initialisation, option to run without attached UART.
And.. it flies!
2012-08-30 12:42:38 +00:00
2890007195
Take interleaved accelerometer and gyro readings, and integrate them into
...
a single attitude estimation.
A bunch of debug stuff, too.
2011-11-04 12:47:16 +00:00
62732758a8
Track gyro using a DCM.
...
This brings in an implementation of some general matrix manipulation routines,
not all of which are used at teh moment.
Output the DCM on the UART at 50Hz for the host to display it usefully.
2011-10-07 23:39:28 +00:00
6a700d0dbe
No point in calling event_dispatch() from the menu any more.
2011-06-04 20:57:13 +00:00
65b11ff92e
Use the timer to kick off WMP readings regularly.
2011-06-04 20:56:20 +00:00
fda1b2a672
Use events to invoke menu handling on UART receive. We now have a basic
...
main dispatch loop.
2011-06-04 19:41:12 +00:00
0562093ebb
Don't call event handlers for events which haven't been registered.
2011-06-04 19:31:24 +00:00
fa84a1b8bb
Change API for getch to make it the caller's responsibility to poll for
...
input, allowing it to do other stuff if it wants to.
2011-06-04 19:28:59 +00:00
9f79b3d82e
* Make total stack size available as a symbol
...
* Implement SWI handler to enable/disable interrupts
* Implement event system to deal with kicking non-interrupt code
2011-06-03 21:22:01 +00:00
0f508fb424
Offload I2C work onto interrupts. For now, we just spin while waiting
...
for the I2C activity to complete.
2011-05-26 01:57:16 +00:00
6a3c096bc5
Tidy up #ifdeffery for i2c speed
2011-05-23 21:44:25 +00:00
f0efc593ea
Use interrupts and buffer the UART receive side too.
2011-05-23 21:41:17 +00:00
4eaff797c9
* Use interrupts and buffering for UART TX
...
* Set up P0.26 as an output, driving the on-board LED
* Toggle the LED while waiting for UART input to demonstrate activity
2011-05-22 10:34:44 +00:00
e1b1b60a53
* Move UART code into its own file
...
* Set up vectored interrupt controller
* Set up timer interrupt
2011-05-21 22:26:19 +00:00
91c1c7e6be
More warnings courtesy of -Wextra
2011-05-18 14:47:56 +00:00
6e7ef6488f
Add script to test the benefit of various -O flags
2011-05-18 09:55:39 +00:00
4d37c82b12
* Allow COPTIM to be set outside Makefile
...
* Use -Wall -Werror
* Fix some warnings
2011-05-18 09:55:02 +00:00
b3f0bbf7c9
More hacking:
...
* initial Wii Motion+ support
* initial timer support
2011-05-15 22:22:50 +00:00
52e1c59a2e
Some progress on i2c control.
2011-05-09 13:41:53 +00:00
85d33abdd9
Silly interactive loop to test things out.
2011-05-04 22:50:57 +00:00
b7cb6a5bce
Configure the UART sufficiently to actually get the message out.
2011-05-04 21:27:17 +00:00
51190c4949
Remove commented out line
2011-05-04 00:35:42 +00:00
f5159013b3
Initial checkin. Basic build and runtime environment, prior to first
...
test on actual hardware.
2011-05-04 00:03:28 +00:00