nuttx-apps/ChangeLog.txt
2016-06-24 11:06:52 -06:00

1658 lines
89 KiB
Plaintext
Raw Blame History

5.19 2011-03-12 Gregory Nutt <gnutt@nuttx.org>
* Initial version of the apps/ directory was released as contributed by
Uros Platise.
6.0 2011-03-21 Gregory Nutt <gnutt@nuttx.org>
* README.txt -- README cosmetics
* hello/ -- hello world minor changes
* Makefile -- Makefile cosmetics (I am slowly adding the Darjeeling JVM)
* Make.defs -- New file adds common make definitions for applications.
* hello/Makefile -- Now uses new Make.defs definitions. Added README.txt.
* apps/poweroff -- New application to turn off board power.
* Moved NSH library, netutils, and examples from the nuttx/ directory to
the apps/ directory
* Moved exec_nuttapp machinery into the nuttapp/ directory.
6.1 2011-04-10 Gregory Nutt <gnutt@nuttx.org>
* Creation of auto-generated header files now occurs during the context
build phase.
* Added sdcard insert and eject, nsh command '?' and some code remarks
* Renamed nuttapp to namedapp
* namedapp/binfs.c -- Create a tiny filesystem that can be used
to show the internal named apps under /bin.
* Numerous fixes to build system required to support building with native
Windows toolchain.
6.2 2011-05-06 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/nxffs: Add a test a a configuration that will be used to
verify NXFFS.
6.3 2011-05-15 Gregory Nutt <gnutt@nuttx.org>
* apps/interpreter: Add a directory to hold interpreters. The Pascal add-
on module now installs and builds under this directory.
* apps/interpreter/ficl: Added logic to build Ficl (the "Forth Inspired
Command Language"). See http://ficl.sourceforge.net/.
* apps/netutils/dhcpc, dhcpcd, and tftp. If these directories are included
in the configuration but CONFIG_NET_UDP is disable (which is not very wise),
then a make error occurs because tools/mkdep.sh is called with no files.
* system/free: Move Uros' custom free command from vsn/free
* system/install: Add a new install command submitted by Uros Platise.
* examples/rgmp. Add a placeholder for an RGMP build example.
RGMP is a project for running GPOS and RTOS simultaneously on
multi-processor platforms. See http://rgmp.sourceforge.net/wiki/index.php/Main_Page
for further information about RGMP. NOTE: This is an empty example
on initial check-in.
6.4 2011-06-06 Gregory Nutt <gnutt@nuttx.org>
* nshlib/nsh_netcmds.c: If a network device name and IP address are provided
with the ifconfig command, then this command will now set the network address.
(Contributed by Yu Qiang).
* netutils/ftpc: A library to support client-side FTP.
* examples/ftpc: A simple add-on to the NSH. From NSH, you can start
this simple FTP shell to transfer files to/from a remote FTP server.
6.5 2011-06-21 Gregory Nutt <gnutt@nuttx.org>
* netutils/ftpc: Simpflication and size reduction.
6.6 2011-07-11 Gregory Nutt <gnutt@nuttx.org>
* Make.defs, namedapp/namedapp.c: Several structural changes made to get a
clean compile under the ez80 ZDS-II toolchain (no design changes).
* apps/examples/buttons: Add a test for the new standardized button interfaces
* apps/examples/nxtext: Add another NX graphics test. This one focus on
placing text on the background while pop-up windows occur. Text should
continue to update normally with or without the popup windows present.
6.7 2011-08-02 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/nx and nxtext: These examples can now be built as NSH
"built-in" commands.
* apps/examples/nxhello: The simplest graphics example: It just says
"Hello, World!" in the center of the display. This example can also be
built as an NSH "built-in" command.
* apps/examples/nx, ntext, and nxhello: All updated to use the new
NuttX font interfaces.
* apps/examples/nximage: Another super simple graphics example: It just puts
the NuttX logo in the center of the display. This example can also be
built as an NSH "built-in" command.
* apps/examples/usbstorage: Can now be built as two NSH "built-in" commands:
'msconn' will connect the USB mass storage device; 'msdis' will disconnect
the USB storage device.
* apps/examples/nx*: All NX header files moved from nuttx/include/nuttx to
nuttx/include/nuttx/nx.
* apps/examples/usbstorage: Added instrumentation to monitor memory usage
to check for memory leaks in the USB storage driver.
* apps/examples/nxhello/nxhello_bkgd.c: Fix handling of allocated glyph
memory.
6.8 2011-08-11 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/nxlines: Added a test for NX line drawing capabilities.
6.9 2011-09-11 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/nxlines: Extend the line drawing text to include drawing
of circles.
* apps/system/i2c: Add an I2C test tool that should help to bring up I2C
devices (when it is fully functional).
* apps/nshlib/nsh_timcmds.c: Add the date command that can be used to
show or set the time (only if CONFIG_RTC is set).
6.10 2011-10-06 Gregory Nutt <gnutt@nuttx.org>
* apps/system/i2c: Add repitition and address auto-incrementing so that
and command can be executed numerous times. Add a new verify command
that will write to a register, read from register, and verify that
returned value.
* apps/graphics/tiff: Add a library that can be used to create TIFF files.
* apps/examples/tiff: Add a unit test for the TIFF file creation logic
* apps/examples/lcdrw: Add a test to verify if you can or can or read
data from an LCD correctly.
* apps/examples/usbterm: A USB terminal example.. more of a USB chat or
serial bridge: Data received on local console echoed via USB serial;
data received on USB serial is echoed on the local console.
* apps/examples/touchscreen: Add a simple, generic test for any
touschscreen driver.
* Makefile: The apps/ Makefile now checks for an apps/external directory
or symbolic link. If such a directory/link exists (and has a Makefile),
it will be added to the apps/ build. This allows external directories
to be included into the apps/ build by simply creating a symbolic link.
6.11 2011-11-12 Gregory Nutt <gnutt@nuttx.org>
(No major changes from 6.10)
6.12 2011-12-06 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/buttons: The button test can now be executed as an NSH
built in command.
6.13 2012-12-26 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/dhcpd: May now be built as an NSH built-in application
by setting CONFIG_NSH_BUILTIN_APPS.
* apps/netutils/dhcpd/dhcpd.c: Fix several problems using host order address
where network addresses expected (and vice versa).
* apps/examples/nettest: May now be built as an NSH built-in application
by setting CONFIG_NSH_BUILTIN_APPS.
* apps/examples/nettest: Correct some build issues with the nettest is
built for performance evaluation.
* apps/examples/adc: Add a very simple test to drive and test an ADC
driver.
* apps/examples/pwm: Add an NSH PWM command to drive and test a PWM
driver.
* apps/examples/can: Add an NSH CAN command to drive and test a CAN
driver in loopback mode.
6.14 2012-01-15 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/buttons/main.c: The test needs to call up_buttoninit() to
properly configure the button interrupt GPIOs.
* apps/examples/pwm: Add support to test the pulse count option recently
added to the PWM interface.
6.15 2012-02-12 Gregory Nutt <gnutt@nuttx.org>
* apps/nshlib/nsh_serial.c and nsh_usbdev.c: If NuttX is configured to use
a USB serial console, then NSH needs to wait until the USB console is
connected and available.
* apps/examples/composite: Add a test of the USB composite device.
* apps/examples/Telnetd: Move the tiny uIP shell example from
netutils/Telnetd to examples/Telnetd. Enhanced the Telnetd daemon so that
it supports Telnetd via a TTY device driver: A new TTY device driver is
created when each new Telnet connection is created. The shell thread
is started with stdin, stdout, and stderr mapped to the TTY device.
* netutils/Telnetd: The old uIP Telnet demo is gone. In its place is a new
Telnet infrastructure. The new Telnet daemon creates sessions that are
"wrapped" as character devices and mapped to stdin, stdout, and stderr.
Now the Telnet session can be inherited by spawned tasks.
* examples/Telnetd: Add a test for the new Telnet daemon.
* examples/Telnetd/telnetd_driver.c: Move the internal socket structure from
the daemon's socket array into the driver's state data so that it will be
independent from the the Telnetd daemon.
* apps/system/readline: Moved the old nuttx/lib/stdio/lib_fgets.c here
and renamed it as readline(). The old fgets was simplied and the overloaded
readline functionality was removed.
* apps/netutils/ftpd: Add an FTPD server (does not even compile on initial
checkin).
* apps/examples/ftpd: Add a test for the FTPD server (untest on initial
check-in).
* apps/nshlib/nsh_fscmds.c: Add support for a 'dmesg' command that will
dump the system log if CONFIG_SYSLOG is selected.
6.16 2012-03-10 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/qencoder: Add a quadrature driver test.
* apps/examples/ostest/fpu.c: Add a test to verify that FPU registers
are properly saved and restored on context switches.
* apps/system/readline/readline.c: readline() will now treat either a
backspace or a DEL character as a backspace (i.e., deleting the character
to the left of the cursor). This makes NSH less dependent on particular
keyboard mappings of the Backspace key. Submitted by Mike Smith.
* apps/system/cdcacm: An example that illustrates how the CDC/ACM driver
may to connected and disconnected through software control.
* apps/examples/nsh/nsh_main.c: If available, call up_cxxinitialize() to
initialize all statically defined C++ classes.
* apps/nshlib: Now supports a USB serial device for NSH console I/O. This
allows NSH to be used on boards that have USB but no serial connectors.
6.17 2012-04-14 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/can: Add conditional compilation so that the test can be
configured to only send messages or to only receive messages. This will
let the test work in other modes than simple loopback testing.
* apps/examples/hello and apps/examples/ostest: Can now be built as NSH
built-int functions.
* vsn/hello: Removed. The modified apps/examples/hello is enough "Hello,
World!"
* apps/examples/nxconsole: Add a test of the NX console device.
* apps/examples/nxconsole: The NX console example now supports running
the NuttShell (NSH) within an NX window.
* apps/system/readline: Now uses standard definitions from
include/nuttx/ascii.h and vt100.h
* Kconfig, */Kconfig: Added skeleton Kconfig files to all directories that
may need them.
6.18 2012-05-19 Gregory Nutt <gnutt@nuttx.org>
* Kconfig: Continued Kconfig file updates (no longer tracking on a per-file
basis in the ChangeLog)
* apps/examples/watchdog: Add a watchdog timer example.
* apps/examples/tiff: Fix wrong path used for temporary file.
* apps/examples/touchscreen: Standardize the board-specific, touchscreen
initialization interfaces.
6.19 2012-06-15 Gregory Nutt <gnutt@nuttx.org>
* apps/nshlib/nsh_usbdev.c: Add the capability to use an arbitrary USB
device as the console (not necessarily /dev/console). This is a useful
option because then you can still use the serial console to debug with.
* apps/nshlib/nsh_usbdev.c: User now has to press ENTER 3 times before
USB console will start. Otherwise, the USB console starts before there
is anyone at the other end to listen.
* apps/nshlib/nsh_usbdev.c and nsh_consolemain.c: Add support for the USB
capability when a USB console is used.
* apps/nshlib/nsh_fscmds.c: Add the 'mv' command
6.20 2012-07-12 Gregory Nutt <gnutt@nuttx.org>
* namedapp/exec_namedapp.c - Correct an error when round robin scheduling
is enabled. The priority of the new, named application was erroneously
being set to the priority of the parent thread; losing its configured
priority. Reported by Mike Smith.
6.21 2012-08-25 Gregory Nutt <gnutt@nuttx.org>
* apps/include/: Stylistic clean-up of all header files.
* apps/modbus and apps/include/modbus: A port of freemodbus-v1.5.0
has been added to the NuttX apps/ source tree.
* apps/examples/modbus: A port of the freemodbus-v1.5.0 "demo"
program that will be used to verify the FreeModBus port
* apps/modbus: Don't use strerror(). It is just too big.
* apps/modbus: Add CONFIG_MB_TERMIOS. If the driver doesn't support
termios ioctls, then don't bother trying to configure the baud, parity
etc.
* apps/nshlib: If waitpid() is supported, then NSH now catches the
return value from spawned applications (provided by Mike Smith)
* apps/nshlib: Lock the scheduler while starting built-in applications
in order to eliminate race conditions (also from Mike Smith).
* apps/examples/adc, pwm, and qencoder: Add support for testing
devices with multiple ADC, PWM, and QE devices.
* apps/nshlib/nsh_mntcmds.c: Separated mount-related commands out of
nsh_fscmds.c. Extended to the mount command so that if no arguments
are provided, then the current mountpoints are enumerated.
* apps/nshlib/nsh_mntcmds.c: Add an NSH df command to list the
properties of mounted file systems.
* apps/nshlib/nsh_parse.c: Extend help command options. 'help' with
no arguments outputs a short list of commands. With -v lists all
command line details. A command name can be added to just get
help on one command.
* system/readline.c: If character input/output is interrupted by a
signal, then readline() will try the read/write again.
* apps/*/Make.defs: Numerous fixes needed to use the automated
configuration (from Richard Cochran).
6.22 2012-09-29 Gregory Nutt <gnutt@nuttx.org>
* apps/netutils/thttpd/thttpd_cgi.c: Missing NULL in argv[]
list (contributed by Kate).
* apps/nshlib/nsh_parse.c: CONFIG_NSH_DISABLE_WGET not CONFIG_NSH_DISABLE_GET
in one location (found by Kate).
* apps/examples/ostest/prioinherit.c: Limit the number of test
threads to no more than 3 of each priority. Bad things happen
when the existing logic tried to created several hundred test
treads!
* apps/nshlib/nsh.h: Both CONFIG_LIBC_STRERROR and CONFIG_NSH_STRERROR
must be defined to use strerror() with NSH.
* apps/examples/*/*_main.c, system/i2c/i2c_main.c, and others: Added
configuration variable CONFIG_USER_ENTRYPOINT that may be used to change
the default entry from user_start to some other symbol. Contributed by
Kate.
* apps/netutils/webserver/httpd/c: Fix a typo that as introduced in
version r4402: 'lese' instead of 'else' (Noted by Max Holtzberg).
* tools/mkfsdata.pl: The uIP web server CGI image making perl script was
moved from apps/netutils/webserver/makefsdata to nuttx/tools/mkfsdata.pl
(Part of a larger change submitted by Max Holtzberg).
* apps/netutils/webserver, apps/examples/uip, and apps/include/netutils/httpd.h:
The "canned" version of the uIP web servers content that was at
netutils/webserver/httpd_fsdata.c has been replaced with a dynamically
built configuration located at apps/examples/uip (Contributed by
Max Holtzberg).
* apps/netutils/webserver: Several inenhancements from Kate including the
ability to elide scripting and SERVER headers and the ability to map
files into memory before transferring them.
* apps/netutils/webserver: Add ability to map a URL to CGI function.
Contributed by Kate.
* apps/nshlib/nsh_mntcmds.c: The changes of 6.21 introduced holes in the
error handling: Now the number of arguments to mount can be 0 or 4.
Additional parameter checking is required to prevent mysterious errors
(submiteed by Kate).
* apps/netutils/webserver/httpd_mmap.c: Fix errors when the mmap()
length is zero (submitted by Kate).
* apps/netutils/webserver/httpd_sendfile.c: Add and option,
CONFIG_NETUTILS_HTTPD_SENDFILE to transfer files using the NuttX
sendfile() interface.
* apps/netutils/discover: A UDP network discovery utility contributed
by Max Holtzberg.
* apps/examples/discover: A test example for the UDP network discovery
utility (also contribed by Max Holtzberg).
* apps/examples/*/main.c: Too many files called main.c. Each renamed
to something unique so that they will not collide in the archive.
* apps/netutils/xmlrpc: The Embeddable Lightweight XML-RPC Server
discussed at http://www.drdobbs.com/web-development/\
an-embeddable-lightweight-xml-rpc-server/184405364. Contributed by
Max Holtzberg.
* apps/netutils/uip_listenon.c: Logic in uip_server.c that creates
the listening socket was moved to this new file to support re-use.
Contributed by Kate.
* apps/netutils/webserver/httpd.c: The option CONFIG_NETUTILS_HTTPD_SINGLECONNECT
can now be used to limit the server to a single thread. Option
CONFIG_NETUTILS_HTTPD_TIMEOUT can be used to generate HTTP 408 errors.
Both from Kate.
* apps/netutils/webserver/httpd.c: Improvements to HTTP parser from
Kate.
* apps/netutils/webserver/httpd.c: Add support for Keep-alive connections
(from Kate).
* apps/NxWidget/Kconfig: This is a kludge. I created this NxWidgets
directory that ONLY contains Kconfig. NxWidgets does not live in
either the nuttx/ or the apps/ source trees. This kludge makes it
possible to configure NxWidgets/NxWM without too much trouble (with
the tradeoff being a kind ugly structure and some maintenance issues).
* apps/examples/Make.defs: Missing support for apps/examples/watchdog.
* apps/NxWidgets/Kconfig: Add option to turn on the memory monitor
feature of the NxWidgets/NxWM unit tests.
6.23 2012-11-05 Gregory Nutt <gnutt@nuttx.org>
* vsn: Moved all NSH commands from vsn/ to system/. Deleted the vsn/
directory.
* Makefile: Change order of includes when CONFIG_NEWCONFIG=y. In
that case, namedapp must be included first so that the namedapp
context is established first. If the namedapp context is established
later, it will overwrite any existing namedapp_list.h and nameapp_proto.h
files.
* CONFIG_EXAMPLES_*: To make things consistent, changed all occurrences
of CONFIG_EXAMPLE_* to CONFIG_EXAMPLES_*.
* Kconfig: Fleshed out apps/examples/adc/Kconfig and apps/examples/wget/Kconfig.
There are still a LOT of empty, stub Kconfig files.
* Kconfig: Fleshed out apps/examples/buttons/Kconfig. There are still a LOT
of empty, stub Kconfig files.
* apps/netutils/webserver/httpd.c: Fix a bug that I introduced in
recent check-ins (Darcy Gong).
* apps/netutils/webclient/webclient.c: Fix another but that I introduced
when I was trying to add correct handling for loss of connection (Darcy Gong)
* apps/nshlib/nsh_telnetd.c: Add support for login to Telnet session via
username and password (Darcy Gong).
* apps/netutils/resolv/resolv.c (and files using the DNS resolver): Various
DNS address resolution improvements from Darcy Gong.
* apps/nshlib/nsh_netcmds.c: The ping command now passes a maximum round
trip time to uip_icmpping(). This allows pinging of hosts on complex
networks where the ICMP ECHO round trip time may exceed the ping interval.
* apps/examples/nxtext/nxtext_main.c: Fix bad conditional compilation
when CONFIG_NX_KBD is not defined. Submitted by Petteri Aimonen.
* apps/examples/nximage/nximage_main.c: Add a 5 second delay after the
NX logo is presented so that there is time for the image to be verified.
Suggested by Petteri Aimonen.
* apps/Makefile: Small change that reduces the number of shell invocations
by one (Mike Smith).
* apps/examples/elf: Test example for the ELF loader.
* apps/examples/elf: The ELF module test example appears fully functional.
* apps/netutils/json: Add a snapshot of the cJSON project. Contributed by
Darcy Gong.
* apps/examples/json: Test example for cJSON from Darcy Gong
* apps/nshlib/nsh_netinit.c: Fix static IP DNS problem (Darcy Gong)
* apps/netutils/resolv/resolv.c: DNS fixes from Darcy Gong.
* COPYING: Licensing information added.
* apps/netutils/codec and include/netutils/urldecode.h, base64.h, and md5.h:
A port of the BASE46, MD5 and URL CODEC library from Darcy Gong.
* nsnlib/nsh_codeccmd.c: NSH commands to use the CODEC library.
Contributed by Darcy Gong.
* apps/examples/wgetjson: Test example contributed by Darcy Gong
* apps/examples/cxxtest: A test for the uClibc++ library provided by
Qiang Yu and the RGMP team.
* apps/netutils/webclient, apps/netutils.codes, and apps/examples/wgetjson:
Add support for wget POST interface. Contributed by Darcy Gong.
* apps/examples/relays: A relay example contributed by Darcy Gong.
* apps/nshlib/nsh_netcmds: Add ifup and ifdown commands (from Darcy
Gong).
* apps/nshlib/nsh_netcmds: Extend the ifconfig command so that it
supports setting IP addresses, network masks, name server addresses,
and hardware address (from Darcy Gong).
6.24 2012-12-20 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/ostest/roundrobin.c: Replace large tables with
algorithmic prime number generation. This allows the roundrobin
test to run on platforms with minimal SRAM (Freddie Chopin).
* apps/nshlib/nsh_dbgcmds.c: Add hexdump command to dump the contents
of a file (or character device) to the console Contributed by Petteri
Aimonen.
* apps/examples/modbus: Fixes from Freddie Chopin
* apps/examples/modbus/Kconfig: Kconfig logic for FreeModBus contributed
by Freddie Chopin.
* Makefile, */Makefile: Various fixes for Windows native build. Now uses
make foreach loops instead of shell loops.
* apps/examples/elf/test/*/Makefile: OSX doesn't support install -D, use
mkdir -p then install without the -D. From Mike Smith.
* apps/examples/relays/Makefile: Reduced stack requirement (Darcy Gong).
* apps/nshlib and apps/netutils/dhcpc: Extend the NSH ifconfig command plus
various DHCPC improvements(Darcy Gong).
* apps/nshlib/nsh_apps.c: Fix compilation errors when CONFIG_NSH_DISABLEBG=y.
From Freddie Chopin.
* Rename CONFIG_PCODE and CONFIG_FICL as CONFIG_INTERPRETERS_PCODE and
CONFIG_INTERPRETERS_FICL for consistency with other configuration naming.
* apps/examples/keypadtest: A keypad test example contributed by Denis
Carikli.
* apps/examples/elf and nxflat: If CONFIG_BINFMT_EXEPATH is defined, these
tests will now use a relative path to the program and expect the binfmt/
logic to find the absolute path to the program using the PATH variable.
6.25 2013-02-01 Gregory Nutt <gnutt@nuttx.org>
* Makefiles: Removed dependency of distclean on clean in most top-level
files. It makes sense for 'leaf' Makefiles to have this dependency,
but it does not make sense for upper-level Makefiles.
* apps/namedapp/: Renamed to builtins in preparation for another change.
* .context: Removed the .context kludge. This caused lots of problems
when changing configurations because there is no easy way to get the
system to rebuild the context. Now, the context will be rebuilt
whenever there is a change in either .config or the Makefile.
* apps/builtin/registry: Updated new built-in registration logic to handle
cases where (1) old apps/.config is used, and (2) applications ared
removed, not just added.
* apps/examples/nettest/Makefile: Fix an error that crept in during
some of the recent, massive build system changes.
* apps/builtin/Makefile: Need to have auto-generated header files
in place early in the dependency generation phase to avoid warnings.
It is not important if they are only stubbed out header files at
this build phase.
* apps/examples/hidbkd: Now supports decoding of encoded special keys
if CONFIG_EXAMPLES_HIDKBD_ENCODED is defined.
* apps/examples/hidbkd: Add support for decoding key release events
as well. However, the USB HID keyboard drier has not yet been
updated to detect key release events. That is kind of tricky in
the USB HID keyboard report data.
* apps/examples/wlan: Remove non-functional example.
* apps/examples/ostest/vfork.c: Added a test of vfork().
* apps/exampes/posix_spawn: Added a test of posix_spawn().
* apps/examples/ostest: Extend signal handler test to catch
death-of-child signals (SIGCHLD).
* apps/examples/ostest/waitpid.c: Add a test for waitpid(), waitid(),
and wait().
* builtin/binfs.c: Add hooks for dup() method (not implemented).
* builtin/exec_builtin.c, nshlib/nsh_parse.c, and nshlib/nsh_builtin.c:
NSH now supports re-direction of I/O to files (but still not from).
* builtin/binfs.c: Greatly simplified (it is going to need to be
very lightweight). Now supports open, close, and a new ioctl to recover
the builtin filename. The latter will be needed to support a binfs
binfmt.
* builtin/binfs.c: Move apps/builtin/binfs.c to fs/binfs/fs_binfs.c
CONFIG_APPS_BINDIR rename CONFIG_FS_BINFS
* apps/include/builtin.h: Some of the content of
apps/include/apps.h moved to include/nuttx/binfmt/builtin.h.
apps/include/apps.h renamed builtin.h
* apps/builtin/exec_builtins.c: Move builtin
utility functions from apps/builtin/exec_builtins.c to
binfmt/libbuiltin/libbuiltin_utils.c
* apps/nshlib/nsh_mountcmds.c: The block driver/source
argument is now optional. Many files systems do not need
a source and it is really stupid to have to enter a bogus
source parameter.
* apps/nshlib/nsh_fileapp.c: Add the ability to execute a file
from a file system using posix_spawn().
* apps/builtin/: Extensions from Mike Smith.
* apps/examples/ftpd/Makefile: Name ftpd_start is not the name of
the entrypoint. Should be ftpd_main (from Yan T.)
* apps/netutils/telnetd/telnetd_driver: Was stuck in a loop if
recv[from]() ever returned a value <= 0.
* apps/examples/nettest and poll: Complete Kconfig files.
* apps/examples/ostest/waitpid.c: Need to use WEXITSTATUS()
to decode the correct exit status.
* apps/system/usbmonitor: A daemon that can be used to monitor USB
trace outpout.
* apps/nshlib/nsh_usbdev.c, nsh_consolemain.c, nsh_session.c, nsh_script.c:
Add support for a login script. The init.d/rcS script will be executed
once when NSH starts; the .nshrc script will be executed for each session:
Once for serial, once for each USB connection, once for each Telnet
session.
* apps/system/readline: Correct readline() return value. Was not
any returning special values when end-of-file or read errors
occur (it would return an empty string which is not very useful).
6.26 2013-03-15 Gregory Nutt <gnutt@nuttx.org>
* apps/builtin/exec_builtin.c: Now uses task_spawn() to start
builtin applications.
* Type of argv has changed from const char ** to char * const *
* apps/nshlib/nsh_parse.c: Fix memory lead: Need to detach after
creating a pthread.
* apps/examples and nshlib: Change name of _TCB to struct tcb_s to
match NuttX name change.
* apps/examples/ostest/restart.c: Add a test case to verify
task_restart().
* apps/system/readline.c: readline() now returns EOF on any failure
(instead of a negated errno value). This is because the underlying
read is based on logic similar to getc. The value zero was being
confused with a NUL. So if a NUL was received, the NSH session
would terminate because it thought it was the end of file.
6.27 2013-04-28 Gregory Nutt <gnutt@nuttx.org>
* apps/system/ramtest: Add a simple memory test (2013-03-26).
* apps/examples/ostest: In the non-cancelable thread test, we need
to give the thread an opportunity to run and to set the non-
cancelable state.
* apps/nshlib/nsh_ddcmd.c: Correct the test of the skip input
parameter. Was limiting the range to <= count. From Ken
Pettit (2014-4-24).
6.28 2013-06-14 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/mtdpart: Provides a simple test of MTD partitions.
* apps/nshlib/nsh_mntcmds.c: Add a -h option to the df command to show
the volume information in human readable form (Ken Pettit, 2013-4-30).
* apps/nshlib/nsh_fscmds.c: Add support for the mksmartfs command.
(Ken Pettit, 2013-4-30).
* apps/system/flash_eraseall: Add an interface to erase FLASH using a
flash_eraseall NSH command (Ken Pettit, 2013-5-1).
* apps/examples/flash_test and apps/examples/smart_test: Add tests of
the SMART block driver and file system (Ken Pettit, 2013-5-1).
* apps/examples/mtdpart: Extended the test. The original test
coverage was superficial (2013-5-3).
* apps/examples/smart: This is an adaptation of the NXFFS stress
test for the SMART file system (Ken Pettit, 2013-5-3).
* apps/examplex/nxtext: Remove the CONFIG_EXAMPLES_NXTEXT_NOGETRUN
option. The test logic was bad for the case where this options
is not selected. Also, complete the empty Kconfig file (2013-5-7).
* apps/NxWidgets/Kconfig: Updated to match NxWidgets/Kconfig by
Ken Pettit (2013-5-11).
* apps/examples/helloxx: C++ name mangling was occurring when this
example is built as an NSH built-in application. (2013-5-16).
* apps/netutils/discover: Added a runtime configuration for the
UDP discover utility. From Max Holtzberg (2013-5-21).
* apps/examples/tcpecho: Added a simple single threaded, poll based
TCP echo server based on W. Richard Stevens UNIX Network Programming
Book. Contributed by Max Holtzberg (2013-5-22).
* apps/examples/slcd: Add an example for testing alphanumeric,
segment LCDs (2013-5-24).
* apps/examples/slcd: Extend SLCD test to handle multi-line displays
(2013-5-26).
* apps/examples/slcd: This test now sets the SLCD brightness level to
the mid-point as part of its initialization (2013-5-27).
* .gitignore: Clean-up of most all .gitignore files: Make scope of
ignore to be only the current directory; Ignore .dSYM files in
directories where .exe's may be build. Also, in Makefiles,
clean .dSYM files in directories where .exe may be built (2013-5-30).
* apps/examples/nrf35l01_term: Add an example application to demo the
nRF24L01 driver. From Laurent Latil (2013-6-1).
* apps/nshlib/Kconfig: Add some missing NSH configuration values.
From Lorenz Meier (2013-6-2).
* Standardize on CONFIG_NSH_BUILTIN_APPS. Remove all other variants
of the build-as-an-NSH-application configuration settings
(2013-6-12).
6.29 2013-07-31 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/nsh, cxxtest, and helloxx: C++ initializers should be
set once and, preferably, in the context of the task that uses any C++
statically initialized classes. These only becomes an issue if cxxtest
or helloxx are built as NSH builtin applications. Then you want the
initialization done in cxxtext or helloxx and not in NSH (and certainly
not twice). Added configuration options to control who does the C++
initialization. NSH now does not do C++ initialization be default and
must be configured to do otherwise. Converely, cxxtest and helloxx
will do C++ initialization unless configured do otherwise (2013-6-21).
* apps/examples/cxxtext: Add ostream test as provided by Michael
(2013-6-21).
* apps/examples/nxhello: Minor fix for compilation error when the
display resolution is low (< 8bpp) due to a typo that has been there
for a long time (2013-6-23).
* apps/examplex/nxhello: Correct default colors when in Y1 code mode.
(2013-6-24).
* apps/system/Make.defs and Kconfig: The RAM test was not correctly built
into the configuration and build system (2013-6-26).
* apps/examples/composite/composite_main.c: SourceForge But Ticket #19.
Change to prevent some false alarm debug assertions (From Chia Cheng
Tao, 2013-7-9).
* apps/system/zmodem: Add configuration support and a build framework
for the Zmodem sz and rz command (which exist but have not yet been
checked in) (2013-7-12).
* apps/system/zmodem: The 'sz' command is now complete and seems
functional (given on light testing). The rz command logic exists but
is still untested and not yet checked in (2013-7-13).
* apps/system/zmodem: The 'rz' command is now complete and functional
under certain conditaions. There are, however, some data overrun
issues that I am still uncertain how should be handled (2012-7-15).
* apps/system/zmodem/Makefile.host and host/: The Zmodem utilities
can now be built to execute on a Linux host.
* apps/nshlib/nsh_fscmds.c: Add a 'cmp' command that can be used to
compare two files for equivalence. Returns an indication if the files
differ. Contributed by Andrew Tridgell (via Lorenz Meier) (2013-7-18).
6.30 2013-09-14 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/composite/: SourceForge bug #19: Fix a typo that can
cause a configuration error. From CCTSAO (2013-9-4).
* apps/examples/cc3000. Initial support for the TI CC3000 network module
on the Freescale Freedom-KL25Z board from Alan Carvalho de Assis.
Includes the test to verify the CC3000 (2013-9-3).
* apps/examples/usbmsc: apps/examples/usbstorage renamed usbmsc.
Change submitted by CCTSAO (2013-6-5).
* apps/examples/pwm: Clean-up some configuration confusion (2013-9-5).
* apps/netutils/dhcpd/dhcpd.c: Fix calculation of the next lease
address. SourceForge bug #21 from Paolo Messina (2013-9-6).
* apps/examples/usbmsc: Don't try to control USB trace if we are
an NSH built-in task. In that case our attempts are inadequate
and only interfere with with other logic that is attempting to
to do the same thing (in NSH or in the USB monitor) (2013-9-6).
* apps/examples/usbmsc: IMPORTANT bug fix: Change how the msconn
works. Because of recent changes the msconn command was hanging.
This was because the USB MSC start-up logic creates a pthread;
Now waitpid() will wait until all members of the task group
exit. So NSH was hanging in waitpid when msconn started even
though msconn returned. The USB MSC logic really should not use
a pthread, but we are stuck with that for now. The work-around
is that msconn now daemonizes itself so that it so that the pthread
is created in a different task group (2013-9-7).
* apps/system/usbmonitor: The USB monitor has been extended so
that it can be used with USB device or host trace data (2013-9-9).
* apps/nshlib/nsh_fscmds.c: Fix NSH listing output for the case
of a single file. Provided by Lorenz Meier (2013-9-13).
6.31 2013-10-28 Gregory Nutt <gnutt@nuttx.org>
* apps/nshlib/nsh_netcmds.c: Remove a warning when DHCP is not
enabled (2013-9-17).
* apps/nshlib/Kconfig: Default IP address should be 0x0a000001
(10.0.0.1), not 0xa0000001 (160.0.0.1). Ditto for the gateway
(2013-9017).
* apps/examples/ostest/Kconfig: Add configuration options for
the FPU test. There are still many OS test configuration
options that do not appear in Kconfig (2013-9-18).
* apps/examples/cc3000: Condition the CC3000 example on having
selected the CC3000 device. Otherwise, you are prompted for
this option on each 'make oldconfig' (2013-9-18).
* apps/system/usbmonitor/usbmonitor.c: Fix some bad conditional
compilation probably introduced on 2013-9-9 (2013-9-23).
* apps/system/stackmonitor: Add a daemon that can be used to
monitor stack usage by all threads (2013-9-24).
* system/usbmsc: Move examples/usbmsc to system/usbmsc (2013-9-25).
* system/cdcacm: Move examples/cdcacm to system/cdcacm (2013-9-25).
* system/composite: Move examples/composite to system/composite
(2013-9-25).
* apps/nshlib and apps/readline: Numerous changes to get NSH
working with no file system. Basically this suppresses I/O
redirection and replaces file I/O with calls to low-level
console read/write functions. Suggested by Alan Carvalho de Assis
in a somewhat different form. (2013-9-30).
* apps/nshlib/nsm_routecmds.c: Add addroute and delroute
commands (2013-10-5).
* apps/system/i2ctool/Kconfig: Fix default I2C frequency: 400KHz
instead of 4MHz. Suggested by Max Kriegleder (2013-10-10).
* apps/system/info/Kconfig and Makefile: Increase stack size.
Ken Pettit reports that this simple command can exceed its 768
stack size under certain conditions. The size is marginal and
has been increased to 1024 by default but is also now configurable
(2013-10-14).
* apps/Makefile: Need to include external/Make.defs if we want
allow external applications to participate in the NuttX
configuration. Suggested by gdi@embedders.org (2013-10-14).
* apps/examples/cc3300: Updates as part of larger re-organizaion
of CC3000 logic by David Sidrane (2013-10-16).
* apps/examples/random: Add a simple test that dumps values from
/dev/random (2013-10-20).
* apps/examples/cc3000: Extensions and enhancements from David
Sidrane (2013-10-23).
* apps/netutils/telnetd/telnetd_driver.c: Missing argument to
debug statement can cause crashes in certain error conditions.
From David Sidrane (2013-10-24).
* apps/examples/cc3000: Updates from David Sidrane. Plus
some kruft removal (2013-10-24).
* apps/examples/can/can_main.c: Correct an error in a debug
statement. From Martin Lederhilger (2013-10-24).
* apps/examples/adc: Add support so that a ADC driven by
software triggering can be tested (2013-10-25).
* apps/examples/cc3000: Updates from David Sidrane (2013-10-25).
* apps/system/nxplayer: Implements a command line media
player. From Ken Pettit (2013-10-27).
* apps/system/nxplayer: Add logic to verify the audio sub-format.
From Ken Pettit (2013-10-28).
6.32 2013-12-07 Gregory Nutt <gnutt@nuttx.org>
* apps/platform: A new home for board-specific application code
(2013-10-30).
* apps/include/platform/configdata.h: Define an interface that can be
used to manage platform-specific storage of configuration data
(2013-10-30).
* apps/examples/cc3000: Fine tuning of memory usage from David Sidrane
(2013-10-30).
* apps/platform/mikroe-stm32f4: Now supports storage of configuration
data. From Ken Pettit (2013-10-30).
* apps/nshlib/nsh_dbgcmds.c and others: Add skip= and count=
options to the hexdump command. From Ken Pettit (2013-11-1).
* apps/platform/mikroe-stm32f4: Now uses /dev/config for configuration
data storage. From Ken Pettit (2013-11-1).
* apps/platform/Makefile: Was not dealing with the bin sub-directory
correctly (2013-11-2).
* apps/examples/configdata: A unit test for the MTD configuration
data driver from Ken Pettit (2013-11-4).
* apps/platform/mikroe-stm32f4: Updated to use new MTD configuration
driver features. From Ken Pettit (2013-11-1).
* apps/nshlib/nsh.h: Allow USB trace without a USB console. From
David Sidrane (2013-11-06).
* apps/system/composite/composite_main.c: The wrong handle was getting
nullified. From David Sidrane (2013-11-7).
* apps/system/nxplayer: Play thread stack size is now configurable. All
NxPlayer threads now have names assigned via pthread_setname_np().
From Ken Pettit (2013-11-10).
* apps/examples/i2schar: The beginning of an I2S test based on the I2S
character driver (2013-11-10).
* apps/nshlib/nsh_mntcmds.c: Mount command updates from Ken Pettit
(2013-11-17).
* apps/examples/hidkbd/hidkbd_main.c: Now calls a function named
arch_usbhost_initialize() that must be provided by the platform-
specific code (2013-11-29).
* apps/nshlib/nsh_fscmds.c: Add an option to the mkfatfs command to
specify FAT12, FAT16, or FAT32 (2013-12-5).
6.33 2014-01-30 Gregory Nutt <gnutt@nuttx.org>
* apps/nshlib/nsh_mntcmds.c: Modified the df -h logic to eliminate
truncating numbers in conversion (like 7900 -> 7M). From Ken
Pettit (2013-12-12).
* Moved configs/stm3240g-eval/src/up_cxxinitialize.c to
apps/platform/stm3240g-eval/up_cxxinitialize.c: Now it is available
in user-space in the kernel mode build (2013-12-29).
* apps/examples/mount/Kconfig: Fill in empty Kconfig file (2013-12-31).
* builtin/Makefile: Fixes for native Windows build from Max Holtzberg
(2014-1-4).
* apps/netutils/dhcpc/Kconfig, resolv/Kconfig, telnetd/Kconfig, and
apps/nshlib/Kconfig: Refactor some configuration dependencies: NSH
features should depend on netutil selections; netutil selections
should depend on networking selections. (2014-1-9).
* apps/nshlib/nsh_command.c: Separate NSH command handling from NSH
line parsing. This re-partitioning simplifies the logic and will
enable some things to come (2014-1-10).
* apps/nshlib/nsh_parse.c: Will now support multiple commands on a
command line, each separated with a semi-colon (2014-1-10).
* apps/nshlib/nsh_parse.c: Put the logic that executes a command
after parsing parameters into a separate file so that it can be
reused (2014-1-10).
* apps/nshlib/nsh_parse.c: Add initial support of commands enclosed
in back quotes as command arguments. Functionality still incomplete
on initial commit (2014-1-10).
* Logic to support commands enclosed in back quotes is functional
but not thoroughly tested (2014-1-11).
* apps/nshlib/nsh_parse.c: Can now handle arguments that are
concatenations of constant strings, command return data, application
return data, and environment variables (2014-1-11).
* apps/nshlib/nsh_parse.c: Fix a memory leak ... forgot to close
a temporary file (2013-1-12).
* apps/system/inifile: A simple INI file parser (perhaps too simple).
This is code that I wrote a long time ago and have used many time but
is untested in its current incarnation (2014-1-15).
* aps/nshlib/nsh_parse.c: Recent changes broke redirection of output
(2014-1-14).
* apps/nshlib/nsh_parse.c: Add true and false commands (2014-1-17)
* apps/nshlib/nsh.h and nsh_parse.c: Re-name and re-organize some
if-then-else related structures to better support forthcoming until
and while loops (2014-1-17).
* apps/nshlib/nsh_script.c: Now saves the FILE stream for the script
file in the vtbl structure so that it can be accessed by forthcoming
while and until logic (2014-1-17).
* apps/nshlib/nsh.h, nsh_command.c, nsh_parse.c, and nsh_script.c: Add
support for while-do-done and until-do-done loops. These only work
when executing a script file because they depend on the ability to seek
in the file to implement the looping behaviors (2014-1-17).
* apps/nshlib/nsh_parse.c: Loosen up if-then-else-fi syntax to allow
a command to be on the same line as the then and else tokens like:
"if true; then echo true; else echo false; fi". Much more like bash!
(2014-1-17).
* apps/nshlib/Kconfig, README.txt, nsh.h, nsh_command.c, and
nsh_script.c: Add an option to conditionally compile out support for
loop and for if-then-else-fi sequence (2014-1-17).
* apps/nshlib/nsh.h, nsh_command.c, and nsh_parse.c: Add a break
command that can be executed with a loop to terminate the loop
immediately (2014-1-17).
* apps/system/vi: Add support for a tiny, VI work-alike editor. This
is still very much a work-in-progress on initial check-in (2014-1-20).
* apps/netutils/uiplib: Support new definitions and state passing for
network device status. From Maz Holtzberg (2014-1-21).
* apps/system/vi: Tiny VI is basically functional. All commands seem
to work. There are still some display artifacts and probably several
untested conditions (2014-1-21).
7.1 2014-03-15 Gregory Nutt <gnutt@nuttx.org>
* apps/system/cle: Add a EMACS-like command line editor. This CLE,
is really more like readline than the NuttX readline is! (2014-02-02).
* apps/nshlib: Use of the standard tiny readline (about .25KB) is now
an option and can be replaces with the EMACX-like CLE (about 2KB)
(2014-02-02).
* Several changes to restore Windows native build (2014-2-7)
* apps/examples/touchscreen: Can now be configured to work with a mouse
interface as well (2014-2-10).
* Several files changes based on complaints from the tool CppCheck. Some
latent bugs were fixed (and most likely some new typos were introduced)
(2014-2-10).
* apps/examples/nximage/Kconfig and apps/examples/uip/Kconfig: Incomplete
Kconfig files fleshed out by Alan Carvalho de Assis (2014-2-18).
* apps/nshlib: 'rmdir' can now be used in the pseudo-filesystem. Hence,
the command needs to be available even if there are no write-able
filesystem enabled (2014-2-19).
* apps/nshlib: 'mkdir' can now be used in the pseudo-filesystem. Hence,
the command needs to be available even if there are no write-able
filesystem enabled (2014-2-19).
* apps/nshlib: 'mv' can now be used in the pseudo-filesystem. Hence,
the 'mv' command needs to be available even if there are no write-able
filesystem enabled (2014-2-19).
* apps/nshlib: 'rm' can now be used to remove nodes from the pseudo-
filesystem. Hence, the 'rm' command needs to be available even if there
are no write-able filesystem enabled (2014-2-20).
* CONFIG_DISABLE_PSEUDOFS_OPERATIONS: This new configuration setting
basically backs out the recent changes to mv, rm, mkdir, and rmdir
(2014-2-20).
* nshlib/Kconfig: Use CONFIG_DEFAULT_SMALL in selecting default
settings (2014-2-20).
* nshlib/nsh_telnetd.c: Use strncpy vs strcpy to avoid overruning the
username and password buffers. From Bertold Van den Bergh (2014-2-22).
* nshlib/Kconfig, nsh_proccmds.c: If the CPU load feature and the procfs
features are enabled, then show CPU load used by each thread in the
'ps' command (2014-2-27).
* nshlib/nsh_fscmds.c: Add a newline after printing the file in the
'cat' command. This prevents the NSH prompt from be in the same line
as the final line of the file in the case where there is no newline
at the end of the file (2014-2-27).
* netutils/dhcpd/dhcpd.c: allocipaddr() should not call ntohl(), the
returned IP address is already in host order.
* apps/netutils/dhcpd/Kconfig: Add missing DHCPD configuration
settings(2014-3-3).
* Support for the legacy configuration mechanism (using appconfig files)
is removed. Only the newer configuration using the kconfig-frontends
tools is now supported (2014-3-6).
7.2 2014-04-29 Gregory Nutt <gnutt@nuttx.org>
* apps/nshlib/nsh_parse.c: Fix NuttShell version number display in
welcome message. version.h was not being included (2014-3-23).
* apps/examples/igmp: Fill out Kconfig file; update makefile so
that the IGMP example can be used as an NSH built-in application.
From Manuel St<53>hn (2014-3-24).
* apps/system/usbmsc: Back out the USBMSC daemon... it is no longer
needed with the recent fix to the USBMSC class driver (2014-3-25).
* apps/examples/lcdrw: Fill out empty Kconfig file (2014-2-27).
* apps/netutils/dhcpd/dhcpd.c: The correct value of the PAD option
is zero, not one. From Brennan Ashton (2014-3-31).
* apps/sysinfo: CONFIG_VERSION_BUILD is a string an needs to be
printed with %s, not %d. Noted by Librae (2014-4-8).
* apps/netutils/ntpclient/ and apps/include/netufils/ntpclient.h: Add
a very primitive NTP client. The initial check-in is untested and
probably incomplete (2014-4-10).
* apps/netutils/resolv: Long needed major clean up for coding style
and unification of naming conventions (resolv vs dns) (2014-4-11).
* apps/netutils/dnsclient and include/netutils/dnsclient.h: File name
changes that are part of the overal resolv->dns renaming (2014-4-11).
* apps/netutils/dnsclient: Break the one big monolithic file into
three smaller files (2014-4-11).
* apps/netutils/ntpclient/ntpclient.c: Corrections to the NTP client
from Manuel Stuehn (2014-4-12).
* apps/examples/touchscreen: Add a configuration option to indicate if
architecture-specific initialized is required, yes or no (2014-4-14).
* apps/system/nxplayer/nxplayer.c: Compilation failure in one
configuration reported by Manuel Stuhn (2014-4-21).
* apps/system/sdcard: Remove an STM32 dependency. From Bob Doiron
(2014-4-21).
* apps/nshlib: malloc/free IOBUFFER for 'cat' and 'hexdump' commands
instead of using the stack. From Bob Doiron (2014-4-21).
* apps/examples/cpuhog, serialblaster, and serialrx: Stress test
examples added by Bob Doiron (2014-4-22).
* apps/examples/telnetd: Naming is confused. In someplaces 'telnetd',
and in others 'shell.' All changes to telnetd. Noted by Pelle
Windestam (2014-4-38).
7.3 2014-06-25 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/serialblaster: Update configuration an make logic in
order to select that the serial blaster task priority and stack size.
From Bob Doiron (2014-4-30).
* apps/nshlib/Kconfig and other NSH files: The alternate console device
CONFIG_NSH_CONDEV must not be defined unconditionally. This causes errors
when using Telnet sessions. This was solved by adding CONFIG_NSH_ALTCONDEV:
CONFIG_NSH_ALTCONDEV enables or disables the feature then, if enabled,
CONFIG_NSH_CONDEV provides the alternative console device name (2014-5-5).
* apps/system/i2c/i2c_get.c: Fix to show the updated register address on
each fetch (vs. showing the same starting address each time). From
Ryan VanSickle (2014-5-8).
* apps/interpreters/prun and apps/include/interpreters/prun.h: Broke out
the P-code execution logic from apps/examples/pashello and moved it to
these directory where it can be used more generally (2014-5-9).
* apps/system/prun and apps/include/interpreters/pexec_main.c: Move the
P-Code execution logic from apps/interpreters/prun to
apps/system/prun; Add pexec_main.c which is an NSH built-in
application that can be used to run P-Code programs from the NSH
command line (2014-5-9).
* Several files: Convert all old-style variadic macros to the C99 form.
Recent GCC changes tightens up that behavior and can cause some problems
(at least for the IAR compiler for some reason). See
https://gcc.gnu.org/onlinedocs/cpp/Variadic-Macros.html#Variadic-Macros.
Noted by Bob Grimes (2014-5-22).
* apps/system/cle: CLE was not returning the terminating newline character.
But reported by Max kriegleder; work-around reported by Lorenz Meier
(2015-5-23).
* Misc changes due to moving nuttx/net/uip/uip-arp.h to nuttx/net/arp.h
(2015-5-30).
* apps/examples/netpkt/: A "raw" socket test from Lazlo Sitzer
(2014-6-12).
* apps/system/hex2bin/: A library and built-in task to convert from
Intel HEX to binary format. Untested on initial commit (2014-6-15).
* apps/system/hex2bin/: Appears to be functional but testing is still
light (2014-6-16).
* apps/system/hex2bin/hex2mem_main: Add a variant application that will
write Intel HEX files directly to memory (2014-6-16).
* netutils/webserver: httpd_fs_open() should return OK on success and
ERROR on failure, not 1 and 0 (2014-6-23)
7.4 2014-08-15 Gregory Nutt <gnutt@nuttx.org>
* apps/system/mdio: PHY tool from Daniel Lazlo Sizter (2014-6-27).
* apps/nshlib: Networking logic modified to handler the case of SLIP
transport. From Max Neklyudov (2014-6-27).
* apps/nshlib: if # appears on line, need to comment ignore additional
commands on the line (2014-7-1).
* apps/netlib: Renamed all occurrences of uiplib to netlib. Renamed
files under netutils/uiplib/uip_*.c to netutils/netlib/netlib_*.c.
Renamed all functions defined in netutils/netlib/ to begin with netlib_,
instead of uip_. (2014-7-2).
* apps/nshlib/nsh_usbkeyboard.c: Add a configuration to use a USB
keyboard for the stdin device (2014-7-3).
* apps/neturils/webclient/webclient.c: Fix to offset calculation from
Rony Xln. Prevents 0x0a at the beginning of lines (2014-7-7).
* netutils/webserver (and other files): Fix some configuration usage:
CONFIG_NETUTILS_HTTPD_SENDFILE was missing from Kconfig; CONFIG_NET_HAVE_SOLINGER
should be CONFIG_NET_SOLINGER; Type of CONFIG_NET_HTTPD_MAXPATH was wrong
in Kconfig file. From Max (2014-7-11).
* apps/system/nxplayer/nxplayer.c: Check for file read errors and end-of-file
with zero bytes read (2014-7-23).
* apps/system/nxplayer: Misc changes to better integrate with
NxWM::CMediaPlayer (2014-7-23).
* apps/system/nxplayer/nxplayer.c and apps/include/nxplayer.h: Add hooks
for fast-forward and rewind needed by CMediaPlayer; add hooks for
equalizer settings needed by the WM8904 (2014-7-24).
* apps/include/nxplayer.h and apps/system/nxplayer/nxplayer.c: Changes to
integrate with Ken's NxWM::CMediaPlayer (2014-7-24).
* apps/include/nxplayer.h: Move subsampling rate definitions from nxplayer.h
to audio.h *2014-7-27).
* apps/system/nxplayer/nxplayer.c: NxPlayer needs to set curbyte field to
zero before enqueuing a buffer. Otherwise, it looks like beginning of
the buffer has already been consumed. (2014-7-27).
* apps/netutils/webserver/httpd.c: Missing logic to close sockets on loop
termination. From Max (2014-7-28).
* apps/system/nxplayer/nxplayer.c: Fix some error handling, update
comments, more debug output (2014-7-31).
* apps/system/nxplayer/nxplayer.c: Change how the end of the audio
stream is detected by the leaf audio component. This used by be done
by looking for the first partial buffer. That does not work with the
in-place sub-sampling performed by the PCM decoder: That always reduces
the size of the buffer so that all buffers only partially filled by the
time they get to the leaf. Now, a flag is set in the audio buffer
flags set to indicate the final buffer in the stream (2014-7-31).
* apps/system/nxplayer/nxplayer.c: Fix an error I introduced: Need to
pass through final buffer even if is it zero length because it contains
the end of audio stream flag (2014-8-1).
* apps/system/nxplayer/nxplayer.c: Break reading and enqueueing of audio
buffers into two steps so that errors in enqueueing can be
distinguished from errors in reading. Errors in enqueueing signal a
downstream decoder error. Add logic to gracefully recover from
downstream decoder errors (2014-8-5).
* apps/nshlib/Kconfig, nsh.h, and nsh_netinit.c: Software assigned MAC
address is now configurable. From Lazlo (2014-8-6).
* apps/nshlib/Kconfig, nsh.h, and nsh_netinit.c: Also add an option to
let platform-specific logic select the MAC address (2014-8-5).
* apps/nshlib/Kconfig, nsh.h, and nsh_netinit.c: There is now a
configuration option that will bring up the network on an separate
thread. Since the network bring-up is asynchronous, there are not
serial console start-up delays due to the network negotiation time
(2014-8-6).
* apps/system/sudoku: Add a sudoku game (2014-8-11).
7.5 2014-09-28 Gregory Nutt <gnutt@nuttx.org>
* apps/nshlib/Kconfig, nsh.h, and nsh_netinit.c: Extend the NSH network
initialization logic. There is now an option that will create a
network monitor thread that will monitor the state of the link. When
the link goes down, the code will attempt to gracefully put the
Ethernet driver in a down state; When the link comes back, the code
will attempt to bring the network back up (2014-8-17).
* apps/system/free/free.c and install/install.c: STM32 FLASH fixes:
use size_t instead of uint16_t, make interface more generic. From
Freddie Chopin (2014-8-28).
* apps/examples/elf: The ELF test/example has been extended so the
individual ELF test programs can link against the SYSCALL library
(if it is available) or against the C library to eliminate or
minimize the need for symbol tables (2014-8-29).
* apps/nshlib/nsh_proccmds.c: Fix NSH PS command: If there are no
arguments, it would print garbage for argument list (2014-9-1).
* apps/import/, apps/tools/, apps/Makefile: Beginning of logic that
will, hopefully, allow me to build applications against a NuttX export
package (vs. the nuttx/ source tree) (2014-9-4).
* apps/tools/mkimport.sh and apps/import/Makefile: Add .config file to
export package (2014-9-5).
* apps/Makefile: Add a 'make import' target. More is needed before
it will be usable (2014-9-5).
* apps/import/Make.defs and .gitignore: Added mostly empty Make.defs
file. Something like this will be bee needed for the 'make import'
build (2014-9-5).
* apps/Makefile, examples/elf/Kconfig, and import/Make.defs: Copy more
logic from nuttx/tools/Config.mk into the Make.defs file (2014-9-5).
* apps/import/Make.defs: Also need to define CFLAGS (2015-9-5)
* apps/import/scripts/gnu-elf.ld: Add GCC linker script for ELF
import builds (2014-9-5).
* All Makefiles: Add an install target to all makefiles. For the
import build, the top-level Makefile now does two passes: (1) builds
libapp.a, then (2) installs the programs (not yet finished) (2014-9-6).
* Many files: With kernel build (CONFIG_BUILD_KERNEL), entry point to
all tasks is main, not some xyz_main (2014-9-6).
* Many Makefiles: Add program installation for CONFIG_BUILD_KERNEL in
all Makefiles that build a main() (2014-9-6).
* Many Makefiles. For kernel build, the object file containing main
cannot go into library because of name collisions. The object file
must be handled as a special case in every Makefile (2014-9-7).
* apps/import/Make.defs: libapps.a needs to be added to the list of
libraries to link against (2014-9-7).
* apps/nshlib/nsh.h and nsh_ddcmd.c: Several commands must be disabled
in the kernel build because they depend on interfaces that are not
available outside of the kernel: dd, df, losetup, mkfatfs, mkdr, and
ps (2014-9-7).
* apps/import/Make.defs: ELF build requires -fno-common in CFLAGS
(2014-9-8).
* apps/tools/mkromfsimg.sh: Add a script to create a BOOT ROMFS
filesystem image (2014-9-9).
* Many makefiles: All makefiles that have separated the MAINOBJ
need to include MAINOBJ in list of C objects to be compiled.
SourceForge tick #31 from Aton (2014-9-11).
* apps/examples/elf/tests/Makefile and nxflat/tests/Makefile: Do
not build test cases that use task_create if there is an address
environment (2014-9-14).
* apps/examples/null/null_main.c: Need to include config.h it order know
if this is or is not a kernel build (2014-9-16).
* Change all occurrences of NxConsole to NxTerm (2014-9-20).
* apps/examples/Konfig, Makefile, README.txt and all of mdrwb/: Add an
example to test MTD R/W buffering (2014-9-25).
* apps/examples/ostest: Add a trivial test of sem_timedwait (2014-9-16).
7.6 2014-11-26 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/ostest: Add a simple test of named semaphores
(2014-9-23).
* apps/netutils/webclient/Kconfig and webclient.c: Add implementation of
timeouts for the apps/netutils/webclient. From Brennan Ashton
* apps/nshlib/Kconfig and nsh_romfsetc.c: Add support for a custom NSH
ROMFS startup image header file location. From Martin Lederhilger
(2014-9-30).
* apps/nshlib/nsh_fscmds.c: Fix ls -l output for regular files (14-9-30).
* apps/nshlib/nsh_ddcmd.c: Fix reversed in/out file closing when an
error occurs. From Ken Pettit (2014-10-2).
* apps/examples/ostest/aio.c, Kconfig, Makefile, and ostest_main.c: Add
AIO test case in OS test (2014-10-5).
* apps/examples and system: Remove non-portable uses of syslog
(014-10-8).
* apps/: Correct everything under apps to use the corrected syslog
interfaces (2014-10-8).
* apps/netutils/netlib/netlib_gethostaddr.c: Fix memcpy of host address
in netlib_gethostaddr(). From Brennan Ashton (2014-10-17).
* apps/system/stackmonitor.c and stackmonitor/Makefile: Fix compile
problems introduced when the syslog() prototype changed; Also update
Makefile for kernel build From Radoslaw Adamczyk (2014-10-23).
* apps/examples/nxterm/Makefile: Update makefile for kernel-build
issues. From Radoslaw Adamczyk (2014-10-23).
* apps/examples/keypadtest/keypadtest_main.c: Fixes to keypadtest from
Pierre-Noel Bouteville (2014-10-23).
* apps/nshlib/nsh_parse.c, nsh.h, and Kconfig: Move CONFIG_NSH_TMPDIR
to CONFIG_LIBC_TMPDIR (2014-11-05).
* apps/interpreter/bas: Merged in the Michael Haardt's BAS 2.4 adapted
for use by NuttX by Alan Carvalho de Assis. The bas24 branch was merged
into the master branch on this date (2014-11-7).
* apps/examples/bastest: This is a special version of Michael
Haardt's BAS 2.4 test files adapted for use by NuttX on a ROMFS file
system (2014-11-7).
* apps/interpreter/bas: Add VT100 support for color command (2014-11-10).
* nshlib/: Remove use of CONFIG_MAX_TASKS in ps command and in range
checkout (2014-11-13).
* netutils/thttpd: Remove use of CONFIG_MAX_TASKS in in 'task' CGI
example (2014-11-13).
* sysm/i2c: Remove use of CONFIG_MAX_TASKS for maximum argument I2C
tool size (2014-11-13).
* apps/netutils/dnsclient/dns_socket.c: Right now if you make a DNS
request before the dns address it set you will get an assertion. The
state of the IP setting is not something the application should be
aware of, it should only be concerned with whether or not the name
was resolved. From Brennan Ashton (2014-11-13).
* apps/nshlib/, apps/netutils, and apps/include/netutils: Misc
changes to support multiple networks with different link layers. For
example, ETHERNET + SLIP (2014-11-15).
* apps/nshlib/nsh_usbconsole.c: Add logic to restart the console wait
if an error occurs while reading from the console.In USB console
startup, the logic must be able to open the USB serial and receive 3
newlines. However, it the USB driver is disconnected or otherwise
fails before the 3 newlines are received, the receive loop becomes a
killer, infinite loop, CPU hog. Noted by spasbyspas (2014-11-16).
* examples/, netutils/, nshlib/, various files: Rename
CONFIG_NET_BUFSIZE to CONFIG_NET_ETH_MTU; Add CONFIG_NET_SLIP_MTU.
Modify logic to handle different MTUs when both Ethernet and SLIP
are enabled (2014-11-16).
* apps/examples/discover, tcpecho, webserver, xmlrpc: These examples
all set the IP address of eth1 but the netmask and gateway of eth0
if DHCP is enabled. That can't be right???? (2014-11-17).
* apps/examples/bridge: Add a simple UDP relay bridge for testing
configurations with multiple networks. Initial checkin is not
very usuable because it lacks a host-side test driver for the
bridge (2014-11-17).
* apps/netutils/codecs/md5.c: Fix md5 hashing when digest[$i] lower
that 16. From Sergey (2015-11-20).
* apps/examples/bridge/host_main.c, host_net1.c, host_net2.c, Kconfig,
and Makefile: Add host-side test driver (2014-11-21).
7.7 2015-01-26 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/romfs/Makefile: fix romfs example builtin app registry
issue. From Librae (2014-11-27).
* apps/examples/djoystick and support files: Add a test of the discrete
joystick driver (2014-11-28).
* apps/examples/ajoystick and support files: Add a test of the analog
joystick driver (2014-12-03).
* apps/nshlib/nsh_netcmds.c: NSH TFTP get command: Wrong file namei
used for the destination. From Lazlo (2014-12-10).
* apps/system/cu: Add a minimalist implementation of the 'cu' terminal
program (part of Taylor UUCP for ages). Using it, you can simply open
a serial port and interact with it. Using '~.' you can leave the
terminal program and drop back to nsh. This might come in handy for
people that have e.g. GSM modems, GPS receivers or other devices with
text based serial communications attached to their Nuttx systems. From
Harald Welte (2014-12-13).
* apps/examples/ltdc and build-related file: Add ltdc test example. From
Marco Krahl (2014-12-19).
* apps/system/cdcacm, composite and usbmsc: Fix some strangely placed
conditional compilation. Looks like an automated update gone awry
(2014-12-28).
* apps/examples/ltdc/ltdc_main.c: Clean up documentation, some formatting
improvements. From Marco Krahl (2014-12-29).
* apps/system/lm75 and build-related files: Add a tiny application to
read the temperature from an LM-75 (or compatible) temperature sensor
(2015-01-06).
* apps/interpreters/micropython: A port of Micro Python to NuttX.
Contributed by Dave Marples (2015-01-11).
* apps/examples/timer: Add a trivial test of the timer driver
(2015-01-13).
* apps/netutils/dnsclient: Can select to be either IPv4 or IPv6, but
not both (IPv6 still does not compile) (2015-01-18).
* apps/netutils/netlib: Add new library functions to manipulate IPv6
addresses (2015-01-13).
* apps/nshlib/Kconfig and nsh_netinit.c: Add logic to initialize
IPv6 addresses (2015-01-19).
* apps/netutils/netlib: All IOCTLs must use a valid address family --
even if the address family does not matter such as when getting the
MAC address or the network flags (2015-01-19).
* apps/examples/nettest: Update test so that it can be used to test
IPv6 TCP sockets (2015-01-20).
* Many files: Correct name of fields in struct sockaddr_in6: sin6_port
and sin6_family, not sin_port and sin_family (2015-01-20).
* apps/netutils/telnetd: Add protection when CONFIG_SCHED_HAVE_PARENT
is enabled: Call sigaction with SA_NOCLDWAIT so that exit status is
not retained (no zombies) and block receipt of SIGCHLD so that accept
is not awakened by a signal. If accept() is awakened by a signal, do
not do anything crazy like exit. Most from Rony Xln (2015-01-22).
* apps/examples/udp: The UDP test example has been extend to support
IPv6 domain sockets (2015-01-22).
* apps/nshlib: Add the ping6 command to support checking IPv6 networks.
(2015-01-23).
* apps/nsh: Clean up network status presentation for IPv6 (2015-01-24).
7.8 2015-02-11 Gregory Nutt <gnutt@nuttx.org>
* apps/interpreters/micropython: Add math library defines for nan(),
copysign(), and trunc() functions. From Brennan Ashton (2015-01-26).
* apps/examples/ustream: Add a simple test of Unix domain sockets
(2015-01-27).
* apps/examples/udgram: Add a simple test of Unix domain datagram
sockets (2015-01-28)
* apps/Makefile and builtin/Makefile: Fix for building with parallel
make. Build-server sometimes failed 'make -j24' with errors in the
builtin line or or sometimes silently succeeds but generated builds
that contain a random subset of configured NuttX applications. There
are two root causes for this: (1) Recipes for building builtin_list.h
and builtin_proto.h are not linearizable, and (2) Nothing ensures
that 'make context' is run first for apps/builtin. This change
address both issues. From Juha Niskanen (2015-02-03).
* apps/netutils/netlib: Add utilities to convert to/from prefix lengths
from/to 128-bit network masks (2015-02-06).
* apps/nshlib: Modify the NSH IPv6 ifconfig command to show the more
standard post-pended prefix value, rather than the full 128-bit netmask
(2015-02-06).
7.9 2015-04-14 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/ostest: Improved error checking for sem_timedwait()
from Juha Niskanen (2015-02-20).
* apps/netutils/Kconfig, Make.defs, and pppd/: Add a PPP daemon. From
Max Neklyudov (2015-03-11).
* Rename arch_nshinitialize() to board_app_initialize() (2015-03-30).
* apps/nshlib: NSH initialization now calls boardctl(BOARDIOC_INIT)
instead of board_app_initaliaze(). Remove support for
CONFIG_NSH_ARCHMAC. It is not used and there are better ways to do
that operation (2015-03-31).
* apps/examples/touchscreen: No longer calls arch_tcinitialize() or
arch_tcuninitialize(). Instead the new OS interface boardctl() is
called to perform these test operations on the touchscreen driver
(2015-03-31).
* apps/examples/adc: Change apps/examples/adc to that is now calls
boardctl() instead of adc_devinit() in order to initalize the ADC
device(2015-03-31).
* apps/examples/pwm/: Replace calls to pwm_devinit() in
apps/examples/pwm with calls to boardctl() (2015-03-31).
* apps/examples/: More renaming: up_lcdinitialize->board_lcd_initialize,
up_lcdgetdev->board_lcd_getdev, up_lcduninitialize->board_lcd_uninitialize
(2015-04-04).
* apps/examples/nxlines/: Add the new 'capped' parameter to nx_drawline()
calls (2015-04-05).
* apps/modbus/tcp: Fix some complile problems when TCP is enabled
(2015-04-06).
* apps/system: Clean up Kconfig menus. The way it worked before, it was
difficult to see what was enabled and what was not. menus replaced
with menuconfig (2015-04-07).
* apps/examples/ostest/sigprocmask.c: Add a simple test of sigprocmask,
sighold, and sigrelse (2015-04-09).
* apps/modbus: Includes extensions to support RTU master mode by
Armink(383016632@qq.com):
https://github.com/armink/FreeModbus_Slave-Master-RTT-STM32. Ported
to NuttX by Darcy Gong.
* apps/nshlib: Allow NSH 'date' command with no hardware RTC. Thisi
command is useful without an RTC too. Also, this permits testing on
the simulator which never has an RTC (2015-04-11).
* apps/netutils/ppp: Make pppd PAP authentication optional. From
Brennan Ashton
* apps/examples/pppd: Add PPPD test case. Split out from
apps/netutils/pppd by Brennan Ashton.
* apps/netutils/pppd: Spit up pppd utils. From Brennan Ashton.
* apps/system/zoneinfo: All logic to build timezone info. Does not do
much else yet (2015-04-14).
7.10 2015-06-09 Gregory Nutt <gnutt@nuttx.org>
* apps/system/zoneinfo: Add logic to build a ROMFS file system
containing the timezone data (2015-04-15).
* apps/nshlib/nsh_timcmds.c: Check return values from time functions
(2015-04-15).
* apps/examples/nxlines: Fix missing right bracket that causes
compile error when CONFIG_NX_XYINPUT=y. From Librae (2015-04-16).
* apps/examples: When boardctl() fails, need to print errno not the
returned value which will always be -1 (2015-04-16).
* apps/examples: Correct use of the BOARDIOC_GRAPHICS_SETUP boardctl()
call (2015-04-16).
* apps/examples/ltdc: Add testing support for the STM32 LTDC's 2D
DMA. From Marco Krahl (2015-04-16).
* apps/nshlib/: Fix handling of gmtime_r return value in time commands.
gmtime_r returns a pointer, not an int (2015-04-21).
* apps/netutils/ntp: Fix mismatched sched_lock/unlock. Noted by
Juha Niskanen (2015-05-06).
* apps/examples: Modify/simpify apps/examples build files. From Roman
Saveljev (2015-05-06).
* apps/nshlib/nsh_netinit.c and apps/examples/ustream/: Add poll
support for Unix stream sockets. From Jussi Kivilinna (2015-05-12).
* apps/examples/ostest: Add a test of nested signals. There are no
failures to handle signals but neither am I getting any nested
signal handling (2015-05-12).
* apps/nshlib: Enhancements to NSH ifconfig for case of multi-link
operation, TUN device and local connections. From Max Neklyudov
(2015-05-19).
* apps/nshlib: Enhanced output to NSH ping command from Max Neklyudov
(2015-05-27).
* apps/examples/elf: Add configuration options to support building the
hello++4 example that depends upon having uClibc++ available. From
Leo aloe3132 (2015-05-29).
* apps/platform/stm32f4discovery: Move up_cxxinitialize from
nuttx/configs/stm32f4discovery/src to apps/platform/stm32f4discovery
where it belongs (2015-05-29).
* apps/examples/elf/tests/helloxx: Add hello++5 to ELF example. From
Leo Aloe3132 (2015-06-01).
* apps/netutils/thttpd/ and apps/examples/thttpd/: Add support for using
binfs/ instead of NXFLAT. NXFLAT is probably the better solution but
recently compiler changes make it unusable. binfs or ELF are fallback
binary formats. This commit adds an option to use binfs (2015-06-02).
* apps/examples/unionfs: Add a test of the union file system to
apps/examples (2015-06-05).
* apps/examples/thttpd now uses the Union File System if BINFS is
selected for CGI binaries (2015-06-06).
* apps/nshlib/: The NSH mount command now recognizes the Union file
system type when listing mounted file systems (2015-06-07).
7.11 2015-08-13 Gregory Nutt <gnutt@nuttx.org>
* apps/netutils/thttpd: Fix compilation problems when
CONFIG_THTTPD_GENERATE_INDICES is defined (2015-06-12).
* apps/include: Clean up and review of header files for conformance to
standards (2015-06-12).
* apps/examples/ostest/: Extend the OS test to include a test of
pthread_mutex_trylock() for recursive mutexes. From Juha Niskanen
(2015-06-16).
* apps/netutils/thttpd: Missing gci-src as a dependency path when
building with BINFS enabled (2015-06-18).
* The apps/ directory has been removed from the NuttX GIT repository
and now stands alone in its own repository (2015-06-27).
* apps/examples/poll: Fix a few bit-rot compilation errors (2015-07-01).
* apps/nshlib: NSH will now support an (optional) shutdown command if
the board provides the option CONFIG_BOARDCTL_POWEROFF. The command can
also be used to reset the system if CONFIG_BOARDCTL_RESET=y.
(2015-07-04).
* apps/system/poweroff: Remove the system poweroff command. This is
replaced with the NSH shutdown command (2015-07-02).
* apps/nshlib: Add support for a uname command (2015-07-04).
* apps/system/sysinfo: Remove the system sysinfo command. This is
replaced with the NSH uname command (2015-07-04).
* apps/syste/netdb: Add a command to access the network database
(2015-07-08).
* apps/netuils/dnsclient and include/netutils/dnsclient.h: Move the
DNS client logic into the NuttX C library. It is a necessary part
for the full implementation of the netdb logic and provides more
flexibility in that location (2015-07-10).
* apps/examples/ and apps/netutils: Remove calls to obsolete, non-
functional DNS interfaces (2015-07-11).
* apps/netutils and apps/nshlib: Replace calls to the non-standard
dns_gethotip with calls to standard gethostbyname (2015-07-11).
* apps/netutils/netlib and other files: Create netlib wrapper functions
around dns_getserver() and dns_setserver() to isolate application
code from changes to those interfaces (2015-07-12).
* apps/nshlib: Add an nslookup command (2015-07-13).
* apps/examples/nxlines: If CONFIG_NX_ANTIALIASING=y, then the nxlines
example now erases a line that is 2 pixels longer and 2 pixels wideri
than the line it drew. That eliminates edges effects due to applying
the anti-aliasing algorithm twice. A better solution would be to makei
anti-aliasing an option for each graphics call so you would rend the
line with anti-aliasing ON and clear it with anti-aliasing OFF. but I
don't have the wherewithal for that change today (2015-04-14)`.
* apps/nshlib and apps/examaples/thttpd: Change decoding to handle the
increased size of the scheduling policy field in the TCB (2015-07-23).
* apps/examples/ostest: Improve synchronization in round robin tests.
On very fast processors, there are race conditions that make the test
failure. Need better interlocking to assure that the threads actually
do start at the same time (2015-07-24).
* apps/examples/ostest: Add a test for the sporadic scheduler. This
test is failing as of this commit (2015-07-24).
* apps/system/readline: Add support for Unix-style tab complete toi
readline. This currently works only for built-in functions.
Contributed by Nghia Ho (2015-07-28).
* apps/system/readline and apps/nshlib: Extended the tab-completion
support to also expand NSH command names (2015-07-30).
* apps/system/readline and apps/nshlib: Add support for an in-memory
command line history that can be retrieved using the up and down
arrows. Contributed by Nghia Ho (2015-08-09).
* apps/Makefile: No longer depends on hardcoded lists of directories.
Instead, it does a wildcard search to find all appropriate
directories. This means that to install a new application, you
simply have to copy the directory (or link it) into the apps/
directory. If the new directory includes a Makefile and Make.defs
file, then it will automatically be included in the build (2015-08-11).
* apps/Makefile, Kconfig, */Kconfig, tools/mkkconfig.sh: Add the tool
mkkconfig.sh that dynamically builds the apps/Kconfig file at
configuration time. The hardcoded configuration file has been removed
and now the top-level Makefile executes tools/mkkconfig.sh to auto-
generate the top-level Kconfig file. A new apps/ make target call
preconfig: was added to support this operation. Now you do not have
to modify the top-level Kconfig file to add a new directory into the
configuration; the top-level subdirectory simply needs to include a
Kconfig file and it will automatically be included in the
configuration. The native Windows build is temporarily broken until
a new apps/tools/mkconfig.bat script is generated (2015-08-11).
* apps/tools/mkkconfig.bat: Add the Windows script corresponding to
apps/tools/mkkconfig.sh. Needed for a Windows native build. Untested
on initial commit (2015-08-12).
7.12 2015-10-01 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/can: Extend the CAN loopback test by adding more
command line options (2015-08-17).
* apps/examples/usbserial: Can now be run as an NSH builtin-function.
Now uses a configurable IO buffer size (2015-08-20).
* Various Kconfig files in netutils: Fix some changes from from
NETUTILS_DNSCLIENT to NETDB_DNSCLIENT. From Pavel Pisa (2015-08-20).
* system/netdb: Failed to build if CONFIG_NET_HOSTFILE was not defined
because gethostbyaddr() was not available. Noted by OrbitalFox
(2015-08-21).
* apps/system/symtab: Optional canned symtab inclusion to the build. When
option CONFIG_SYSTEM_SYMTAB is selected and symbol table file
libc/symtab/canned_symtab.inc is prepared then application can
use system provided complete symbol table. The option has
substantial effect on system image size. Mainly code/text. If
loading of applications at runtime is not planned do not select
this. From Pavel Pisa (2015-08-23).
* apps/examples/nettest: Add option to suppress network initialization.
This is necessary if the nettest is run from NSH which has already
initialized the network (2015-08-26).
* apps/examples/nettest: Extend test so that can be performed using the
local loopback device (2015-08-26).
* apps/nshlib: Fix error handling in 'cat' command. On a failure to
allocate memory, a file was not being closed. From Bruno Herrera
(2015-08-26).
* apps/nshlib: Fix error handling in 'mv' command. On a failure to
expand the second path, the memory allocated for the expansion of the
first path was not being freed. From Bruno Herrera (2015-08-26).
* apps/examples/netloop: Add a test of the local loopback device
(2015-09-02).
* apps/modbus and apps/include/modbus: Macros PR_BEGIN_EXTERN_C and
PR_END_EXTERN_C were not defined in all contexts. Replace with
explicit expansion in all cases. From Stefan Kolb (2015-09-03).
* apps/canutils/uavcan: Add support for libuavcan. From Paul
Alexander Patience (2015-09-25).
* apps/examples/udpblaster: Add a test to stress the network by
sending UDP packets at a very high rate. (2015-09-30).
* apps/examples/uavcan: libuavcan example from Paul Alexander
Patience (2015-10-01).
7.13 2015-12-05 Gregory Nutt <gnutt@nuttx.org>
* apps/examples/fstest: Add a generic file system test. This is
essentially the same as examples/smart, but has all of the SmartFS
specific logic ripped out. This was created for testing the new
tmpfs (2015-10-10).
* apps/examples/zerocross: Add a Zero Cross application example.
From Alan Carvalho de Assis (2015-10-13).
* apps/examples/media: Add a simple test for access of media via
a block driver or MTD driver (2015-11-09).
* apps/nshlib/nsh_ddcmd.c: Now that NuttX automatically converts
block devices to character devices, all of the BCH stuff in NSH
can be removed (2015-11-21).
* apps/system/hexed: Port the hexed command line hexadeciamal
editor to Nuttx. See http://apps.venomdev.net/hexed/.
Initial port is not functional (2015-11-21).
* apps/fsutils/smartfs: Move into apps/fsutils from kernel, now
uses only open and ioctl. From Ken Pettit (2015-11-23).
* apps/fsutils/smartfs/ and apps/nshlib/: Add configuration option
to supported multiple root directories. From Ken Pettit (2015-11-23).
* apps/nshlib: Add support for 'basename' and 'dirname' commands
(2015-11-23).
* apps/nshlib: Like bash, NSH set command should strip off any
leading or trailing whitespace (2015-11-23).
* apps/nshlib: The mount commands now accepts mount options (currently
needed only for the hostfs file system). From Ken Pettit (2015-11-25).
* apps/nshlib: NSH no longer calls losetup() and loteardown directly.
Now it opens /dev/loop and accomplishes these things using ioctl()
calls (2015-11-25).
* apps/nshlib: If CONFIG_NETDEV_STATISTICS=y, then print the network
driver statistics in the ifconfig (15-11-26).
* apps/nshlib: The 'ifconfig' command now uses /proc/net/<dev> to view
network device configuration and status and /proc/net/stat to show
network statistics. A consequence of this is that you cannot view
this network information if the procfs is not enabled and mounted at
/proc (2015-11-27).
* apps/nshlib: Remove all references to internal OS interface
netdev_foreach(). Logic in ifconfig, ifup, and ifown now use the
procfs file system to examine networking status. (2015-11-27).
* apps/nshlib: Add a new NSH losmart command. losmart setups up
a loop device for the smart MTD driver similar to losetup but
with different syntax. From Ken Pettit (2015-11-28).
* apps/nshlib: The I/O buffer, g_iobuffer, should not be a global
buffer. That will not work in an environment where there are multiple
NSH sessions. The I/O buffer must, instead, be a part part of the
session-specific data defined in nsh_console.h (2015-11-28).
* apps/nshlib: The 'ps' command now uses /proc/<pid>/ to obtain
task status information. A consequence of this is that you cannot use
the 'ps' command if the procfs is not enabled and mounted at
/proc (2015-11-28).
7.14 2016-xx-xx Gregory Nutt <gnutt@nuttx.org>
* netutils/telnetd: Move the Telnet driver from netutils/telnetd to
nuttx/drivers/net. It is a driver an belongs in the OS. There are
still some partitioning issues with the interface to the Telnet
driver (2015-12-07).
* netutils/telnetd: No longer calls OS interface telnet_driver. Now
creates Telnet sessions by opening a new factory device at /dev/telnet
and then using ioctl calls to create the session character drivers
at /dev/telnetN (2015-12-07).
* netutils/ping: Unfinished implementation of ping/ping6 using raw
sockets (2015-12-11).
* examples/module: Add a test harness for verifying NuttX kernel
modules (2015-12-12).
* apps/nshlib: Add module commands: insmod, rmmod, and lsmod
(2015-12-13).
* apps/examples/pca9635: Add a simple test of PCA9635PW PWM LED
driver. From Alan Carvalho de Assis (2015-12-15).
* apps/examples/ostest: Add a test of POSIX timers using
SIGEV_THREAD (2015-12-30).
* apps/nshlib: Add a 'time' command that may be used to time the
execution of other commands (2015-12-31).
* apps/netutils/netlib: Add netlib_get_dripv4addr() and
netlib_get_ipv4netmask(). From Pelle Windestam (2016-01-14).
* apps/fsutils/passwd: Utility library for accessing a password
file like /etc/passwd (2016-01-19).
* apps/nshlib/nsh_passwdcmds.c: Add useradd, userdel, and passwd
commands (2016-01-20).
* apps/nshlib: Now supports a Message of the Day (MOTD) that will
be presented after the NSH greeting (2015-01-20).
* apps/nshlib: All sessions may be protected with logins using
the encrypted password in /etc/passwd (2016-01-20).
* apps/fsutils/inifile: Move system/inifile to fsutils/inifile
where it seems to fit in better (2016-01-20).
* apps/nshlib: Extend logins. Added: Optional platform-specific
function to perform password verification and optional delay
after each failed login attempt (2016-01-22).
* system/ramtron: Removed completely. It inappropriately used
an internal OS interface (up_spiinitialize), that has been
obsoleted. That's what happens when you violate interface
boundaries between the application and the OS (2016-01-27).
* apps/platform/Makefile: Use a relative path to the board
directory link rather than the absolute path. For Cygwin, the
absolute would would need converted with cygpath. But just using
the relative path is a simpler solution (2016-01-27).
7.15 2016-03-27 Gregory Nutt <gnutt@nuttx.org>
* apps/exmaples/chat and apps/netutils/chat: Contributed by
Vladimir Komendantskiy (2016-01-29).
* apps/examples/ubloxmodem: app to control the power state of the
modem in nsh. From Vladimir Komendantskiy (2016-01-31).
* apps/system/ubloxmodem: Moved the modem application from
examples/ to system/ (2016-01-31).
* apps/system/i2c: The I2C tool now obeys it OS interfacing:
it now uses an I2C character driver to access the I2C bus
(2016-02-02).
* apps/netutils/netlib: Add utility functions to support accesses
to the ARP table (2016-02-08).
* apps/netutils/dhcpd: DHCPD no longer calls directly into the
OS but uses the new network IOCTL commands to modify the ARP
table (2016-02-08).
* apps/nshlib: Add an 'arp' command that will support access to
the OS ARP table (2016-02-08).
* apps/nshlib: 'ps' command will show CPU if SMP is enabled
(2016-02-19).
* apps/examples/leds: An example to demonstrate use of LED
driver (2016-02-20).
* apps/examples/smp: Add a test to verify SMP configurations
(2016-02-21).
* apps/examples/rgbled: Example using the RGB LED driver to
drive an RGB LED via PWM. From Alan Carvalho de Assis
(2016-02-23).
* apps/platform/sabre-6quad: Add a platform directory for the
Sabre 6Quad board (2016-03-01).
* apps/examples/ostest: Add a test of TLS (2016-03-11).
* apps/modbus/nuttx/portserial.c: Was not returning an error
on failure to open the device driver. From Olololshka kokoko
(2016-03-16).
* apps/examples/sched_note: Add a simple example to exercise
the scheduler instrumentation logic. Kind of buggy right now
(2016-03-17).
* apps/system/cdcacm, usbmsc, and composite, apps/examples/usbserial,
composite, usbterm: Use new boardctl() instead of calling directly
in the OS when possible. There are still a few bad OS calls for
USB device interfaces that do not yet have boardctl() commands
(2016-03-25).
7.16 2016-06-01 Gregory Nutt <gnutt@nuttx.org>
* apps/system/sdcard: Remove the SD card application. This
application violates OS/application interface rules and has been
moved to Obsoleted/apps/system/sdcard (2016-03-29).
* apps/examples/alarm: Add a simple test of the ALARM iotcl calls
of the RTC driver (2016-04-03).
* apps/examples/nximage: No configuration option to select
greyscale.
* apps/canutils/uavcan: Update UAVCAN version. From Paul Alexander
Patience (2016-05-03)
* Several Makefiles: Add .PHONY definitions to prevent 'clean up to date'
message weirdness; Add default definitions for some commonly used
things when 'make clean' is used without .config or Make.defs files
installed (2016-05-10).
* apps/canutils/libcanard: Add libcanard UAVCAN library. From Paul
Alexander Patience (2016-05-12)
* apps/examples/watchdog: Remove call to up_wdginitialize(). This
interface should not be accessed from application code (2016-05-18).
* apps/system/sched_note: Move the schduler note monitor from examples/
to system/ (2016-05-18).
* apps/platform/nucleo-144: Add platform files for NUCLEO-144
(NUCLEO-F746ZG). From Mark Olsson (2016-05-19).
* apps/netutils/esp8266: ESP8266 driver application. From Pierre-noel
Bouteville (2016-05-21).
* apps/canutils/: Rename uavcan to libuavcan. From Paul Alexander
Patience (2016-05-25).
* apps/examples/media: You can now override the default device driver
path by providing an alternal path on the command line. From S<>bastien
Lorquet (2016-06-01).
7.17 2016-xx-xx Gregory Nutt <gnutt@nuttx.org>
* apps/examples/alarm: ioctl call was clobbering file descriptor
(2016-06-02).
* apps/system/flash_eraseall: Removed! This logic violates the OS/
application interface and cannot be supported. The old code can still
be found in the 'Obsoleted' repository (2016-06-03).
* apps/fsutils/flash_eraseall: IOCTL wrapper for MDCIO_BULKERASE command
(2016-06-04).
* apps/system/flash_eraseall: Restored! Using the new IOCTL wrapper at
apps/fsutils/flash_eraseall (2016-06-04).
* apps/canutils/libuavcan: Fix for recent change to STM32 timer frequency
definiitions (2016-06-05).
* Many files: Change to the way that Kconfig files are generated in order
to better support reuse of the apps/ directory in NuttX products. Changes
include: Make the full tree use wildcards make.defs, Add empty preconfig
rules to 'leaf' makefiles, Use directory.mk for recursive dir makefiles,
Individual app kconfig fixes, Recursive Kconfig autogeneration, Add
kconfig files for pcode and tiff, and fix a gitignore rule, From
S<>bastien Lorquet (2016-06-06).
* apps/nshlib: Make NSH net-initialization be a configuration option. From
Marten Svanfeld (2016-06-09).
* netutils/ntpc and nshlib: NTP Client: All retries; Add initialization
in NSH network startup logic. From David S. Alessio (2016-06-09) .
* Rearrange make to eliminate Kmenu files From Sebastien Lorquet
(2016-06-09).
* apps/nshlib: ake NSH net-initialization be a configuration option.
From Marten Svanfeldt (2016-06-09).
* Make sure that APPNAME is defined in all Makefiles that generate
applications. From Sebastien Lorquet (2016-06-09).
* apps/netutils/esp8266/: Add logic to set the BAUD rate. From Pierr-
noel Bouteville (2016-06-11).
* apps/netutils/esp8266/: CONFIG_SERIAL_TERMIOS must be defined in
order to set BAUD (2016-06-11).
* Change dbg() and vdbg() to err() and info() (2016-06-11).
* Change some *err() message to *info() messages if what was a *dbg()
message does not indicate and error condition (2016-06-14).
* Add _ to front of debug macros (2016-06-16).
* SYSLOG: Remove llinfo(), *llwarn(), and llerr(). These are no longer
supported in the redesigned syslog() logic (2016-06-20).
* apps/canutils/libcanard: update version. From Paul Alexander Patience
(2016-06-22).
* apps/examples/can: Some variables were not declared in all required
cases. From Sebastien Lorquet (2016-06-23).
* apps/gpsutils/minmean: Fix minmea Makefile to find the libapp at the
apps/. From Alan Carvalho de Assis (2016-06-23).
* apps/canutils/canlib: Basic CAN utility library. From Sebastien Lorquet
(2016-06-24).
* apps/nshlib/Kconfig: Move NSH stuff out of nuttx/configs/Kconfig to
here. Why was it in the NuttX tree in the first place? (2016-06-24).