Commit Graph
100 Commits
Author SHA1 Message Date
px4dev ef6c99c1ab Restructure the locking around SPI transfers 2014-07-06 11:40:28 -07:00
px4dev d2a2297a14 Fixes #1130 2014-07-06 11:24:39 -07:00
px4dev 0ef6605498 Fix packing of directory entries in the List reply 2014-06-08 10:13:55 -07:00
px4dev e890661900 Don't queue empty work items. 2014-06-07 14:46:46 -07:00
px4dev 99dfef357b fix extraction of path info from FTP request 2014-06-07 12:54:04 -07:00
px4dev 5d7ea2bdab Merge branch 'master' into mavlink-ftp 2014-06-07 10:54:17 -07:00
px4dev ef7c57f1ce Implement directory listing 2014-05-04 12:25:25 -07:00
px4dev 12390d7281 WIP: Mavlink file server 2014-05-04 11:19:26 -07:00
px4dev 08f1e6a9dc Fix base clock frequencies for timers 9/10/11 (not currently used).
Thanks to xiazibin@gmail.com for pointing these out.
2014-02-13 09:20:33 -08:00
px4dev dd432e6603 Remove the s.bus test loop... makes it very hard to update the firmware. 2014-02-12 22:11:09 -08:00
px4dev cec6b8925e Don't leave all JTAG off... it will make you very sad 2014-02-12 22:10:45 -08:00
px4dev ca2ad0051d Be more enthusiastic with the sbus enable pin. Still no love. 2014-02-12 00:48:53 -08:00
px4dev bc3f95fc07 Turn off JTAG completely in a vain attempt to get PB4 free for SBUS enable. 2014-02-12 00:48:15 -08:00
px4dev 0994412cca Fix the initialisation and operation of the PX4IO ADC - now RSSI and VSERVO voltages should be read correctly. 2014-01-22 23:52:06 -08:00
px4dev 1ac8501d95 Clear the screen more properly. 2014-01-22 23:52:06 -08:00
px4dev 978a234d29 Lock name should not equal locking function name. Urr. 2013-09-18 22:40:54 -07:00
px4dev 7e0da345f0 The parameter system is supposed to have a lock; implement one. 2013-09-18 21:47:29 -07:00
px4dev 2678aba9fe A bit more NuttX gdb/python tooling to recover an interrupted context. Needs more fleshing out. 2013-09-14 21:41:35 -07:00
px4dev 19fdaf2009 Use the generic device::SPI locking strategy. 2013-09-12 23:56:53 -07:00
px4dev cefc7ac00e Rework the ringbuffer class so that it's not templated, and refactor its clients so they aren't dancing around the linker anymore. 2013-09-12 00:53:08 +02:00
px4dev 1828b57c58 ringbuffer: added force() and use lockless methods
this adds force() which can be used for drivers wanting consumers to
get the latest data when the buffer overflows
2013-09-12 00:51:24 +02:00
px4dev 514d32e961 Cut down 'tests file' for debugging 2013-09-11 13:42:29 -07:00
px4dev ed4b34547c Make the init code compile if we don't have the granule allocator / dma allocator required 2013-09-11 13:42:29 -07:00
px4dev f49e444ce3 Defconfig hacks to get me a console. 2013-09-11 13:42:29 -07:00
px4dev bbac1445b0 Add DMA buffer allocation pool. 2013-09-11 13:42:29 -07:00
px4dev 8755d76d1b Hotfix - fault decode typo in ARMv7M macros 2013-09-11 08:56:45 -07:00
px4dev f9f41f5770 ringbuffer: added force() and use lockless methods
this adds force() which can be used for drivers wanting consumers to
get the latest data when the buffer overflows
2013-09-10 11:55:59 +02:00
px4dev fb57d5a186 Merge pull request #389 from davidbuzz/rgbfix
the "rgbled rgb X X X" command was broken, and would set green when you ...
2013-09-09 20:50:33 -07:00
px4dev 07f7fd1585 Fix the firmware build rules so that we always know how to build all the firmwares and thus we can have dependencies between FMU and IO firmware handled a little more sensibly. 2013-08-25 22:26:47 -07:00
px4dev 54711bbcfe In order to save people from themselves, force a given FMU version to depend on the corresponding _default IO version. This avoids the risk of building a new FMU ROMFS with an old IO firmware, at the cost of the sanity of anyone reading this. 2013-08-23 00:23:32 -07:00
px4dev f70a4b3b70 Add support for adding extra files to the ROMFS from the config.
If there is an IO firmware image already built when we build the corresponding FMU ROMFS, copy it into the ROMFS. Note - due to there being no fixed build ordering, to be certain that you have the most current IO firmware, you must build the IO firmware explicitly first.
2013-08-22 23:47:55 -07:00
px4dev d90345a166 Some early gdb/Python macros for working with NuttX.
Note; only tested with gdb 7.6. Will definitely not work with the stock PX4 toolchain's gdb.
2013-08-17 21:48:54 -07:00
px4dev 50cf1c01b7 Compile fix. 2013-08-14 22:29:36 -07:00
px4dev 33863165b2 Merge commit 'de749a3602423f5ee6ca56f3cf2dfff04e31ec6d' (kconfig-cleanup) into fmuv2_bringup 2013-08-14 21:23:00 -07:00
px4dev de749a3602 Stop expecting CONFIG_HRT_anything since we aren't baking it into the NuttX config anymore. 2013-08-13 00:34:41 -07:00
px4dev 56d355414c Fix handling of board config files. Treat CONFIG_BOARD like CONFIG_ARCH in the toolchain configuration. 2013-08-13 00:34:11 -07:00
px4dev b6676f6cb8 NuttX is confused when it doesn't know what board it's building for - since we don't tell it in the config anymore, we need to pass it a hint. 2013-08-12 23:54:35 -07:00
px4dev 60275e1ae6 Clean the FMUv1 config through menuconfig. 2013-08-12 21:59:10 -07:00
px4dev 5e2d676173 Remove our depdenency on CONFIG_ARCH_BOARD_* coming from <nuttx/config.h> 2013-08-12 21:57:11 -07:00
px4dev c4498ce9a3 Add a 'menuconfig' target that makes it possible to use the NuttX menuconfig tool on the PX4 config files. 2013-08-12 21:56:20 -07:00
px4dev f36a2ff45a Add a 'menuconfig' target that makes it possible to use the NuttX menuconfig tool on the PX4 config files. 2013-08-11 14:00:09 -07:00
px4dev ec2e02d50e Fix CAN2 pinout selection thanks to heads-up from Joe van Niekerk 2013-08-05 21:09:18 -07:00
px4dev 657a6dad2c Merge branch 'fmuv2_bringup' of https://github.com/cvg/Firmware_Private into fmuv2_bringup 2013-08-05 21:08:27 -07:00
px4dev 9ca5cf3108 Fix CAN2 pinout selection thanks to heads-up from Joe van Niekerk 2013-08-05 21:05:53 -07:00
px4dev f8951759f8 Add a top-level Makefile rule for building "everything" as a test. 2013-08-04 19:50:23 -07:00
px4dev 1acbbe46d1 Make it possible to create a cdev without automatically creating a device node. 2013-08-04 19:49:19 -07:00
px4dev 1fb4705ab7 Add size and flush methods to the ringbuffer class. 2013-08-04 19:48:46 -07:00
px4dev 4b4f33e6a4 Add direct-access methods to the base Device class, so that there's a common way of talking to drivers regardless of which of the specialised classes they derive from.
Make the Device destructor public and virtual, so that arbitrary devices can be deleted. Likewise for classes that derive from it.

Make Device::init public so that arbitrary devices can be initialised after being returned by factories.
2013-08-04 19:48:20 -07:00
px4dev 567f621754 Fix an issue with the pwm_servo driver when using one of the STM32 advanced timers. 2013-08-04 19:43:05 -07:00
px4dev c33048b521 Add the ability to cancel a begin/end perf counter if the begin turns out to have been in error. 2013-08-04 19:42:16 -07:00
px4dev 97e4909d9e Improvements to the HX stream protocol implementation. 2013-08-04 19:40:57 -07:00
px4dev b911d37975 Merge a path definition from the mainline. 2013-08-04 19:37:08 -07:00
px4dev 64e856276e Merge branch 'fmuv2_bringup' of https://github.com/cvg/Firmware_Private into fmuv2_bringup 2013-08-04 15:01:11 -07:00
px4dev 1cc6235e77 Merge branch 'master' into fmuv2_bringup 2013-08-04 10:45:07 -07:00
px4dev e931d3b9cd Add an option to the systemreset() call and to the reboot command (-b) to reboot into the bootloader.
The system will remain in the bootloader until it's reset, or until an upload is completed.
2013-08-03 22:35:18 -07:00
px4dev fbd5aae8c6 Revert "Merged USB ID changes to match bootloader"
This reverts commit 8e599e4a3c.
2013-08-03 19:41:37 -07:00
px4dev 02f5b79948 Try to save our sanity a bit and use the generic ringbuffer class rather than re-implementing the wheel. 2013-08-03 19:03:24 -07:00
px4dev a3ab88872c Add some more useful methods to the ringbuffer class. 2013-08-03 19:02:54 -07:00
px4dev 42f2794dee Merge branch 'master' into mpu6k_queue 2013-08-03 18:29:26 -07:00
px4dev 234ad24081 Simple ring-buffer template class, because re-implementing the wheel in every driver is silly. 2013-08-03 18:23:48 -07:00
px4dev ce2fa29fe3 Add a missing module -> module makefile dependency 2013-08-03 10:06:34 -07:00
px4dev c14a71c095 Move NuttX configurations out of the NuttX tree proper. This reduces the diffs we have to carry against the NuttX upstream repo to just our local patches to the NuttX code itself. 2013-08-03 10:06:10 -07:00
px4dev ecc7bc5bca Clean out unused trash from the NuttX configs. 2013-08-02 23:11:04 -07:00
px4dev 9d6ec6b365 Restructure things so that the PX4 configs move out of the NuttX tree, and most of the PX4-specific board configuration data moves out of the config and into the board driver.
Rename some directories that got left behind in the great board renaming.
2013-08-02 22:34:55 -07:00
px4dev feee1ccc65 Remove some timer reload events; these seem to break PWM output on IO. 2013-07-30 22:47:17 -07:00
px4dev b85d74336d Add missing 'fi' at the end of rc script; if you had a microSD card that set MODE to something other than autostart the result was a prompt that ignored your commands. 2013-07-30 22:46:41 -07:00
px4dev 57cbf724f1 Fix the clock enable register for FMUv2 PWM outputs 1-4.
Teach the stm32 pwm driver about the MOE bit on advanced timers.
2013-07-29 23:13:46 -07:00
px4dev 33e33d71b8 Just the changes required to avoid SPI bus conflicts for MS5611 2013-07-24 22:53:10 -07:00
px4dev d57d12818a Revert "Disable interrupts during ms5611 SPI transactions to prevent interruption by sensor drivers polling other sensors from interrupt context."
This reverts commit 31ded04c80.
2013-07-24 22:51:27 -07:00
px4dev 31ded04c80 Disable interrupts during ms5611 SPI transactions to prevent interruption by sensor drivers polling other sensors from interrupt context. 2013-07-20 19:09:59 -07:00
px4dev f6daafba03 Revert "Changed the MS5611 from the workq to hrt_call_every implementation, this seems to solve the SPI chip select overlaps"
This reverts commit c93e743374.
2013-07-20 18:51:46 -07:00
px4dev cfbdf7c903 Revert "Corrected the interval of the MS5611"
This reverts commit 094ff1261a.
2013-07-20 18:51:25 -07:00
px4dev 5679a1b2b1 Fix handling of register read operation errors. 2013-07-17 09:19:17 -07:00
px4dev dca9019f75 Merge branch 'master' of https://github.com/PX4/Firmware into fmuv2_bringup 2013-07-14 13:04:44 -07:00
px4dev 6cf1208312 Don't build interface drivers we don't have configs for. Make the interface drivers build.
Change the way we handle the prom buffer so that we can init the interface before constructing the driver.
2013-07-14 12:42:51 -07:00
px4dev b11e05d614 Don't build interface drivers we don't have config for. 2013-07-14 12:40:26 -07:00
px4dev f8f6a43fea Use common, board-type-agnostic code to allocate the PX4IO interface. 2013-07-14 11:50:35 -07:00
px4dev 5350c2be09 Refactor MS5611 driver to use interface nubs for the I2C and SPI versions of the chip. This reduces the amount of duplicated code. 2013-07-14 11:45:21 -07:00
px4dev 6c7f1e883e Direct-access device functions return errors directly.
Move to using ::init rather than ::probe in keeping with device changes.
2013-07-14 11:44:46 -07:00
px4dev 12b84597d8 Direct access functions return errors directly, not touching errno. 2013-07-14 11:43:43 -07:00
px4dev 7c83e928a5 destructors for I2C and SPI should be virtual. 2013-07-14 11:42:56 -07:00
px4dev 28f996b026 rename the px4io serial perf counters so it's clearer what they belong to 2013-07-13 21:34:31 -07:00
px4dev 4f0ae1cdea Build the px4io interfaces on top of the Device direct-access API. 2013-07-13 21:00:27 -07:00
px4dev 26eb0b9d72 Move the direct-access methods from CDev to Device… makes more sense that way. 2013-07-13 21:00:03 -07:00
px4dev e67f6a51a3 Make px4io driver filenames less ambiguous. 2013-07-13 20:13:53 -07:00
px4dev c459901f26 Let's have some direct-access I/O methods as well. 2013-07-11 23:52:36 -07:00
px4dev 95f59f521d Add builtin command dependency on module makefiles, since they can also create / remove commands 2013-07-11 23:23:58 -07:00
px4dev 16cb0a793d Some more v2 pin / gpio configs missed in the previous commit 2013-07-11 23:23:10 -07:00
px4dev f5b91e109d More GPIO and general pin assignment fixes. 2013-07-10 23:50:37 -07:00
px4dev e2458677c9 Tweak IO serial packet error handling slightly; on reception of a serial error send a line break back to FMU. This should cause FMU to stop sending immediately.
Flag these cases and discard the packet rather than processing it, rather than simply dropping the received packet and letting FMU time out.
2013-07-07 20:42:03 -07:00
px4dev 0efb1d6ceb Fix the px4io serial port device name now that we're not using UART8 as the console. 2013-07-07 18:50:04 -07:00
px4dev b4029dd824 Pull v2 pieces up to build with the merge 2013-07-07 17:53:55 -07:00
px4dev 43f1843cc7 Merge branch 'master' of https://github.com/PX4/Firmware into fmuv2_bringup 2013-07-07 12:22:56 -07:00
px4dev 9fe257c4d1 A very slender config just for test builds. 2013-07-07 12:13:40 -07:00
px4dev 8fa226c909 Tweak protocol register assignments and add new registers to accommodate differences in IOv2. 2013-07-06 23:59:35 -07:00
px4dev a65a1237f0 Optimise the RC input fetch for <= 9ch transmitters; this eliminates one read per cycle from IO in the common case. 2013-07-06 12:29:14 -07:00
px4dev 17f9c7d15c Crank up the test speed for 'px4io iftest 1' 2013-07-06 12:28:01 -07:00
px4dev 4d400aa7e7 Enable UART error handling on PX4IO. 2013-07-06 12:27:37 -07:00
px4dev 87a4f1507a Move the common definitions for the PX4IO serial protocol into the shared header. 2013-07-06 00:16:37 -07:00
px4dev 19b2e1de85 Copy the correct number of bytes back for register read operations. Basic PX4IO comms are working now. 2013-07-06 00:00:44 -07:00